7 ms·
Why a career in computer programming sucks [2007]
- Turing_Machine 15y ago"No one cares if you know how to program in COBOL for example. It’s completely useless knowledge." Wrong. http://jobsearch.monster.com/search/?q=Cobol-Programming-Language&sort=rv.di.dt http://jobsearch.monster.com/search/?q=Cobol-Programming-Lan... "Even though I haven’t been working in computer programming all that long" Obviously. :-)
- mullr 15y ago> So what advantage does a 60-year-old .NET programmer have over a 27-year-old .NET programmer when they both have, at most, 5 years of experience doing .NET programming? Absolutely none. Pardon my french, but this is absolute, utter bollocks. I can only assume that this was written my a 27 year old .NET programmer who wants to think that the 60 year olds have nothing on him. Granted, I behaved the same way when I was a 25 year old .NET programmer. I've gotten over it. Such behavior should not be encouraged or glamorized.
- 16s 15y agoIndeed. The older programmer has seen and fixed more problems. It's called experience.
- zainny 15y agoHow do you reconcile that point of view with articles like http://www.nytimes.com/2012/01/29/us/bay-area-technology-professionals-cant-get-hired-as-industry-moves-on.html?pagewanted=all http://www.nytimes.com/2012/01/29/us/bay-area-technology-pro... (which appeared on Hacker News not too long ago if memory serves)? Very few companies, particularly those in the Valley, seem interested in hiring older workers. Does that not indicate there is little perceived value in years of experience beyond a certain point (say, 5, as the original article suggests)?
- 16s 15y agoMy guess is that they want to work them hard and pay them less and they know that older guys and gals won't accept those working conditions. They throw quantity and eagerness at problems. Not that younger programmers aren't good (they are) they just have less experience. I fear many younger technologists are abused. I see a lot burn-out. It's sad to see their desire and eagerness die. Edit: I'll add that I've seen young men (mid 20s) who have the cynicism and bitterness of much older men. That, to me, is sad. It shouldn't be like this.
- zainny 15y agoIf long term experience had real value in our industry, wouldn't most companies accept that while an older and more experienced person is more "particular" about their work conditions, it is worth the hassle to accommodate them because of the additional value they can bring? But that doesn't seem to happen. Or, in other words, companies continue to demonstrate they see little value in experience and the author of the article is bang on when talking about the temporal nature of knowledge capital and the absence of prestige in IT.
- deleted 15y ago[deleted]
- adrusi 15y agoExactly, the author seems to think that every programming technology is isolated from all others. To the contrary, there is a huge amount of crossover between technologies even as separated as .NET and Haskell. He also says that 60-year-olds are less enthusiastic about learning new tech. Granted I'm even less qualified than him to judge how 60-year-olds think, but the way I see it, if a 60-year-old doesn't want to learn (or feels incapable of doing so efficiently) it's because he stopped learning at some point in his life. It's like exercise, a 70-year old who has gone to the gym two days a week for most of their life will be completely capable of exercising like they always have. If a programmer constantly makes an effort to stay on the cutting edge, they'll have no problems staying there no matter what their age.
- thejteam 15y agoIt was an interesting choice of ages. We had a conversation at work about something like this not too long ago. It ended up boiling down to this, "The difference between an engineer with 5 years experience and an engineer with 10 years experience is significantly greater than that between an engineer with 10 years experience and an engineer with 25 years experience." Since presumably an engineer(or programmer) who is 27 has 5 years experience there is a world of difference between a 27 year old and a 60 year old. Now compare the 60 year old to a 35 year old. The choice would not be so obvious.
- wazoox 15y agoFrom my own personal experience, having employed a 60 yo person, I dare say that the oldest is actually much more available; he has no young children, no love story dramas, he isn't the less afraid to get up at dawn, he can work slightly slowly but with an extreme attention to details younger people will rarely be able to follow through, he rarely if ever go to bed at 3 a.m., and if he's friendly and competent he'll coach wonderfully young interns.
- herval 15y agoIn that case, hiring a recently-wed or someone with a baby is also worse than hiring a 60-70 year old? Also, how about energy? Do 60-year olds really have the same energy to keep up with new stuff as a young boy does?
- wazoox 15y agoFrom my own 40 yo point of view, you can be energetic at 20, 40 or 60 all the same. The difference is of priorities. At 20, you may be eager to build your career; at 35, to take care of your children; etc. Every intelligent person can keep up with new stuff all the same; loving to learn is more a character than age thing. Now an important differentiator may be health. You'll find more 60 yo in bad health than 20 yo, and bad health definitely take a huge toll on efficacy and dynamism.
- greenyoda 15y ago
- kls 15y agoI’d make the case that it’s better to hire the 27-year-old because he is still at the stage of his career where he enjoys the stuff and is therefore more motivated to learn and work harder, while the 60-year-old is surely bitter about the fact that he’s getting paid less than the younger programmers. No one wants a bitter employee. This assumes that the 60-year-old programmer has even learned .NET programming This article is utter trash for that statement alone, what a blatant piece of age discrimination. If most 60 year olds learned COBOL then many will sunset with COBOL, those that do stay relevant with the newest technologies are exactly the type of developers who a smart person would want to hire. The reason being, that algorithms don't change, math does not change and also we have a dirty little secret that we keep reinventing the wheel on new stacks. So a 60 year old that has been through 3-4 stacks is going to have seen a lot more problems and solved a lot more problems that mirror problems that his organization is going to experience. They are also going to have mastered and learned a lot more foundational stuff. To assume that all programming knowledge is temporal is to stack the decks in favor of a certain viewpoint and ignores reality. Arguing that said 60 year old will be bitter is just a cop-out for lack of any sound argument.
- grot 15y agoI don't think the author means to justify age discrimination so much as to use it to underscore a point, which is that programming knowledge is something that takes (on the order of) 5 years to acquire rather than 40 years to acquire. Whether this is true, I am not sure. I don't really have enough experience to justify making any claims like that. I think what he's really saying, to make an analogy, is that a programmer is more like a black smith than like an alchemist. A blacksmith is concerned with his tools and his technique, an alchemist is on a search for truth (or permanence or glory). Now he's also saying that being a blacksmith sort of sucks: your tools get old, you are smelly, it probably hurts more to pound your anvil when you're 50 than when you're 22, etc. Whether you believe that depends on your taste, whether you care about creating a good product or embarking on a potentially (very likely) fruitless search for truth. It's pretty obvious what hackernews prefers.
- padobson 15y agoThe best point he makes is the one he doesn't raise. A one-dimensional individual will always hit a salary ceiling. A programmer cannot be just a programmer and not hit a ceiling. The very best programmers will hit a very high ceiling, but without branching out into project management, UX, finance, marketing, interface design, or some other area, you'll only be able to advance so far.
- ddw 15y agoHow things have changed in the last five years. Overall I'd say that programming isn't low prestige w/ bad working conditions anymore. And good luck to all of those law school graduates!
- whamill 15y agoI wonder how the author's outlook has changed since 2007? Has he spent the last 4-5 years learning new technologies or constantly bettering himself or just stuck with what he learned in 2007 and become bitter at the reality of the industry moving on? Sure, COBOL programmers from back in the day are still in demand in certain scenarios, but his anger seems to be to stem from an unwillingness to learn; an expectation that once one has learned something they should simply be further rewarded for having learned it and continued to use it for a long period of time. The fact is that if you learn some programming language in 2007 and just do the same stuff for the next 4-5 years without expanding your education, your experience or what you try to make of it, you're going to be behind the 'cool kids' that spent the last 4-5 years learning every new language that popped up. But if you spent the 4-5 years with just that one language learning new ways of implementing things, learning how better to take a higher level view of programming and software design and other facets of use in this industry - then he wouldn't be behind anyone else. It would interest me to find out how things have progressed for the author given his rant at generalists, project management and learning new things
- Turing_Machine 15y agoHe's also wrong-headed about the fields he cites as "unchanging". Yes, lawyers still cite Blackstone, but the law is changing all the time nonetheless. Computer programming has similar foundational material (sorting, searching, you name it -- almost nothing in Knuth is "out of date"). Business has changed radically in recent years. Even accountants have to retrain themselves constantly; the Internal Revenue Code changes every single year (sometimes dramatically), rules of accounting change, new requirements like Sarbanes-Oxley come into play. Sometimes accountants don't get much respect, but I have to admire anyone who can gobble the Internal Revenue Code every year and come up with procedures that (usually) don't get any of their clients fined or jailed and (ideally) don't cause them to go bankrupt.
- sanxiyn 15y ago> almost nothing in Knuth is "out of date" Actually, quite a lot of TAOCP are out of date. TAOCP's discussion of floating point arithmetic, while correct, predates IEEE 754 and not that useful now. TAOCP's analysis of algorithms, while correct, ignores locality of reference as it predates importance of CPU caches and branch predictors. TAOCP spends inordinate amount of pages on external sorting with tapes; while external sorting is still important, most of Knuth's specifics are not. I can go on and on...
- eloisius 15y agoClearly this guy is a quintessential .NET developer that built crappy e-commerce sites. If that's his thing and what he considers "programming" he deserves to fall by the wayside by 60. I started out building crappy e-commerce sites in PHP, but I never once considered it "programming" in the way that I wanted to be a programmer. It was an entry point. On the other side of this argument is my 60-something employer who only gave up Fortran for C when his colleagues locked him in a room with a C manual for days. He is a programmer and the tool he uses doesn't define what he is capable of. He churns out some genius code.
- jxcole 15y agoThis is one of the stupidest articles I've ever read. Any half decent programmer, regardless of his experience level (just graduated from college to veteran 60 year old) can learn and be effective in programming a completely new language in one week (please note that when I say completely new I mean within the family of c-like languages). After one month, he'll have most of the libraries memorized. This author seems to believe that experience in programming essentially boils down to experience in a language. That a 10 year veteran java programmer will have to start over from scratch if they switch to programming in c#. Totally untrue. Experience in programming makes you better at design, project planning, professional relationships, and project delivery. None of these have anything to do with what language you use. Perhaps what he's trying to say is that if you are a terrible programmer with very low intelligence, your experience won't get you very far. And with that I agree. This author has done little but show he has low skill in the field, so it's unsurprising he finds his work to be below par.
- barkingtoad 15y agoYou are absolutely correct. A good programmer with zero experience in a platform, is a better hire than an average programmer with 10 years of experience in a platform. HOWEVER, the job market does not know this AT ALL and ONLY hires on the basis of platform experience. Actual managers of programmers may understand, but their HR department incompetency filter is ONLY going on the basis of keywords in the resumes. It's terrible. If you create a resume with the right keywords[1], in the most desirable techs, and put it up on job boards on Monday, you will get hits on Tuesday, even if your prior job title was "Senior Child Rapist" and your previous employer was the Penn State Football Program.[2] . [1]And they have to match precisely. I was recently told I could not be an Oracle Linux sysadmin, since I only had experience in CENTOS and Red Hat EL. (They are all identical.) [2]no disrespect PSUers, I just needed a funny example
- LVB 15y agoComputer programming is a job that’s heavily dependent on temporary knowledge capital. It’s temporary because the powers that be keep changing the languages and tools that programmers need to do their jobs. I could rephrase that to: "Computer programming is not a job where you can expect to do the same thing every day for your entire career. A successful computer programmer will be constantly learning new skills." As someone who is terrified of rote, boring tasks, and who got into CS because I've always liked learning new challenging technical things, I think I chose the right career.
- quanticle 15y agoI think we've done a good job of debunking his points regarding age and knowledge decay. I'd like to address his points regarding prestige, foreignization (or, outsourcing, to put it in terms we know), and working conditions. I don't know where he's coming from (his Twitter profile lists his location as Manhattan, but very little else) but he is absolutely wrong with programming being a low prestige career. People have seen The Social Network. They've seen programmers become millionaires and even billionaires while making tools and products that they use on a daily, or even hourly basis. I would argue that programmers, these days, are valued more by society than lawyers and accountants. Lawyers and accountants, now, are seen as a symptom of "what's wrong with this country today". They're viewed as being cronies of the 1% fat-cats, helping them loot the rest of the country whilst everyone else starves. Programmers, on the other hand, hearken back to a time where Americans still built things and were very good at it. There's a good reason that the tech. industry is the most widely admired industry in America. There's a good reason why technology brands (like Google and Apple) consistently make the top-ten in admired brands nationwide. Americans rightly look at the technology industry as a source of national pride. They look at the investment banking industry and see it as a source of national shame. Outsourcing, even in 2007, was far more of a potential threat than it was a real threat. Today, I'd argue that it's not even a potential threat. As the prestige of programming has grown (see paragraph above), more and more people in third world countries are aspiring to become programmers. Unfortunately, this increase in demand has led to a massive erosion in average programmer quality in those places. There are lots of schools in India that are little more than diploma mills - graduating "programmers" that can't even copy/paste code. This combined with increased competition and increased salaries for the good programmers means that outsourcing isn't even close to being a "no-brainer" economic decision. Companies are realizing this. Many large companies (like Best Buy and Target) to name two from my hometown, are bringing IT back as they see that 1) outsourcing never produced the expected cost savings and 2) solid IT infrastructure is a competitive advantage. I would expect the discussion around outsourcing to be a far more nuanced one in the future, as the initial wave ebbs further and outsourcing becomes more of a way to get around visa issues and immigration policy than a way to produce automatic cost savings in projects. Finally, working conditions. Has this guy even looked at the perks Google gives its employees? Heck even outside Google, Microsoft, and other "tier 1" software firms, it's becoming normal for programmers to have two, or even three 1920x1080 monitors. Yes, there are places that treat their programmers like crap and give them insufficient tools but those places are feeling more pressure every day as their best programmers see the better working conditions elsewhere and leave. Finally, I can't name too many programmers who've routinely worked 100 hour weeks. 80-100 hour weeks tend to be the norm, though, at many law firms, trading desks, and other professions that the author singles out as being more desirable than programming. Given that, I don't see how the author can claim that these professions have better working conditions than programming.
- heifetz 15y agoI think he has some valid points. The emergence of mobile and web 2.0 industries since the article supports rather than weakens his main argument. just look at the evidence, -founders of the most successful startups are always in their 20s or 30s. They don't have 20 years of programming experience. -ruby, python, objective C are all fairly new It means that a 50 year old programmer with 20 years of programming experience doesn't have too many advantages in learning these new languages / environments compared to a fresh college grad. In addition the 50 year old probably has a family and kids and other social obligations that reduces the amount of time he has to learn. In other industries where the innovation isn't as fast, and the entire environment changes every 10 years, there is more value in seniority and experience.
- greenyoda 15y ago> "ruby, python, objective C are all fairly new" Objective C has been around since 1983, Python since 1991, Ruby since 1995 (see Wikipedia). If you're a recent college grad, Objective-C existed before you were born. > "It means that a 50 year old programmer with 20 years of programming experience doesn't have too many advantages in learning these new languages / environments compared to a fresh college grad." On the contrary. A 50 year old programmer might have had experience in lots of related languages. For example, since I've used C++ and Java, I don't think I'd have too much trouble picking up Objective C. Since I've used dynamic languages like Lisp, learning Python or JavaScript wasn't very difficult.
- jimmy_chu0807 15y agoOne point I read is that programming has a low barrier of entry. Everybody can learn and jump ship to do programming, and thus no prestige, claimed the article. I agree with the first half of the statement and glad about it. Somebody has already mentioned programming is a tool. What's important is what you created and solved with the tools. In fact, I like the nature of no barrier of entry, and thus everybody can learn it, create something, build on top of each others, and thrust innovation. We can then judge programmers by their work, not their seniority and yrs of exp. Learning how to use a paintbrush well won't give you much success and respect, but painting a Mona Lisa will.