Live data from Hacker News

I'm a good engineer but I suck at building stuff

lionelbarrow.com

31–40 of 128 posts

Re: I'm a good engineer but I suck at building stuff

#32
I think there is a lot of truth here. Recently I had to work with some old code of mine that I wrote ten years ago as a (Physics) student, and looking at the code I realized that while it was a bit ugly and "unconventional" it worked quite well. If I would start the same project today (after five years of intense software dev experience) I think I would be at a much higher risk of "writer's block", simply because I think of so many aspects of the code (testing, deployment, architecture, documentation, language, tooling, framework) that were just unknown to me at the time and which therefore did not distract me. So in a sense, ignorance really is a bliss.

Here's the code in case you're interested, it's for simulating superconducting circuits:

https://github.com/adewes/superconductor

Re: I'm a good engineer but I suck at building stuff

#33

the critical self talk is normal. you should watch seth godin's talk "quieting the lizard brain" https://vimeo.com/5895898 i just had a similar conversation, but it dealt with music instead of code. this person felt they couldn't improvise/ create. the problem isn't with their abilities, it's that they were taught to follow instructions - like the notes on sheet music. jazz musicians play off what they hear instead.…

Very much this. If you force yourself to make lots of things at a fast pace, whether by hackathon or something else, you will eventually get over your hesitations, and you'll find yourself speeding up and building better things too.

Re: I'm a good engineer but I suck at building stuff

#34
post #2

I feel like my experience is the opposite of this. I've never understood something until it stood between me and building what I needed to build. This approach has been great professionally, but lately I'm becoming more interested in theory intensive fields and struggling to find resources that teach from the perspective of someone who wants to build something that requires the knowledge involved, rather than someone…

I'm always worried that it's not great for me professionally. Because the "cool kids" are always off learning the hot new thing, and I can do what I need to in the "old" thing, and so I don't learn the hot new thing. Aren't I, as an engineer, supposed to be constantly entranced by the bleeding edge of technology? Whether it's the latest lisp Dialect, the latest functional programming language, the latest NoSQL databa…

You can build in the hot new thing though.

I'm also a very practical learner. It's hard for me to pick up anything (whether it's a language, technique or a theory) without applying it. So to pick up new technologies I constantly cycle them into new projects.

Re: I'm a good engineer but I suck at building stuff

#35
There's a couple modes of engineering mindsets I'm conscious of.

1) Being careful of every change and addition I make. Trying to figure out and predict the effects, scalability, and maintainability of the code I produce. I find that most engineering positions are looking for this, as most employers already have an existing production code base and would not like wild things like crashes and service disruptions to happen to their audience.

2) Occasionally, I get to start on something completely new. Not new as in just a blank page, but new as in blank project, or even blank idea. As exciting as this sounds, over 90% of the time, the idea will die as there is some undiscovered flaw or expectation almost always external to an exceptionally well thought out implementation. The only thing clear about this is the urgency of the deadline, and the failure associated with missing it (missed management expectations, no demo, no presentation... etc). Many know this as building a Minimum Viable Product. In this case, all rules go out the window. Choose expedient tools, create copious crap code and internal design, as long as it works OKish in the end. Having it violently done tomorrow as opposed to 3 days later, or a week later, or a month later, is key. If you're lucky and it limps along (not canned as uninteresting), just change hats and become the step (1) engineer.

Sounds like you desire some more experience with (2), but both types of people are needed. You, yourself, will become more valuable if you can put on both hats, but I wouldn't say that one hat is absolutely better than the other.

Re: I'm a good engineer but I suck at building stuff

#36
post #2

I feel like my experience is the opposite of this. I've never understood something until it stood between me and building what I needed to build. This approach has been great professionally, but lately I'm becoming more interested in theory intensive fields and struggling to find resources that teach from the perspective of someone who wants to build something that requires the knowledge involved, rather than someone…

I am like this too. For me, I find that using a curriculum as a means to an end does three things:

1. Applying your knowledge forces you to confront the gaps or uncertainties in your understanding that you would normally overlook.

2. Allows you to interleave different the topic with related subjects, which gives you a broader or more fundamental understanding of the topic.

3. Attaches an immediate utility value to your study regime, which serves as a better motivator and means to identify when to study hard and go deep, and when to gloss over.

Re: I'm a good engineer but I suck at building stuff

#37

Here's a priority list that you should typically follow for making anything. 1. Make it work. 2. Make it not break. 3. Make it fast. That's it really. Until the performance of something is blocking what you need to do somewhere else leave it the hell alone.

I've seen that as:

1. Make it

2. Make it work

3. Make it fast

Re: I'm a good engineer but I suck at building stuff

#38
post #10
post #2

I feel like my experience is the opposite of this. I've never understood something until it stood between me and building what I needed to build. This approach has been great professionally, but lately I'm becoming more interested in theory intensive fields and struggling to find resources that teach from the perspective of someone who wants to build something that requires the knowledge involved, rather than someone…

I've been just like this - without the context of a problem to solve, theoretical things just don't click for me. Regex was a mystery and impossible to memorize until I had to write a matcher for a class, and I haven't forgotten since. Similarly, I never get stuck at work, because everything I learn has a problem behind it, but as soon as I go home and try to teach myself something for fun I derp out immediately.

Why not integrate new things to learn with a fun side project?

Re: I'm a good engineer but I suck at building stuff

#39
post #14

Here's a priority list that you should typically follow for making anything. 1. Make it work. 2. Make it not break. 3. Make it fast. That's it really. Until the performance of something is blocking what you need to do somewhere else leave it the hell alone.

4. Throw it away and rebuild it now that you know how it really should work.

That's a pretty bad idea. You should only do a from scratch rewrite because of technical reasons (nobody is proficient in COBOL anymore, python is too slow, etc).

Re: I'm a good engineer but I suck at building stuff

#40

Here's a priority list that you should typically follow for making anything. 1. Make it work. 2. Make it not break. 3. Make it fast. That's it really. Until the performance of something is blocking what you need to do somewhere else leave it the hell alone.

1. Make it work.

2. Ship it before your competitor does.

Post reply on HN