« A Chinese immigrant writes about the prestige of science and engineering | Main | When citizens lack papers »

March 11, 2007

TrackBack

TrackBack URL for this entry:
http://www.typepad.com/services/trackback/6a00d8341bf6ae53ef00d83465068369e2

Listed below are links to weblogs that reference Why a career in computer programming sucks:

» Is Computer Science Dead? from Scott Yang's Playground
[...] The Age: Is computer science dead? Because things are more automated, and most tasks only require drag and click? It is like arguing mechanical engineering is dead because wheels have been invented by no means! As mechanical engineering d... [Read More]

» Computer programming careers...the continuous debate. from Web Forefront
In what is clearly the best non-rant I have seen for computer programming careers, this fellow blogger makes a series of very valid points regarding its pitfalls, it might make you laugh, it might make you mad, but its... [Read More]

» why it sucks from aggrozollhaus weblog
Mal wieder nicht ganz neu - aber gut:Why a career in computer programming sucksDas Leben ist gemein, und wir haben es auch noch so gewollt!Revolution! ;-) [Read More]

» Rebuttal by bob from Blog By Bob
The author of Half Sigma recently posted a blog about why a career in computer programming sucks, as [Read More]

» RE: Why a career in computer programmingsucks from ZaidAbdulla.com
After receiving a link to the article Why a Career in Computer Programming Sucks by email. My friends had been exchanging views about the topic. Their replies were interesting so I thought I post them here (After taking their permission).... [Read More]

Comments

Gizzwin: A truly "star" programmer has no problem at all learning a new programming language. It's just a matter of memorizing a new syntax and the occasional idiosyncratic semantics.

guest - nobody cares if you're a star programmer who picked up a new language in a couple nights, which is all it takes for star programmers. They want experience, a significant amount of time on your resume doing the exact same thing at another company. Don't have that? Try explaining that you're a star programmer who can adapt to any language in the 30 seconds it takes the hiring manager to see you to the door.

Gizzwin - I feel your pain. I hope things get better for you.

BTW, you filled in the blanks in the original blog post well.

This essay has triggered all the emotions out of the average American, who is frustrated trying to beat the Indians.

If "Wal-Mart" is selling products for a cheaper price than your business, what would you do?

The Indians deserve it because they are more satisfied of what they are paid than the average American. The reason is that they come from a much lower living standard.

Thats the nature of the industry, try to be an irresistible engineer so that Microsoft & Google will fight to offer you a job or a cheap engineer with some skill, or just give way for others without complaining.

(I am NOT an Indian)

Don't have that? Try explaining that you're a star programmer who can adapt to any language in the 30 seconds it takes the hiring manager to see you to the door.

Easy solution: do not narrow your work experience to a single technology such as Java or .NET. Flexibility is key.

I found this pill hard to swallow as I have dedicated nearly 10 years and thousands of hours of research, practice, and study to my field as a Systems Analyst (programmer). I feel I have paid my dues and have the right to make arguments to this post. But after chewing on it for several days I would like to say that the writer of this article in my opinion is 1. Brilliant, 2. 100 percent correct. Instead of arguing points against his post, I am going to use my experience to re-iterate his explanations as I agree with all but one of them. Which Is . . . The careers he mentions as good suck as well, unless you get into top 14 schools. Well of course if you can get into Harvard or Yale law school you can do much better but this is like saying that it is better to be an astronaut or an NFL field goal kicker (the world’s best job) then it is to be a programmer. Lets compare apples to apples when we do this a typical programmer with some sort of technical degree is akin to a typical attorney or typical CPA with a degree from a plain vanilla state university. Both will likely end up with jobs that suck. But for the rest of the arguments I will present ones that back up what the original writer is saying based on my experience.

1. Good coders will always be good coders.

This is true, but good coders will almost never be recognized as such. I consider myself a good coder ( I started at 11 years of age hacking up DOS games in BASIC). I believe I have some natural ability in it; however this has never been recognized. I have worked a dozen or so contract consulting jobs and they are all the same in the aspect that you are being hired by the request of IT manager at the pleasure of a higher level director (with no knowledge of computer programming) that holds the purse strings. Your salary is pre-determined, and they already have a specific objective in mind that you will be performing as your job duty (based on their limited knowledge). The amount you are worth must fall into their range. Just look at all the computer job listings and you will see how very little people know about programming.

In my own job, a recent placement ad indicated that the department was seeking a Web Developer with extensive C++ experience and 5-10 years with PERL. PERL ha, give me a break you want a PERL expert give me a book and a day.(Can you imagine programming PERL for 10 years???) A web developer with C++ experience, I did not see a Web Developer with ASP, JSP, Cold Fusion etc … No it was PERL and C++. Now I wonder who wrote this ad. My guess somebody who has absolutely no idea of underlying technologies “C++ what are you writing some type of encryption algorithm?, network drivers maybe”. A search on monster will render the same results, stupid stuff like experience with “Dreamweaver, Cisco routers, and Oracle Developer, don’t forget the grand finale some 1984 QA software with a name like CTAX or PICS experience highly desirable” for a job that in actuality is writing a .NET client with Crystal Reports for maintaining hotel reservations. Come on we have all seen the ads. They know, or care squat about what we do.

The next factor is that a poster indicated that the age of process was here, that focus was not put on the programmer or his/her skills but the software development process. This is so absolutely true, especially if you work for larger companies (which pay more). It is all about nightly builds, functional specifications, Microsoft Project Gant charts, etc … I have worked extensively with Microsoft Application Blocks, Rocky Lothka’s CSLA and other frameworks. I can churn out a rock solid data access layer and business tier in a week using Codesmith studio to generate my code from database schemas. I can write Oracle Stored procedure business objects (types) with the same code generators that allow for centralized business logic that fire off just as fast as old timey PL/SQL stored procs. All this I have learned at home, or at work goofing off. Never have I been able to use this at a consulting job. They could care less about it, they don’t know what it is and don’t care. Instead I get hired and I have to fix some goofy problem like some guy who quit last week, and his stupid Crystal report with a hard coded pointer to a connection string that doesn’t work anymore because the DBA changed the password. Or a stupid trigger in some database that keeps firing because it was part of the old logic and now there is new logic, so I go in delete the trigger and sit on my behind for the next week, until the next ticket where a user accidentally deleted a dependency DLL from their hard drive comes in.

