Now I feel like a Geico caveman.
I am a programmer
41–50 of 130 posts
Re: I am a programmer
#42Re: I am a programmer
#43Oh, I see. Do I also have to code my own compiler before I start rewriting glibc?
Re: I am a programmer
#44But comparing programming to actual, real-world engineering is a different kettle of fish. Engineers make things with actual physical requirements - if they're not met, people will die. You're not going to be doing proper engineering unless you can sue the engineers for the wholes in their software that caused people to lose money from their bank. Sure it works and may well solve a problem, but it's not engineered.
Real software engineering is using formal methods to do your utmost to prove that your stuff actually will work (Intel does that for some of their chip development) or make 5 different control systems for your rocket and have them vote on the correct course to add extra backup to prevent fuckups (NASA did this for the Apollo iirc - the EU Ariane didn't, so they had a rocket crash at one point).
Until that happens, you're just going to be developing sandcastles - you're going to have buggy software that will break at some point - because software development is so fast that it's not worth the effort to engineer from the get-go.
In other words, coding is coding - you can have good coding that uses best practices - but if you call it engineering you're deluding yourself in most cases.
Re: I am a programmer
#45Job security, job satisfaction, good pay. Pick any two. This statement doesn't make much sense when you think about it. It seems to be a lazy riff off of: "Fast, cheap, quality: Pick any two" Each of those characteristics are in competition with each other. Doing something fast often hurts quality and/or cheapness. Doing something cheaply may take longer and may harm quality. Job security vs. job satisfaction don't r…
I've heard this sentiment phrased much better: "There are three things that mostly determine how well your life goes: what you're doing, who you're with, and where you are. If you can get two of the three right, you're ahead of 90% of the human race." Sometimes there are tradeoffs between the three, sometimes not, but it's really, really hard to get all three to line up together.
In the limited context of tech jobs and entrepreneur, I don't think it's quite right to tell people that it's not possible to achieve all three. And it may even be counter-productive.
Re: I am a programmer
#46Both articles are about the way you present yourself, not really about the "programmer" label. Sure, your label is part of what do for a living, but the important point brought up by both articles is that you have to recognize what your value is in the workplace and use that as your selling point in order to achieve job satisfaction and/or recognition (that's the way I understood them anyway).
Re: I am a programmer
#47The problem I have with "software engineering" is that it's not real engineering. Sure you might do thinking to create proper requirements, design, build a prototype, build the real thing and iterate, use agile or whatever. But comparing programming to actual, real-world engineering is a different kettle of fish. Engineers make things with actual physical requirements - if they're not met, people will die. You're not…
Bad code won't kill people? I think any longtime reader of HN can think of a few real-life stories that would contradict this.
I studied computer engineering and yes, I remember those of us more on the hardware side thinking the ones on the "soft" side of the engineering were the lazy ones. Having been more involved in programming projects since then, I've seen the great value in being able to "engineer" software that meets highly specific specs and anticipates future needs, upgrades, and maintenance. Neither of those are necessarily related to good programming, and the failure to achieve both in mission-critical software will lead to deaths
* and as far as I can tell, "real" engineers do not get individually sued for physical failures, unless there's a rare instance in which an individual engineer can be proven to be malicious or grossly negligent.
Re: I am a programmer
#48The problem I have with "software engineering" is that it's not real engineering. Sure you might do thinking to create proper requirements, design, build a prototype, build the real thing and iterate, use agile or whatever. But comparing programming to actual, real-world engineering is a different kettle of fish. Engineers make things with actual physical requirements - if they're not met, people will die. You're not…
Er...what...? Bad code won't kill people? I think any longtime reader of HN can think of a few real-life stories that would contradict this. I studied computer engineering and yes, I remember those of us more on the hardware side thinking the ones on the "soft" side of the engineering were the lazy ones. Having been more involved in programming projects since then, I've seen the great value in being able to "engineer…
Where you have a hardware-centric approach, I'd assume that the whole system, software included has been pretty well tested and engineered to a great deal.
But banking software and I postulate most software that hacker news contributors write is probably going to be inherently flaky in some respect. The main fault for this is that writing software is so quick and easy compared to creating something physical that will last.
It's due to the push to get something to market and the "easy" nature of software development that leaves true engineering discipline by the wayside.
Yes, you can be in a situation (especially when people's lives depend on it directly such as medical equipment) when you are properly engineering a solution, but I still stand by my premise that most software development is not software engineering - you're just making sandcastles.
Re: I am a programmer
#49The problem I have with Patrick's essay ("you are not a programmer") is that it addresses a situation that hardly any developer ever finds himself in. If I go to interview for an engineer position, it matters exactly not one bit that I try to pass myself off as a solutions architect or a business problem solver, except for possibly some awkward glances back and forth. All they want to know is how long I've been codin…
I think he was attempting to stress that the fact that developers don't find themselves in that situation is a little tragic. His essay suggests that in the right industries with somewhat more optimistic marketing the programmer's skillset is almost akin to magic. You take more responsibility for understanding how computers can solve problems, but by doing that become something irreplaceable.
The "reality" is context-limited, as are Patrick's suggestions. If you're willing to market more, though, Patrick's reality is pretty compelling.
Re: I am a programmer
#50and then
-- What you call yourself or what other people call you is utterly irrelevant.
I am utterly confused and no better at my job.