The argument is that this is support and not development, well I have news for you, if you stay at a company for more than a couple of years you will end up doing this stupid stuff. That’s the way software works. A big project kicks in , a bunch of “Project Managers step in” decide everything for you, none of the development team agrees with eachother (one guy wants to use some kook ‘o open source framework like APSECTJ that only has support on one blog written by some Norwegian guy, another guy is old time and stuck on VB 6 and his only standard is “hey man it works” , you got some Java guy, some .NET guy arguing and finally the choice is made, and you are stuck using it. After a year or so the project is finished and you move into support, and the guy that wrote some cockamamie Java messaging socket quits, and now you have a stupid job. And nobody cares that you could have completed the project by yourself in 3 months. Stay tuned for (You don't love programming enough).


Chris, it sounds like people in your position should consider becoming consultants. It's risky and uncertain, but the rewards can be substantial.

"Lawyers are still citing Blackstone’s Commentaries on the Laws of England which was completed in 1769. Now there’s an example of a profession where knowledge capital deteriorates at a very slow rate."

True, but then again, computing (and programming) is a new profession, just under a century old if you're being *extremely* generous. Law on the other hand is thousands of years old. How is it fair to compare the rate of knowledge turnover in these two professions?

I like your point about the PMs though. I just got my first programming gig, and I'm so glad it is with a software company rather than just as an internal developer. This should give me a much better chance of getting managers with at least some technical ability.

I'm going to try my best to stay cutting edge, but if as you say, increasing age makes it more difficult to learn new things, I may consider a switch to academia.

you must earn your money .
your earning has nothing to do with your skin color .nature is neutral .
what you are worth you are paid .
ofcourse it depends up on supply,demand.
if you are bangalored it means that you were not worth for the money you were paid .
you will be humbled again and again for your ignorance

Virumandi<< You are such a simple mind. Part of the reason you are able to "be worth the money you are worth" and we get "Banglored" is that America makes it safe for you to operate your computer programming sweat shops, on the taxes we "stupid worthless Americans pay" The main reason Pakistan and India are not lobbing 1st generation nuclear missles at eachother is because of the U.S. Itr is our stability and support that makes you marketable. Sorry I had to be so blunt but thats the truth.

Easy solution: do not narrow your work experience to a single technology such as Java or .NET. Flexibility is key.

You don't have a choice in this. Managers decide what buzzword they want to be compliant with. If the ones you work for happen to choose a buzzword other than the buzzword you will need in your next job interview, too bad.

Again, if you hand a good programmer a reference in a language he has never seen, in a day or two he will do fine with it. But try explaining that to a hiring manager.

The Indians deserve it because they are more satisfied of what they are paid than the average American. The reason is that they come from a much lower living standard.

The reason is because they live in a third world country that has made a concentrated effort to open America's doors and force their people down our throats so that it relieves social pressure, and then they don't actually have to deal with the fact that they're a third world country.

Sort of like Mexico. If we had built a wall on the border 30 year ago, there would have been a revolution in Mexico by now. We hurt the Mexican people at large by letting some of them in.

I'm tired of American jobs being the release valve for the problems of foreign nations and governments. I'm also tired of the shoddy work produced by their poorly trained, third world workers who don't expect anything of their government or of life.

Sorry, but your theory is factually incorrect. I'm sure that Zimbabwe would love to "force their workers down our throat" as a means of relieving their social pressures, but do you really think they could do that without seriously reforming their institutions? Conversely, do you refer to Japan, South Korea, Taiwan, etc. as third world countries which use American jobs as a release valve?

Zimbabwe has no pull in our government. Mexico does because of the large Hispanic population in the U.S. So does India because we want an ally in the region to counter balance China. No one in Congress cares about Zimbabwe, they have nothing to offer.

You can read plenty of articles about the lobbying efforts of both Mexico and India, and groups representing their interests, in our Congress.

Japan, South Korea, and Taiwan have far higher living standards and expectations than India, with Japan being equal to us in that regard. So you don't see them dumping people on us. We have trade, but we don't undermine our own citizens because an American company won't export a job to Japan for cheap labor. Japanese demand pay just as high as Americans because their living standards are just as high. If a job moves to Japan it's because of Japanese expertise in that field, and the same thing happens in the other direction. But it's not massive in either direction, neither nation undermines the other.

That's why you see Toyota factories in the U.S. There's no advantage now to having the factories in Japan and then having to ship the cars.

It's when you deal with holes like India and Mexico that you get imbalance and the problems that creates. Americans losing jobs to people who are, ultimately, just being taken advantage of by greed. Our government doesn't care because big business has so much pull, their governments don't care because it relieves some of the social pressure. (Why, if everything is fine in Mexico, does the Mexican government give out pamphlets with instructions on entering the U.S. illegally? It's not because they want those people who leave! They need a stable economy with jobs and Mexico's government is too lazy to work on that.)

Do you think Bill Gates honestly believes there should be unlimited H1-B visas because there's a shortage of American IT talent, or because Indian talent is so good? Please. Do you think Billy Boy would want that if the wages were the same?

You know what...I have no problem with unlimited H1-B visas, on a few conditions. One being that the companies MUST pay the prevailing wage they would pay an American. Two being that they MUST be monitored regarding overtime, overtime pay, and any under-the-table threats since a fired worker has to go home. Let's see if all these companies lobbying Congress are eager for foreign workers when they have to pay a fair price.

last guess--Lets not blame the third world countries; wanting a better life for your family is completely natural and commendable. It is the fault of our politicians and lobbyists that want to be able to secure cheap labor overseas that are at fault. They herald globalization as good for American business yet place restrictions on the demand side. For instance pharmaceutical companies produce many ingredients for their drugs in India, however when I want to buy my drugs for India for 1/10th of the price, all of the sudden they are poisonous and unsafe. Symantec and Microsoft develop software overseas but when I want to buy a Saudi Arabian version of Norton, it is a crime. This is carefully crafted by politicians. This is not true globalization, it is a scam. That is why I am anti-globalization because like everything else the benefits will only be seen by a small percentage. They build most Ford trucks in Mexico now, but has the price gone down? Not anywhere near the offset of using cheap labor. That’s why globalization sucks for Americans, we (the majority of Americans) pay all the price to make it work, and end up loosing because the savings are consolidated among the rich. I don’t care that I can buy some crappy sneakers at Wal-Mart because they were made by some poor child in Bangladesh, it still sucks. We at least now have an administration in our congress that so far seems to acknowledge that the playing field has to be equaled in order for globalization to be fair. It is not right that Americans carry the burden of foreign assistance and an enormous defense budget just to make countries that would normally be too unstable to compete marketable. The cost has to be shared and globalization really should not mean sending American jobs overseas, other countries have to pick up some slack and develop their own industries as well. My company is already looking to the Philippines and Russia for programming work because it is even cheaper than India. If all globalization means is cheap labor for stockholders than it is not globalization at all it is pillaging. Of course other countries will be more competitive than the U.S. as far as labor costs, but we have roads in working condition, reliable power and infrastructure, access to medical facilities, regulations which allow our economy to remain somewhat stable, and powerful national defense, children go to school here they are not forced to work in sweatshops. This all costs money, and when we are competing with countries that could care less about these things they will always be cheaper, lets raise their standards to ours not visa versa.

last guess…Lets not blame the third world countries; wanting a better life for your family is completely natural and commendable. It is the fault of our politicians and lobbyists that want to be able to secure cheap labor overseas that are at fault. They herald globalization as good for American business yet place restrictions on the demand side. For instance pharmaceutical companies produce many ingredients for their drugs in India, however when I want to buy my drugs for India for 1/10th of the price, all of the sudden they are poisonous and unsafe. Symantec and Microsoft develop software overseas but when I want to buy a Saudi Arabian version of Norton, it is a crime. This is carefully crafted by politicians. This is not true globalization, it is a scam. That is why I am anti-globalization because like everything else the benefits will only be seen by a small percentage. They build most Ford trucks in Mexico now, but has the price gone down? Not anywhere near the offset of using cheap labor. That’s why globalization sucks for Americans, we (the majority of Americans) pay all the price to make it work, and end up loosing because the savings are consolidated among the rich. I don’t care that I can buy some crappy sneakers at Wal-Mart because they were made by some poor child in Bangladesh, it still sucks. We at least now have an administration in our congress that so far seems to acknowledge that the playing field has to be equaled in order for globalization to be fair. It is not right that Americans carry the burden of foreign assistance and an enormous defense budget just to make countries that would normally be too unstable to compete marketable. The cost has to be shared and globalization really should not mean sending American jobs overseas, other countries have to pick up some slack and develop their own industries as well. My company is already looking to the Philippines and Russia for programming work because it is even cheaper than India. If all globalization means is cheap labor for stockholders than it is not globalization at all it is pillaging. Of course other countries will be more competitive than the U.S. as far as labor costs, but we have roads in working condition, reliable power and infrastructure, access to medical facilities, regulations which allow our economy to remain somewhat stable, and powerful national defense, children go to school here they are not forced to work in sweatshops. This all costs money, and when we are competing with countries that could care less about these things they will always be cheaper, lets raise their standards to ours not visa versa.

Japan, South Korea, and Taiwan have far higher living standards and expectations than India, with Japan being equal to us in that regard. So you don't see them dumping people on us.

That's the whole point - it was export-led development that allowed Japan to reach living-standards parity with us. They may not have dumped people on us, but they sure exported a lot of "cheap, low quality" cars and electronics.

It's when you deal with holes like India and Mexico that you get imbalance and the problems that creates. Americans losing jobs to people who are, ultimately, just being taken advantage of by greed.

Admittedly, immigration is a much more complex issue. As for trade, we dealt with these same kind of problems in the 1970s and 1980s and it turned out to be a very good thing. Why should it be different this time?

That's the whole point - it was export-led development that allowed Japan to reach living-standards parity with us.

It was more than just that. India suffers problems of government, culture, race, and population size that Japan never did. Japan was destined to reach parity with the U.S. I don't believe the same is necessarily true of India.

And I don't ever recall Japanese dumping on America. There was a time when Japan's labor was cheaper and that enabled them to be competitive in certain markets and trade. Automotive being a key example. But the indifference was never, ever so large that Japanese were willing to come here by the masses and be visa slaves.

They may not have dumped people on us, but they sure exported a lot of "cheap, low quality" cars and electronics.

While some Americans liked to say those things at the time, Japan's stuff tended to be mid-quality and became high quality pretty fast. When they gave Detroit a kick in the pants, U.S. cars were very poor due to labor unions pushing things the opposite direction of what we have now. They were so bad in fact that many people still have a poor opinion of U.S. cars, even though it's not deserved. (I'll take a U.S. truck over the Japanese version any day, though Japan's trucks aren't bad, just not at the save level feature wise.)

Admittedly, immigration is a much more complex issue. As for trade, we dealt with these same kind of problems in the 1970s and 1980s and it turned out to be a very good thing. Why should it be different this time?

Because Mexico and India are not heading for parity with us. There would have to be some drastic changes in both for that to happen.

During WWII, Japan had an advanced military. They manufactured their own airplanes and aircraft carriers.

Even today, I'm not sure India is capable of manufacturing its own aircraft carriers.

First Aircraft carrier is being build in India right now as we speak.

http://en.wikipedia.org/wiki/Vikrant_class_aircraft_carrier

Also, Indian nuclear capacity is largely indigenous, developed by Indian scientists, so that counts for something.

Not to defend the idea that India is going to reach parity with the US. These are wide eyed conspiracy theories that India is going to take the place of the US. China might, but India is not, largely because China has a homogenous population, united by one language and a Confucian ethic and governed by a government that is efficient even if it is not liberal. Even if India keeps developing at the rate that it is developing right now, according to the latest CIA predictions, it would reach parity with the US in the year 2050.

It's not as hard to make an aircraft carrier as one may think. Even countries like Spain and Italy have built aircraft carriers, and medium income nations like Thailand have bought new ones.

Constructing a nuclear powered carrier is another matter entirely and so far only two nations have been able to do so, the United States and France, and France has deemed that it's much too expensive for their next carrier.

Yes, constructing a nuclear powered carrier is hard. But creating a nuclear weapons program with nuclear weapons made largely indigenously, is no cherry pie either.

IIRC, India's nuclear program has its basis in American and Canadian supplied nuclear reactors and materials. Also, IIRC, Israel's nuclear program was based off the French nuclear program.

One word. Globalization. Look it up. The third world didn't invent it. Also I have a question for you. If its so bad, if It hurts so much, why not ban it??? Why does the American taxpayer continue to pay billions of dollars for those who smoke and cost the state health system so dearly. Why do Americans knowing that someone becomes a gunshot victim every 5 seconds continue to do nothing about it. Millions of Mexicans cross over to America illegally. Everyone Im sure must find that appalling. So why don't you do anything to stop it? Do you not have the courage or the conviction to do so?. You mention other countries having lobbyists working for them in your congress, whose fault is that...why don't you do anything to change your system? Why go after the messenger(read programmer) if you don't like the message? What good would that do you? Why talk about about how America is obliging the third world by being a force of stability in the region(thank you so much for that...God only knows what would've happened to us if it wasn't for America) Thanks for first imposing sanctions on India for conducting nucular tests and then bending over backwards to make with us not a decade later a nuclear deal.

>Why do Americans knowing that someone becomes a gunshot victim every 5 seconds continue to do nothing about it.

Because of a little piece of paper known as the Bill of Rights!

This post is damn near right on.

I would almost go so far as to say all of engineering is a dead end. Eventually as an engineer you will top out and have one choice - new career either in management (personally I never really considered project management an option) of engineers or in sales or in law or in marketing. The problem peculiar to software even for high level architects is the temporary nature of the value of your knoweledge and experience.

Even when I was a very senior member of a team at a startup, and relatively essential, the prestige of the job sucked. The working conditions sucked, and the pay, including "equity" compared to the product management folks or the marketing folks paled in comparison. How others claim that there is a prestige in this business for software engineers or senior software engineers is beyond me and was not my experience anywhere I ever worked.

I went to law school, because I was always interested in it; I wanted a profession where I felt if I put in the extra work I could succeed. I wanted to break away from the ceiling of compensation, prestige, seniority and responsibility inherent insoftware engineering.

I wouldn't necessarily recommend law to everyone, but I would recommend to software engineers in their late twenties and later to start thinking about other options. There is a plateau pure and simple. It's a fun way to have some money in your pocket while your young, and the problems are interesting etc. I even played the startup games for a while . Unfortunately none of them panned out - yet. Nevertheless, it is not a career worth pursuing beyond your twenties.


The only thing I would quibble with is the "The foreignization of computer programming." I actually think this could be a good thing for the profession. If highly trained software people can farm out many of the mundane tasks to consultants in forein countries, I think it will actually help the value of those people who know what they are doing and are competent to run an outsourced team. It allows individual developers to add more not less, and perhaps increase their value to the organization which perhaps could increase prestige.

There are a few professions that let you tap your intelligence, creativity and technical training to create *immense* wealth in comfort, without huge capital or the mediation of third parties. You do what you're good at and what you LOVE to do, and lo, you're immediately the owner of intellectual property worth _millions of dollars_.

Take literature and art. When you sit down to write novel, what's between you and your notebook? Or if you're an artist, between you and your canvas? Nothing. No one. All that's for you to do is to do what you're really good at and what you enjoy.

Programming is such a profession. I'm 26 (and Indian!) and I have programmer friends who are already multi-millionaires in dollar terms. I myself was involved in two tech-startups that failed and I spent the last one year working on a software project during my free-time (which was aborted). I'm currently in an interesting field that's just crying out for creative software applications. I may not create the next google, but I'm pretty intent on owning atleast a delicious monster (http://www.delicious-monster.com/) in another 3-4 years.

Yeah, programming sucks. As does a profession in writing, music or art if you aren't good at it. Programming is a lot "safer" than music or writing - which is why people like you get into it - but not as safe as accounting or law, and you rightly rant.

With less students majoring in computer studies does that not mean that the job market becomes a better playing field for older programmers and developers?

I wouldn't recommend to anyone to pursue a career in computer programming as I don't see it as being a great job in 20 years. However I could be wrong!

>Why do Americans knowing that someone becomes a gunshot victim every 5 seconds continue to do nothing about it.

I had made the above comment on April 2nd. About 2 weeks later a tragic shooting at Virginia tech took place. I hope That people don't interpret this as a pointer to that. I apologize that I had tried to highlight a point using this example which in retrospect seems highly insensitive. As for this discussion, I think my argument still stands, It isn't enough to blame someone who comes here to "take" your job. You would do better to blame your government. India doesn't share a border with the U.S. if they are pouring here its only because of the U.S. invitation quota system put in place by your government. You do have someone running the show at the white house don't you? Or has that been outsourced to us as well?

Lol... you had some points but others were simply biased or used specific examples.

You know, if you are charismatic and a good speaker you can go far being a lawyer or politician and become filthy rich. But if you're a lousy rich kid that goes to the best schools because he can pay them, it doesn't mean you will be good or succeed. Its just like studying CS without being good at math, what the hell are you doing there? Just getting the title of course, and those folks will get old in a breeze because as 99% of the people, they just learned stuff, instead of achieving analysis skills or so.

I came to this site by mistake... can't believe so many people posted x.x. Guess writing bullshit has become popular since thebestpageintheuniverse.com (maddox) started...

There is one good reason to work in computer programming: because some people enjoy it! Even if computer programming was a completely unviable profession, I would still program on my free time. That's how you know you are in the correct field. While being a lawyer may be more "prestigious", I would rather live in a dumpster behind McDonalds than become a lawyer. I have seen so many people choosing professions based solely on prestige and money who end up rich, but unhappy and unfulfilled. If you can find a job doing something you love, you'll be much happier, even with less pay.

I am an occasional programmer. I learnt C++ when I was a teenager about 17years ago. After graduating for high school, I could have gone into IT (at that time I was one of the few) however, I decided to try medicine.... I am a physician now, but I really love computer programming.
Recently I started programming again and have found that a lot has changed, however, because I learnt MFC (the microsoft Windows programming framework) I was able to continue using it. I am learning (when I have time) a bit of the .NET framework too. The only reason I was able to be functional so quickly is because Microsoft kept supporting their framework for the last 15 years. I was able "keep my knowledge".
About IT. I really believe that computer programmers who are coding for open source are shooting themselves in the foot¨! If physicians started to consult for free, the value of the whole profession would be in peril too.

I am into networking ( EC-CEH, Linux, Windows Server).. It has been since two years that I am into networking due to my interest in System / Network Security.

I had learned Software Engineering ( C, C++, Java, Oracle, HTML and software engineering ) but after 2 years I am still confused whether should I stay in networking or move to software ?????

While what the essay says is true to some extent... However there are many arguments and counter arguments to it ????

Why are you commenting like this? Are you using the old TV or Car of 70s, every occupation is learning new things, especially driving by IT, so not only programmers alone. Half Sigma wake up!

This is the most ignorant article I have ever read. The world is driven by technology. As a professional with a passion for programming I provide input to Fortune 500 companies that drive the business. if making $789K+ a year (I own a development firm)is of low prestige then I'll be of low prestige while I drive my Porsche to the Bank. I'm not sure was lower in prestige, the programmer that developed this blog, or the user that used this blog to write an article that SUCKS!

The essay is remarkably ill informed, and takes the point of view that a computer programmer is equivalent to an automaton only capable of thinking in one language at a time. This is a very different role, more accurately described as a coder and would be considered a junior position - now find a profession in which a junior employee of any age has an advantage over another.

Developing a program is a series of stages, either 7 or 4 depending on the model, where coding the actual system is stage 5 and 3 respectively. These stages are the only ones which have language or technology restrictions imposed upon them which therefore must leave a large majority of the process language independent, and therefore requiring specification, analysis and planning skills which are completely transmutable between roles / jobs and companies. The question '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?' is completely irrelevant as it does not address the experience that either individual has - I would employ the one who has most experience in the field that I am recruiting for. Any competent programmer should be able to learn a new language within a familiar paradigm (such as Object Oriented) within a few weeks, if not days, merely needing a desktop dictionary reference for looking up syntax. Again, name me another profession which is able to take to new technologies as quickly or as efficiently.

This also flies completely in the face of the statement 'Computer programming is a job that's heavily dependent on temporary knowledge capital'. Visual Basic 6 skills can very easily be transferred into dot Net (using any language) and as a computer programmer and manager I can guarantee that an applicant whose most recent experience with VB is at that level does not stand any less chance than one who is proficient in Visual Studio 2003. In fact the increased dependence on visual tools and code builders with current Microsoft releases would seem to suggest that the VB6 programmer should understand the code to a higher level.

Where is the evidence to support such statements as 'Visual Basic 3.0-6.0? Useless knowledge. I haven't seen any vintage Visual Basic since 2002.' and 'No one cares if you know how to program in COBOL for example'? I know of at least 2 blue chip FTSE 100 companies who run large development teams coding in VB6, and try asking large insurance companies with legacy systems if they care about COBOL programmers. Also an interesting exercise, find out the market share of programming related to these 2 technologies - I think you'll find the result surprising.

There are no other arguments worth defending in this poorly written and even more poorly researched essay, being based purely on supposition and individual experience (a flaw which any competent programmer could point out, exceptions do NOT prove the rule). How are statements such as:

'If you look forward to one day having your own private office, then computer programming sure isn't the way to go'

'Employers are even too cheap to invest in proper tools for the computer programmers'

'The amount of money per year per lawyer spent on research materials most surely exceeds the money per computer programmer per year spent on computer hardware'

valid? I have had, and know other programmers who have their own private office and am writing this on a very top of the range laptop, which I have also just used to order some fairly expensive software which will aid me in my job. By my own rote, maybe am the exception that does not prove the rule however I could list many many examples of the same situation, and can do on request.

It serves no benefit to distribute incorrect and invalid information on a career path, and can only server to damage that industry by persuading future IT managers into a back-breaking, midnight oil burning and corporate shafting life on the legal circuit (before I invite reams of criticism that I have just done the same to the legal profession, the last sentence was added for purely dramatic effect and as I have no real knowledge of this as a career path, I won't be publishing any articles on it)

Three words: barriers to entry

Programming has none whatsoever and is open to anybody in India/China willing to pay the money for a bogus degree. The product and production method is portable and can be done anywhere in the world.

Law on the other hand requires a degree from a reputatable institution (top 25) plus decent grades with the passing of a bar exam. If you meet certain criteria then you'll have a higher level of job security.


To "nobody" : $130K/year is hardly typical. Accourding the Bureau of Labor Statistics:

"Median annual earnings of computer programmers were $62,890 in May 2004. The middle 50 percent earned between $47,580 and $81,280 a year. The lowest 10 percent earned less than $36,470; the highest 10 percent earned more than $99,610."

Building on what you know - vs - Temporary Knowledge

I think a lot of posters here missed the point.

Sure doctors and lawyers have to keep studying, that's why they become more valuable: they build on what they know.

Practically everything doctors and lawyers learn in school, and on the job, is still true and relevant, after many years.

When I started in computers 27 years ago, I used an OS called MCP. How valuable is my knowledge of that OS now? I also worked with GECOS, ITX, and AOS - all useless now. I also programmed in a language called "Business BASIC" also seen as useless by employers.

To the blogger, look at this website
http://jobs.efinancialcareers.com/Quantitative_Analytics.htm
These are the equivalent of those 'Big Law' jobs were mentioning, but for CS/math majors. These pay more...

There is no free public law library in Philadelphia.

Interesting article.. I am a programmer from Malaysia, and I think you have some very interesting points here.. I have posted some comments for this article on my blog
http://mltan100.blogspot.com/2007/07/why-career-in-computer-programming_01.html

see google's programmers search engine http://devshots.com

Devshots returns Google search results, but emphasize on programming related sites and resources. So the search result will be smart and accurate.

I remember reading a news article a little over ten years ago about how some software developers could claim their software was some 99.9(9?)% bug-free. The article then pointed out that if other industries had that 'success rate' they'd have the crap sued out of them for malpractice. In other words, the success rate of other industries had to be in order of 99.99999% (or something like that, I forget now, but lots more '9's, than the other figure :|). Therefore maybe because of greater failure expectation allows the computing industry to be more free-market than others. Maybe?

WOW!!!

I think some are missing the point that this Industry is still in its infancy.

What doctors knew back in medicines infancy (the Apothecary)is completely obsolete today. Even practices that were excepted just 40 years ago are no longer relevant today. Can you say "Thalidamide" or how about a hundred years ago and amputation as opposed to saving a limb.

"People with high prestige jobs, like surgeons, would never allow themselves to be managed by non-surgeons."

Sure they do, they are called Hospital Administrators. They do what all managers do, keep an eye on the bottom line.

Just one more rant. As a 43 year old I really am disgusted that anyone would even believe that all older people are less interested or capable of learning new things, be it job related or not.

My 80 year old father is reading a book on Quantum Mechanics for FUN. He supported his family by being a auto mechanic and is still learning new things about that field even though he retired 20 years ago.

I'm wondering how many commenters here are over 40. I bet most of them are like 20+ and are still living in their dream.

Just look at IT industry today. Vendors, open source solutions are competing with each another. Web frameworks for example, how many of them are there? Ruby on Rails is hot now, who knows what comes next. That's just for server side web programming.

Today, the buzzword is RIA, you can start learning Flex and Silverlight. What if those new technologies never take off? Well, you've just become a victim of hype, you've just wasted hours of learning new practically useless skill no one cares about.

Learning new languages is not just learning syntaxes. You learn the APIs, the frameworks, and the tools. Look at what you need to build an application in java today: ant/maven, eclipse/netbeans/intellij/etc, hibernate/ibatis, , JSF ("official" framework), jboss/websphere/weblogic, etc. And the next 5 years, no one even knows if anyone will still be using these technologies, or will they become new COBOL.

If you want to spend the rest of your life in front of computer, hacking, then have fun learning all these new things every year. You want to have family and live a normal life? Please stay away from this industry.

Yes, career in programming sucks.

I will comment, if nothing else to relate my own experience in comp sci. I am currently 28 years old. After graduating Western Ky University five years ago with a 3.24 gpa and a bachelors of CS I went through about 6 months of unemployment, at the end of which I was hired at an EDS call center, 9 bucks an hour. I kept that prestigious job for about 7 months and then began working as a programming instructor at a local community college, on a temporary contract that paid 30k per year. After two and a half years of that arrangement my college was bought out by another larger university and my salary was cut even further as my new boss(read foreign management from the "new" school) cut back my hours and began recruiting students away from my campus. When my wife announced that she was pregnant I continued teaching while I sold rainbow vacuum cleaners out of the back of my car and took another job on the side as a .Net programmer at a small IT firm in Winchester Ky. I finally had to drop all of these jobs and move to Indiana where, yet again, I work on a temporary contract with absolutely no job security and pitiful insurance. I make about 80k per year and I have managed to hold this job for the last 7.5 months. But hey, now I have an apartment right? It's not me, my wife, and my baby living under the same roof as my father. This has not been a good field for me. It really has changed my life, I actually used to be a right wing, capitalist, red blooded American. When I see what has become of this country, and the way that I slave for so little... I know there must be a lot of other Americans like myself. Young, strong, educated, intelligent, and very angry. If you want to make a difference in this country, a real difference, start like this: quit buying, quit voting, turn off the television. Then read a little bit on the ancient history of Rome so that you'll be prepared for the next 10 years.

I have to agree with this Blog, an IT career these days just plain sucks. Your value definitely depreciates, which is the opposite in careers like law and medicine. My Fiance is a first year corporate lawyer and her starting salary is $150,000. Her work is not remotely as difficult as mine but I make roughly a third of her salary.

While people say money isn't everything, it still reflects what value society places on your profession. IT folks are seen as an expense that can be off-shored, or given to new grads who will eventually figure it out and work for half the pay.

While there are a few decent programming jobs out there, they are few and far between. The attitude by the posters here reflects why programmer will never be respect and paid more - simply because they have tunnel vision and are too detail oriented to see the big picture. Maybe this will change in 20 years, but I too will have to say that I regret my career decision.

Eh. Let's face it. The I.T. industry is as mindlessly hyped as the movie industry. Everyone loves to hear how a handful of actors make millions per movie yet ignore the fact that the vast majority of actors don't make much at all. So too it is with the computer industry. :( And I have an I.T. degree too, fat lot of good it do me. double :(

So what is wrong with us IT workers that we're either too lazy or too ignorant to form a union?

As a union we might actually be able to stop the H-1B visa programmer and off shoring of our jobs. I'm pretty sure our salaries would be well into six figures with plenty of jobs to go around but for this crap.

At this point it might be too late though. "We formed a union and will strike if you offshore more of our work." "OK, you're fired."

It would only work in companies where other existing unions would be willing to back up the IT department.

umm,
I'm currently studying biomedical engineering , n considering switching to computer science , I've been looking job offers n stuff 'just for fun'
n apparently , a computer programmer is not the same as a software engineer ,cause they're classified in different categories.
the department of labor considered software engineering to be the highest growth field in the current decade , and as computer science enrollment slumps , n H1b visas are being taken as a serious danger , that would lead to a lack of IT people in the next decade ......
back to the job offers thing
i've seen many software engineering offers in 6 figures one even reached a whooping 700,000..and comparing IT to the rest of 'normal' professions , i found that there's more IT people working in IT than there's working in normal engineerings
an average programmer earns more than an average civil engineer .
and as civil engineers evolve to project managers ,so do software engineers , the only difference is software engineering gives u a broader chance to do that .
now ,of course i'd rather be a doctor or a lawyer ,paid in millions , respected by society and loved by chicks ,but each of these professions has it's own downside.
point is I've seen underpaid /unemployed doctors and lawyers and accountants ,
i've seen doctors who hated their jobs ,as well as u probably have ...
well IT has these people too , the scum that gathered around the 90's to do normal logical programming with no mathematical or fundamental background in anything else..
it's easy to notice a success in other fields than faliure, of course i admit doctors earn normally double programmers ...but not necessarily as u evolve in ur career.......i don't feel like writing anymore so i guess we'll talk later

I whole-heartedly agree. Although there will always be exceptions when dealing with things as complex as career and societal issues, I've personally seen the author's points manifested consistently over and over in my 15 year career.

Over that time period, I've seen many of my colleagues move on to new careers and become much happier.

Its not that we can't do it anymore, its because we don't want to anymore. I've done everything from satellite firmware to ecommerce, graduated in the top 10% of my class, learnt new technology for fun, etc... and what is my reward? A dead end.

I don't consider myself a geek, I consider myself a computer professional with business acumen, social skills, and an outgoing personality. Unfortunately, being in IT immediately results in one being labelled a geek and being resigned to the tech ghetto.

There is no need to rehash the original points, but I would like to mention one other thats kinda related to the low prestige.

No one likes geeks, not even other geeks. Most people want to achieve things in life, not get mired in the details. Geeks are so caught up in the process and details, that they typically fail to see the big picture or true goal.

Whats mind-numbingly frustrating is to day in and day out deal with this mentality. The result is typical. Flawless and brilliantly mis-directed logic that repeatedly fails to achieve the desired results, or pain in the ass over-analytical explanations of even the most mundane issues.

One learns that you cannot trust geeks to get the important things done and that you must tightly control them, for which you will be resentful. You lose all respect for them and without respect, there is no prestige.

Great Article! Keep it Up.

Whine...whine...whine. I am an accountant with a degree in information system and accounting. I also have an MBA and a CPA license. You suggest a career in accounting yet I don’t think you realize what it is really like to be an accountant. Accountants are the lowest paid of most professionals. We work long hours and get treated like dirt. I have to change jobs every few years because I find I simply can’t stand it anymore. I have worked for several small CPA firms, a few large corporation, and two Big 4s. They all suck.

A lawyer friend of mine (1st year at BIG corporate LAW) had to supervise 60 lower lawyers for a case together with 5 other lawyers for 1 month. All of these lawyers were freelancers, payed by the hour, $25 per hour. Almost all of them were black.

Do you think these lawyers have high prestige? What kind of a "career" do these lawyers have?

Our life style has two boundaries. Before starting a career and after starting a career.


Before starting a career we are free birds. Read the books we like, roamed anywhere at anytime. Chatting, laughing with our friends. Day or night has no restriction for our enjoyment. We have lot of games. We play many indoor and outdoor games. No hesitation, no fear. Mind is not obsessed with anything. No need to think about what is next. See all the movies. Watch or enjoy the beauties of girls in our sphere. Lots of bear parties. Those who are interested in particular game or activity, dedicate their whole time for it.

It is a state of consciousness, where your mind is free from time restriction, no fear about failure. Mind is highly energetic. No tension. It is a life with out commitment. You can move, turn, and change any way you like. You have full freedom and power in driving your life.

When the evil hands of career trapped you, first thing you lost is your freedom. You are forced to read book related to improve your career. Second thing you loose your friends. Career throws the friends to different corner of the world. I remember my father searched and meet his village, school, college friends after his retirement. Once you are caught by career you will loose your contacts with your friends slowly.

Then you loose your ownership to your time. Something or somebody will be the owner of your time. Whatever may be your pay cheque, what level of (high profile or low profile) designation you have, the core activity of your career is selling the time. Without selling your time you can not enroll into a career.

read more at http://www.blogya.in/evil_hands_of_career

I agree with the writer that it's not a prestige job and professional job, I feel sick when I hear the phrase 'IT Professional'. So far I've seen only handful of people who are more than an IT worker with no professional culture, worst thing is most of them lack general knowledge and common sense. I've seen IT programmers with no basic knowledge of Algebra.

What makes me angry is that they think they're professionals and hold their heads high, whereas they're not more than labour. The general public also creates a hype calling them 'IT experts' wherein reality they're bull shits.

note - I work as an IT programmer for last 10 years in COBOL

This article is dead on. Only those of us working in the profession for awhile would understand the conditions of the job. While i enjoy the problem solving aspect of programming, that joy is always tempered by the crappy work conditions (ie. 8 hours of staring at endless lines of code with no break, erosion of communication skills, working endless unpaid overtime, technology constantly changing, never getting credit for anything, foreign competition, cocky contractors, non-technical managers that always know better how long something will take, etc etc). Others may say "stop bitching you have a good paying job," but i say "GET ME OUT OF THIS!" Unfortunately I would now have to start over from scratch and that ain't going to pay the mortgage. The only thing I could see that would change my opinion on my "chosen" profession would be to unionize and get better job security, training, and prestige. But that isn't going to happen. Not in this country at least :(

I've been programming for 20 years and have changed languages twice (which is pretty good) after learning a new one straight out of college, but I see what the author is saying. I have 15 years experience in my the industry that I'm in now but our new employees (and one consultant) who have more knowledge of the language we program in (I've been using it here for 7 years) are the ones who get the attention and we do what they say. Never mind that they don't know the application and are not learning it. They want to change everything to their way instead of learning the current way. As a result, we are getting a lot less done with 5 programmers than we did with just 2, and we are having problems. And what is being done is more often than not, just flat out wrong. But, that's OK I guess to management. I also agree with Fred that a major problem is the management either getting in the way or not managing the department. I love programming and while I've had two management positions and one in project management (or project lead), I will never go back to them. The problem is getting good managers (either PM's or PL's or just managers) that can make things work well for the whole department. Granted PM's are not people managers, but they are managers, just managers of a concept. More often than not they are nothing more than status givers and getters, and they should be pains in the butt to get things done.

I don't know what all the fuss is. I tried for several years to break into the programming industry. When I finally got in I was so happy. I found my dream job where else could I create nothing from scratch and 6 months later have a bunch of monkeys using it. Oh sure they consistenly spill out dribble about how it doesn't do what they want or that it can't read their brain, but hey problems are a part of life.

Check out the bids on eLance some time. (Guru doesn't show competing bids.)

Tons of $10/hr bids from foreign countries.

This is the future of IT. Get out while you can!

I disagree with the idea of "temporary knowledge capital." There are a lot of shared concepts in languages, and if you stay in the game, change is a gradual process that you can keep up with.

I also disagree with the idea that outsourcing devalues American workers. Indian coders are shit. Everyone knows that.

Great article. Does an excellent job of articulating my thoughts about being a software programmer.

I don't regret studying computer engineering at College and University but towards the end I was sick of wishy washy courses that are completely different when taught by different instructors eg. UML. The courses that I am most fond of in hindsight are subjects like physics and math which will be applicable and relevant for the rest of my life. The Java courses I took were acomplete waste of time and will be useless 20 years from now.

There are no pervasive standards for software development in the real world and if there are they change every 5 years at a minimum. Every company/employer/co-worker does things differently and the amount of 'human' input to the system I find frustrating. There is no 'one true way' or most efficient way of doing things, just a millon ways to accomplish the same thing in a single progreamming lanugage nevermind different languages. This lack of 'best practices' leads to confusing code or artifical standards enforced by a particular employer - "Oh..We don't ever do it THAT way around here"

I'm off to become an air traffic controller. Better pay, better benefits, better holidays, paid overtime, work is over when it is over and maybe if I don't have to work in software/IT every day I might be more inclined to use my knowledge for my own benefit and profit from it on the side.

Thanks again for the great post

Programming is more of problem solving than writing code in a language.

Having some knowledge and experience in both computer programming and law, I can confidently say you are misperceiving the legal profession. It is not one of intellect, but one of social skills -- not the social skills of a socialite or an ambassador, but the social skills of a redneck KKK member, Tip O’Neil, or a mafia hit man. Anything that appears to be intellectual consistency in the legal profession -- like Supreme Court opinions, is just a show, the tiny tip of a huge iceberg of BS accessible only to the ultra-wealthy. A true intellectual would only be frustrated in the legal profession.

To all the IT guys who are fed up, a suggestion:

Go make your own product.

(Innovation is not just in writing code, but in coming up with new product ideas and finding ways to make these products reach great audiences)


As someone else said, this logic only applies to bad programmers. If you a good programmer, syntax and language doesn't matter. I know over 10 computer languages and have only been in the business for 3 years. I could code any off them with a blind fold. It's about what you put in it.

Yeah, but will they hire you? I get the sense it's so much of a commodity nobody cares whether you're good or bad anymore.

I wanted to point out a mistake in the line of reasoning quoted below.

It's not whether the COBOL programmer was any good at it or not. It's that the IBM's of the world would rather leave the COBOL programmer in place and hire the college grad to do the C/C++... instead of having to train the COBOL programmer in C/C++ and then the grad in COBOL.

So in essence the problem is you get "pidgeon holed" and then "obsoleted".

I've suffered this fate myself. No one will let me get *started* in C/C++ - Windows etc. programming, despite having developed on commercial products in use at fortune 500's using Mainframe Assembler and ironically... SAS/C.

It's something the industry is doing *to* people. Not something people do to themselves. (Granted some do decide when given the opportunity to do the new stuff to stay put. But I haven't seen that opportunity given out in years. Generally all postings I see are aimed at stealing another company's training budget. "Entry Level" these days means "3-5 years experience in exactly the "technology" (language or tools) at exactly the level they are interested in."

The original poster is correct, this happens much less in other professions.

But then it is questionable how professional this profession is. Last inteview I went on, one of the interviewers arrived without shoes on! LOL!

Women don't call computer geeks, "geeks" for no reason.

This industry is an inordinate proportion of teenagers that are chronologically older than thier teens.

Sincerely,
Frank

"Computer programming is a job that’s heavily dependent on temporary knowledge capital."

"Only if you're bad at it. The good ones understand computer science, which makes us good at programming regardless of language. If an ex-COBOL programmer can't compete with a younger person raised on C in C then he probably wasn't a good COBOL programmer to begin with."

Find what you LOVE to do, and just do it. You will be really good at it and money will come along.

I study Computer Systems Engineering, it's composed of 45 subjects, which only about 5 are completely about PROGRAMMING.

You seem to have the idea of a computer-related studied man as if programming could be his only possible task, it's not.

I got my CS degree in the 90s when the IT world was buzzing. I thought it was the future and a decade or so later, I am regretting going into the IT field. It does not matter what you really do anymore it seems because everyone appears expendable. I have seen Doctors get fired and Teaching and Nursing seem as stressful as working in a mine. It appears that there is always a demand for Nurses or Teachers because a lot of people do not want to do that job or stay in it for long on average. I know Lawyers who cannot find work because there are so many Lawyers in their area and I have relatives who are Electrical Engineers and Civil Engineers and they regret going into the profession and warn younger folk not to go into the industry because of layoffs or traveling to other countries for work. My father was a Plumber and you would think with a trade that you would be well off but you have to run your own business as trying to find a good job working for someone else is like striking gold. CAD tech jobs and similar ones can go by the wayside and it seems like there is not many that cannot be transported elsewhere and the ones that cannot are probably not the ideal ones. So what does a college educated or out of high school person do nowadays? I don't know. I ended up getting an MBA so when the music stops playing maybe I might have a chair. My Uncle explained that he got an MBA so he could be a job hopper and try different industries. He has always had some type of job and some good and some not so good. Of course there are examples that contradict all of these examples but I think people just have to be flexible and try to be eclectic as possible. IT professional can be Systems Engineer, PM, IT Manager, Unix Administrator, etc. Try not to limit yourself to just Programmer and learn as much as you can about technology if you are interested in the field but like anything nowadays it is good to not put all of your eggs in one basket, save money, maybe get another degree and try to be flexible and versatile. I went from getting a Psychology degree and working in a head trauma facility and a psych ward to a Computer Science Degree and now an MBA. I am not boxed in and not to specialized and try to remain versatile or eclectic. I can always go back to school and have enough money to survive different things. The IT field made me like this for better or worse.

I agree fully. I have been in IT for almost a decade now and have been a web developer for over 6 years and I have come to notice that I never know enough. I am always behind and unless I choose a geeky nerdy loser lifestyle where you have to read and practice new technology 24/7 I will never know enough and always behind my peers.

That is why I am slowly leaving this field and becoming an entrepreneur starting my own business in completely a non IT field.

Wish me luck :)

Al

This is an excellent post and I agree with everything in this post EXCEPT the "prestige" part. To me, only IT support/Hardware career has low prestige. Programmers/Software Developers have "ok" prestige.

The comments to this entry are closed.