Slashdot Mirror


Is Programming a Dead End Job?

Embedded Geek asks: "There's an interesting opinion piece at Embedded Systems Magazine about [embedded] programming being a dead end job. The author cites burnout ('Pushing ones and zeroes around doesn't sound like a lot of work, but getting each and every one of a hundred million perfect is tremendously difficult.'), prestige, and skill obsolescence as big reasons for programmers to quit or to go 'over to the dark side' and join management or marketing positions. While the piece primarily addresses embedded programmers, the issue is rising for IT workers and other tech workers. When the age issue is combined with the export of jobs offshore, it makes me nervous just to be pushing 35..." Even though the market is going thru a rough patch, and the number of detrimental aspects to programming are increasing (ageism and so forth), I still do not feel that programming is a dead end job. Computers are going nowhere folks, and as long as they are around, programmers will be necessary. People who are in this career for the money or the prestige may not like it after a while, but the people who are in this for something else will tolerate quite a bit before deciding to opt out. The simple measure here: "as long as you love doing it, you'll keep doing it." Isn't this true for any career?

50 of 613 comments (clear)

  1. Re:why to go to the dark side.... by GooRoo · · Score: 3, Informative

    This of course is not true, at least not in small companies. I know several programmers who are the highest paid individuals in their respective companies except for the owner. It all depends on how much value a person can produce for a company. In a larger corporation I would expect this to be more the rule.

  2. Dead End Job by spookysuicide · · Score: 3, Informative
    I have been looking for a good php guru in portland oregon to hire to work on my site forever. I haven't been able to find anyone who isn't already swamped with work. It may be a "dead-end" job but while all my graphic designer friends are out of work, all my programmer friends have too much on their plate.

    I know, first person observation isn't an accurate reflection of a marketplace, but still...

    --
    yes i run a goth/punk/emo porn site.
    1. Re:Dead End Job by edrugtrader · · Score: 3, Insightful

      actually first person observation is all the accuracy YOU'LL ever need...

      if you need a php coder and none are available, that sucks for you. who cares about the rest of america?

      by the way, i'm a php coder and i'm swamped, so that PROVES that the market is good.

      --
      MARIJUANA, SHROOMS, X: ONLINE?! - E
  3. Cliff said it all by Havokmon · · Score: 3, Insightful
    People who are in this career for the money or the prestige may not like it after a while, but the people who are in this for something else will tolerate quite a bit before deciding to opt out.

    And is exactly why Loki lasted as long as it did..

    --
    "I can't give you a brain, so I'll give you a diploma" - The Great Oz (blatently stolen sig)
  4. No way by dciman · · Score: 4, Insightful

    I think that programming is by NO means a dead end. Sure there is a bit of a tough time right now with the economy in its current state. But, we are just now seeing an emergence of whole new computational fields. These mainly being in the life sciences arena. Genomic sequencng projects are quickly overloading scientists with raw data that someone needs to turn into usefull information. The area of developing these tools is vast. Possibly more important will be people who come up with better algorythms for predicting protein structre and interactions based on sequences. This is an amazing field that has the promise of keeping computre scientists, biologists, and bioinformatics people busy for decades to come. I think the field is ready to make leaps and bounds.... and most definitly not a dead end.

  5. Of course it is. by derrickh · · Score: 5, Insightful

    You get into you because you like it, the pay is better than McDonalds, and your social skills are such that you can't interact with customers.

    The things that make a person a good programmer are the same ones that stop you from being a good manager. So you can't move up and you're too valuable to the company to move down.

    D

  6. Re:why to go to the dark side.... by rufusdufus · · Score: 3

    I had several programmers who were paid substantially more than me when I was a manager and Microsoft. My coding skills were also better. They had come from other companies that paid a lot more.
    I didnt feel bad about it all. Why should I feel bad about their good fortune? Anyway, their efforts helped push the stock up, so why should I complain.

  7. Like a shark - keep moving or die :-) by taniwha · · Score: 5, Insightful
    I've been in this business about 25 years - and variety is the spice of life, I've spent time doing unix kernel programming (in the early 80s), chip design (in the 90s), protocol engineering (all over), compiler design, linux kernel work (late 90s), mp3 player design, etc etc.



    You have to keep learning and changing, othewise you burn out, get stuck in a rut and turn over to the dark side ....

  8. It's not programming that burns you out... by curunir · · Score: 5, Insightful

    I originally got into programming because I really love to do it. I can sit in front of a computer and hack away for hours (days) on end and never tire of it. However, at work, I often start to feel what the "burn out" effect that the poster was talking about. I've come to realize that programming is just half of the equasion. It matters what you are programming as well.

    On my own personal projects, I get to choose something I'm interested in. At work, I don't. It amazed me when I realized that when I was feeling most "burnt out" was when I was concentrating more on my work projects and less on my personal projects.

    So, now my #1 concern when looking for a new job is, "am I interested in what I will be programming?" If the answer is no, then no amount of "cool technology" or "cool workplace environment" can make it worthwhile.

    --
    "Don't blame me, I voted for Kodos!"
  9. be a jack of many trades by Aqua+OS+X · · Score: 3, Interesting

    I think part of this depends on how broad your skills are. Changing careers is very common these days, sticking with one career until the end of time is not. If you've actually spent the time to expand your education (and yourself) to something aside from a few specific thats will get you a good job out of college, then you will have the ability to migrate horizontally and vertically in life. I think it is fairly safe to say that you are less inclined to "burn out" if you are a jack of many trades, as opposed to a master of one.

    --
    "Things are more moderner than before- bigger, and yet smaller- it's computers-- San Dimas High School football RULES!"
  10. We all wear smocks, get over it, monkey by gelfling · · Score: 5, Funny

    My name is Earl and my name is stitched on my jumpers. Except it's not Earl and I don't wear jumpers. My name is Phyllis and I have a plastic card key-name badge. I am a code crunching monkey who slings all day at the bottom of the food chain for asshole users and clueless fucking managers. You will never let me do it right so I will do it over. Forever. That's why I'm indispensible. Now let me get back to my soul sucking veal pen cubicle so I can shit out some more gorp you don't give two shits about whether I'm proud of it or not.

    At least it's not the fucking helpdesk. Then I would drink bathroom cleaner.

  11. it will survive by CrazyBrett · · Score: 3, Insightful

    Software engineering, compared to most other fields, is still VERY young and immature. Despite the fact that "pretty good" software is being produced today, as the field matures there will be vast improvements in the quality of software applications. For many many years, there will be a need for talented programmers to produce the latest and greatest advancements in software.

    Don't panic :)

  12. Re:why to go to the dark side.... by gantzm · · Score: 5, Insightful

    I wouldn't know, I don't get to see his code.

    --


    Excessive forking causes un-wanted children.
  13. Re:why to go to the dark side.... by gosand · · Score: 5, Insightful

    What? I know for a fact that managers can make less than technical people under them (including programmers). In bigger companies, you either choose the technical route or the managerial route. That is the way it should be - managers manage people and projects. It shouldn't be about the money. Many times it is about the power. I have heard from managers that they want to have highly paid technical people working for them. Those are the people they can rely on. Just because someone chooses not to go down the managerial path does not mean that their salaries are limited.

    --

    My beliefs do not require that you agree with them.

  14. All jobs are dead end... by bluprint · · Score: 3, Insightful

    As long as you slave away for someone else, that qualifies as "dead end" in my book...unless you are slaving away with a plan. Either a plan for a new job (going from programmer to managment) to slave away in, or a plan for financial freedom.

    When you stop having ambition is when you start having a dead end job.

    --
    A modern day witchhunt.
  15. Re:why to go to the dark side.... by mark-t · · Score: 5, Insightful

    This makes the assumption that the reason to stay in a job is because of the money you make.

    Some people, believe it or not, are quite happy making less money than somebody else who may even apparently be doing less work, simply because he or she doesn't want to be doing anything else. This isn't a rut or a dead end. It's just job satisfaction. The only reason for discontent to arise in such a situation is if the employer is actually not paying fairly for the work that is being done. This can usually be rectified with nothing more than a modest annual cost-of-living increase in pay. And my view is that if the employee doesn't deserve even that, then he probably should be let go.

  16. There is more to it than money by gosand · · Score: 5, Insightful

    And I am not talking about prestige, either. You know what? I LIKE being able to wear jeans and Tshirts every day. I like having flex time. I like working with technology. I like talking to the IT guys about PCs and stuff, and having them give me old equipment that they are going to throw out. I like that stuff. And I am not a programmer, I am in QA. But the atmosphere is the same for the programmers. It seems like those who aspire to be managers either are told, or feel the need, to "clean up their act" and hang out with other managers, dress up a bit, and shmooze. I am glad I don't have to do that. We have a pretty sweet work environment, which means a lot. Not everyone can say that. And in reality, pretty much EVERY job is a dead-end job. Where do you want to go, anyway?

    --

    My beliefs do not require that you agree with them.

  17. Yes it is... by brogdon · · Score: 3, Insightful

    The actual act of getting paid to program is a dead-end job. The act of getting paid to produce any kind of product for someone else is a dead-end job.

    The reason is there's always going to be a finite amount of money you can earn. There's only so many hours in the day, and only so much people are going to be willing to pay for the hourly output of a single worker. Unless you produce intellectual property, and are one of the very, very few who can produce IP that everyone wants and will pay for, you're never going to escape the fact that your earnings will butt heads with an asymptote at some point.

    Real money always has been, and probably always will be, in starting a business and skimming off the top of other workers. Once you can pay other people less than you can get for their work, you have escaped the limit, and your "job" is no longer a dead-end.

    --


    This tagline is umop apisdn.
  18. Re:the big problem by CrazyLegs · · Score: 3, Informative
    'Tis true... Career paths for tech folks is a big problem in corporate IT areas. However, it's a big problem because it's a relatively new problem. The first big demographic bulge of professional IT types is working its way through the corporate hierarchy and the rules are still being written. An interesting approach in the company I'm with (big bank) is the creation of a 'fellowship' position. Essentially this is a senior mgmt level for old, experienced geeks who want to remain geeks - i.e. guru types who have some level of social skills and practical streak that is not mesmerized by 'cool' technology. These folks are essentially advisors within the organization who can speak to coders and executives with some amount of ease and trust.

    This doesn't solve the problem, of course, because there are few fellowship positions available and there are few who can really fill this niche role, but it's a start I think.

    --

    CrazyLegs

    "Pork!!" said the Fish, and we all laughed.

  19. Maybe... by emn-slashdot · · Score: 3, Insightful

    Maybe programmers program because they like making good products as many have said. Myself, I like making lots of money, and I think I have IMTS (I Made This Syndrome). Ever since I was 12 years old (programming QuickBasic! woot) I have gotton a kick from showing people what I made. Be it friends, family, or coworkers. When I recently wrote 3000 lines in 5 hours for a quake 2 model loader/display engine from scratch I got that kick (read: ego boost). That is why I program. I program because it is one of the VERY few things that *I* can do and no one else can. People all around the world can run faster than me, jump higher than me, and sing better than me, but damn it, there aren't too many people that can code better than me. (obviously there are (tens of?)thousands of better coders than me, but considering there are billions of people on this rock I feel pretty special.) In a world where people are amazed you know how to reinstall a printer driver, writing neet programs makes the sheep see you as a guru. That is why I program.

    --
    -EvilMonkeyNinja
    Mild Mannered Host by Day
    Wild Hammered Programmer by Night
  20. Programming is a DEAD END!!!!! by devilbat · · Score: 4, Funny

    Please, please, please get out of the software field. It's a dead end. No one wants you here, you will be better off in marketing, or washing dishes, or detailing cars or food service. And besides all of that less compitition will drive up my rate. :)

  21. Is CEO a dead-end job? by j09824 · · Score: 5, Insightful
    I mean, where do you go from there? Or what about medical doctors? Or plumbers? Or construction workers? Or lawyers?

    The notion of "promotion" is seriously overrated anyway. Do you really want to spend your days talking to whiny investment bankers, composing meaningless vision statements, having half your company snicker about you behind your back, having all stress and no free time, and managing people problems? If you do, go right ahead and aspire to that management position. But there is a reason those positions are paid highly: it's hazard pay for dirty work most people don't want to do.

    Seriously, people do what they like, what they get paid for, and what they are good at. Many people who aren't qualified as programmers would love to have a $80k/year "dead-end job" with full benefits.

    As for the supposed age limit, jobs going off-shore, and all that, in my opinion, Matloff is a loony. His claims are poorly supported by data and contradict what people who actually try to hire programmers experience. Sure, occasionally, you'll see age discrimination, and occasionally you'll see companies taking advantage of immigration issues. But the former is already covered by non-discrimination statutes, and the latter has been addressed with H1B portability and faster green-card approvals. Jobs will probably continue to go off-shore, but the best way of stemming that is to bring the qualified programmers from those other countries to the US; if you force them to go back to their countries of origin, they won't become farmers, they'll create a thriving and competitive software industry there.

  22. depends by EnderWiggnz · · Score: 4, Insightful

    IT programming jobs are fairly horrible - you know, database work.

    i did a database job for 3 years, and drove me absolutely bonkers - a decently smart CompSci guy should pick up everything you need to know about databases in about 6 months.

    everything. and then for the next N years of your life, you spew reports that you could care less about.

    now... true "systems engineering" type jobs... or lower level, more technical stuff - there is definite value in having more experienced people, and the burnout isnt a bad.

    IT programmers have a useful life of 12 years. thats it. you will drive yourslef insane shortly after that.

    --
    ... hi bingo ...
  23. a better world by jafac · · Score: 5, Insightful

    In my opinion (which is not so humble today) - the MORE ex-programmers move into marketing and managerial positions, the better place the world will be.

    We've seen what happens when you put MBA's into marketing and managerial positions in tech companies. Hell on Earth.

    The world needs MORE engineering-driven tech companies, and less lawyer-driven tech companies.

    --

    These are my friends, See how they glisten. See this one shine, how he smiles in the light.
  24. Try being over 40 by Anonymous Coward · · Score: 5, Interesting

    You simply cannot get a job, even with current skills and a solid history. There is an inherent bias against over 40 coders, we are expected to have moved into management. After the dot com collapse and then the telecom collapse, there are a lot of over 40 coders out there from the mass layoffs.

    I am one of them, 44 to be precise. I originally used to put my employemnt history back into the 1980's, and put the years my degrees were granted. And for some reason I never got a call back. So I took all the stuff prior to 1992 out, removed the dates from the degrees, and put the resume back out there.

    Within a week, I got 4 job calls where my qualifications and resume were deemed "excellent" on by reviewers on phone interviews, and I aced the tech interviews over the phone as well (I used to be the guy in my group that did the C++ and Java tech screening!). Plus my references were checked, and I have excellent references. I generally interview quite well in person or over the phone, having been a member of Toastmasters due to needing speaking/presentation skills at my old company. Listening is as important as talking.

    But when I show up at the "final" interview, in a nice tailored conservative business suit, with my short but gray hair, all of a sudden they seemed to get cold feet. And within a week of each interview every single one of them sent me a "Regretfully you do not meet the qualifications, your resume will be on file for one year" letter.

    As long as this continues, then programming *is* a dead end job. You can get snarky if you like, but you'll be here in my shoes one day if you live that long, and you will be wondering why you cant get hired even though you can code circles around half their staff.

    FYI, I did get a contract job 2 weeks later where all the business was conducted over the phone. I have had my contract renewed with a raise due to performance, twice, and thats despite the company going through 3 layoffs.

    But I learned my lesson, Im getting my MBA and moving into management, even though I make a hell of a lot better systems-architect or software-engineer or developer/coder than I do a manager. I will miss coding for a living, but I'll not play martyr at the expense of my wife and children.

    1. Re:Try being over 40 by mpsmps · · Score: 3, Interesting

      Are you sure that's all to it? Many of the top developers at my company (we do low level system programming) are in their 40s (or 50s). We recently put out an opening for a senior developer, and hired someone in his mid-forties. I've heard about ageism as a problem, but I'm not sure it's that big.

      The one thing about being older is that if you want to stay in the field, it's important to commit yourself to constantly renewing any obsolete skills. Back when I was a columnist, I wrote an article about how the addition of branch-prediction to newer microprocessors made me have to relearn performance programming essentially from scratch. My reaction should have been happiness that I no longer needed to spend all my effort worrying about branches, but my actual reaction was a feeling that I no longer knew how to program. All of my idioms and rules-of-thumbs had become incorrect. I had to make a decision at that point as to whether I was going to stay on the cutting-edge of implementation or move into management. I explicitly chose the former and relearned how to do performance programming more or less from scratch.

      It's possible you are interviewing as technically solid but old-fashioned. Another possibility is that you are one of the many excellent coders of all ages right now who are struggling for work. We turned down a number of excellent candidates just because we didn't have enough openings.

  25. I should not have gone into CS by Gastropod_ca · · Score: 5, Interesting

    I got a degree in Computer Science from Waterloo University. I am beginning to think I wasted 5 years of my life. U of W is one of Canada's best for CS... they came in 3rd in the last ACM contest behind MIT and Shanghi.
    The degree was a lot of work. Many of my friends failed out. There was only 13% girls in my classes and most guys did not have or a girlfriend or have time for one during those five years. I had co-op work experience and had no problem finding a job at Cisco when I graduated. A year and a half later they shut down our division. Now it has almost been a year now and I still can't find work. I have skills such as Java and C++ and excellent references... but no one is hiring.
    I remember a long time ago someone from Microsoft made some comment about Open Source hurting the industry. At the time I thought it was an absurd comment. But lately I've been thinking it may be true. a few years ago if I wanted a library API for some network protocol my company would have had to purchase something. However, now there is almost always a free alternative that is of great quality... so there is less and less companies paying people to program things because there are free ones out there. I dunno.. just a thought.
    But still... if I had gotten something like a music degree.... I'd probably be equally unemployed right now.... but I'd probably be married too and maybe a little happier.

    1. Re:I should not have gone into CS by Error27 · · Score: 3, Interesting
      >>but I'd probably be married too and maybe a little happier.

      Just order a Russian bride!

      There is no problem that technology can't solve, my friend.

    2. Re:I should not have gone into CS by GigsVT · · Score: 3, Interesting

      I think you are looking for work in the wrong place. The key to the future is that open souce will eliminate "programming companies" who's sole product is code-once-sell-to-everyone. This has been called "commodity software". Open source has that covered easily in most areas, or has plans to cover it in the future.

      Where the money will be is not directly in a "technology company", but rather in consulting and in working for "non-tech" companies as a system integrator.

      My official job title is IS/IT Coordinator. I work for a manufacturing company. Said company has large needs in the computing department, including digital workflows, data warehousing, and other things. These things can't be handled by off the shelf solutions. Our market is a niche market, but a necessary one (we print the labels that go on products you buy in grocery stores).

      I think these companies are where the future is. They aren't tech companies, but they have large tech needs, needs that cannot be cost effectively filled by "turnkey solutions" or cookie-cutter software. Sure, they could farm out a lot of what we do to consultants, but having me and the rest of our small IT team saves them tons of money, and by working there and only there, we get unique insights into the company that would take years for a consultant to develop.

      Anyway, go look around, at all companies, not just ones that are overtly technical. You may find a rewarding IT job where you least expect it.

      --
      I've had enough abrasive sigs. Kittens are cute and fuzzy.
  26. Re:why to go to the dark side.... by tempest303 · · Score: 5, Interesting

    actually gates is a genius programmer...

    Uh... really? Paul Allen was always the "genius" coder. (disclosure: the company I work for is owned by PA) Everything I've ever heard about Gates' actual *code* was that he was only mediocre. That's not to say he was BAD at it, just only ok. On the other hand, he *is* a genious capitalist, or rather, he's really good at exploiting American style capitalism through admittedly brilliant but wholly fucking evil marketing tactics, and making a gazillion bucks in the process.

    his accomplishments back in the day far supercede anything ANYONE who posts to this site have accomplished.

    no. Once again, almost all the hardcore coding shit from MS was Paul Allen. And as for Bill being a better coder than *any* Slashdot poster? I'm pretty sure that's bullshit.

  27. Re:Modern programming IS a dead-end by yintercept · · Score: 4, Insightful

    I think you are right. A person with a degree in a particular field (such as medicine, geology) and knows how to code will do better in the long run than a person who just studied coding. You will then get to work on the interesting intellectual challenges in your field.

  28. Programming vs. Administration by Mr.+Neutron · · Score: 5, Interesting

    Progamming in the modern world of computing is a one-time job. Software is written once, and used many, many times. Yes, there is software revision, upgrades, etc., but the bulk of work being done is being done by the /few/, for the /many/.

    Therefore, there are only going to be a small amount of meaningful programming jobs relative to the computing industry as a whole, unless the general attitude towards software changes dramatically.

    Now, administration is a whole different story. because software tends to be written by the few for the many, there are bound to be issues that those few never thought of. Administration is an ongoing job that everyone needs.

    Personally, I think this is a big, secondary reason that so many geeks are perpetually hyped about open source software. It seems to promise that software development will cease to be a few-to-many service, and become a many-to-many service. I think there are a lot of geeks out there working in administration, frustrated with their jobs, wishing to become guru kernal hackers. They feel that if the IT world at large would simply embrace open source, tons of programming jobs would open up for companies wanting to customize and enhance software to fit their needs.

    Unfortunately, the reality is not that development is a few-to-many business because of the closed-source model. Rather, development is done the way it is because proramming is *hard*. Nitty-gritty, systems development (as opposed to Web developemnt, or writing DB front ends, or using some SDK with the hard stuff taken care of already) takes real talent, and very few have the talent necessary. Furthermore, it is many, many times more cost-effective to buy software off the shelf (be it open- or closed-source) and pay for high administrative costs than it is to custom-design software to fit an organization's exact needs.

    My advice to CS majors is to get used to the idea that you probably won't be coding linked lists and creating filesystems for a living. Learn to be a good Unix admin, how to be a DBA, how to troubleshoot buggy applications and OSes. Learn how to assist and teach non-clued end-users. 1% of CS grads are going to be programmers and software engineers. Guess what the other 99% get to do?

    --
    dinner: it's what's for beer
  29. "The dark side" by gwernol · · Score: 4, Insightful

    The fact that a phrase like "the dark side" is used, however tongue in cheek, indicates just how little some geeks get it.

    In the commercial world, software isn't developed in a vacuum. In order to build a successful business you need to understand: who are your customers? what problems do they have? what software should you build to solve those problems?

    People pay money for your software because it has value for them: it solves their problems. If enough people pay you enough money you will build a business.

    Management and marketing aren't impediments to the "good guys" doing their jobs. They are essential parts of the overall job of building a successful business. The world doesn't owe you a living, no matter how skilled you are. It pays you for doing something that is valuable.

    If your company is well run and you disagree with your management its because you aren't seeing the bigger picture. It may be cool to build technology X, but if no-one wants that and everyone wants technology Y, then you are wasting your time and skills working on X.

    Of course there are bad companies with bozo managers. But that is a function of particular people, not of the role of the manager or leader.

    --
    Sailing over the event horizon
  30. And back to the light side... by DrCode · · Score: 3, Interesting

    I worked for a manager who had been a developer. After about a year, he decided that he hated managing. So, he went out and recruited a replacement for himself, and went back into development. I'm almost certain his salary remained the same.

  31. Not always true by kaladorn · · Score: 4, Insightful

    My boss (our VP and I think CTO) is the developer of utmost Deep Magic. But of course, we're a relatively small company.

    But to take the other side of the coin up, I know of developers who made more than their managers (as one of my classmates ascended to management, I know several of the lead developers were making significantly more than he was).

    There are two or three GOOD reasons why managers make the big bucks. In theory, they are the RESPONSIBLE ones. The buck stops there. Programmers can often excuse problems as being the result of other people's work, their deadlines, etc. But a manager has no such refuge. That responsibility should be commensurately rewarded.[1]

    Also note that some highly paid programmers who make more than their management treat their management like inferiors. I've seen this. At the end of the day, some of the geek community only respect salary or other raw displays of power and authority. Sad but true.

    Lastly, good managers are worth their weight in gold and do significantly benefit a project. They coordinate people, resources, and customers. They manage customer expectations, attend to the wellbeing of their managed, and ensure that all required resources are forseen and in place when required.[1].

    So even though the comment about programmers not getting paid more than managers has exceptions, there are some good reasons for things to be as they are.

    [1] - I know very damn well that the theory often doesn't match practice. For some reason, many companies keep inept management in place, I suspect because the next management level up is equally inept. I've had precisely three fair to okay managers, 1 really great manager, and several of the nightmarishly inept variety. But why companies keep incompetent managers in positions of power despite all the damage this causes is an utterly separate issue from the reasons why managers are paid more than programmers. Valid, but different.

    --
    -- Mal: "Well they tell you: never hit a man with a closed fist. But it is, on occasion, hilarious."
    1. Re:Not always true by Chuck+Milam · · Score: 5, Insightful
      "There are two or three GOOD reasons why managers make the big bucks. In theory, they are the RESPONSIBLE ones. The buck stops there. Programmers can often excuse problems as being the result of other people's work, their deadlines, etc. But a manager has no such refuge."

      In a sufficiently fat comapny, managers have a much better refuge: Other managers. Enter the theory of "circular accountability." Each manager points to the manager to the [right|left] of [him|her]. So, the buck never really stops anywhere. If the shit really hits the fan, and someone needs to be accountable for something, they hit the "reorg" alarm, ring the bell, and quickly play management musical chairs so that each manager can say one or the other of these classic quotes:

      • "You can't blame me. I just moved into this position last month."
      • "You can't blame me. I had no knowledge of this when I was in my previous position, and I was too busy preparing to hand off to my replacement to notice the problem. Now plase go away, I have nothing to say about my previous position anymore. Check with the new guy."
  32. Embedded much different from Internet and other IT by Kagato · · Score: 3, Interesting

    It should be noted that Embedded programmer, just like Electrical Engineers, get the shaft big time. Experienced web programmers (non-Microsoft), and many IT positions (like Oracle DBA's) can grab six figure salaries. It's a shame really because I have a great deal of respect for the low level guys, who really have to have a much bigger grasp of logic than those of us working on the higher levels. There are of course exceptions, senior engineers, and managing engineers, but most shops that deal with embedded and EEs have one or two top dogs to a dozen or so poorly (relatively speaking) peons.

    I don't find out of country work a problem though. They just don't perform as well as the lazy American counter parts. The money you save in labor costs disappears as when you have a much longer bug/enhancement cycle. Most of which is caused by a culture/language gap.

    Outsource to India can work well if you have a product that you have specific bug fixes that need to be done. But new products that require a really good analyst to have face side with the business and really hammer out details. Business like working face to face with someone who knows the lingo and can instill confidence. And they are willing to pay two to three times as much for that fuzzy feeling.

  33. Programming is dead in 20 years by MrNovember · · Score: 5, Insightful
    One thing I learned as a techie in business school is to think to the future in a different way. There's a classic story about Conrail or somesuch company:

    B-school types asked Conrail: "What do you do?"

    Conrail answered: "We run a train system."

    The "correct" answer really was "We provide a service to move goods from one location to another." They doomed themselves by competing with train systems when they were competing with trucks and air freight as well.

    What business are you in? Is it "programming", is it "collecting and codifying business rules", I don't know what the answer is but I'm pretty sure the bulk of the business of "conversion of business ideas into source code" is going overseas.

    It's one of those "seeing the forest for the trees" problems. My point is that next year you'll have a job, the year after that you will, probably for the next 10 years you will.

    But the Indians and Chinese are getting better and better at outsourced work. There's a huge information/cultural/communication gap now but don't think that will stand in the way 20 years from now.

    "Programming" as a job is as dead as being a cobbler (that's a shoemaker for the verbally challenged).

    On the other hand, there are a lot of idiots in business-land with a lack of analytic skills. Transitivity is where Dracula comes from to most pointy-heads. There are jobs utilizing the same analytic and logical skills -- your business is not "programming", it's "analysis" or "rule-based business structuring."

    Change now or become a cobbler.

  34. Why I am burned out. by Fastball · · Score: 3, Interesting
    I am not coding for the money ($42K last year) or the prestige (at a state government agency), and I am severely burned out. But not because programming is a dead end job.

    Hell, I love to hack...when I get home. My job has become more a place where they issue paychecks rather than the place where I code. Why?

    Because of everything else unrelated to coding that I have to fend off: meetings, fickle graphic designers, shrinkwrap software that doesn't work and I end up "supporting," a boss that buys servers by the bushel because we have to use or lose our budget.

    In short, I already am a manager.

    Besides, at age 29, I cannot see myself with a family (I want one) if I'm spending 8-12 hours in front of a computer by day and a couple more by night to hone my skills. I don't instant message, own or carry a cell phone or pager, or pick up a phone without screening it via answering machine, and I still don't have a life to speak of. I've forgotten what a tit feels like!

    Actually, I take that back. I'm growing my own.

    I love programming. But it is a solitary discipline in its purest form. Unfortunately, there's too many people throwing their hats into the design process. And then you start coding from specs, and the specs change.

    So lately, I'm neither programmer or social butterfly. I could code righteously, but only if there's nothing to code. It's a Catch-22. Yossarian lives!

  35. Re:Dead end != unemployment by passion · · Score: 3, Insightful

    the smart &/or talented programmers don't get stuck with one language. In this industry - that's the dead-endedness.

    Imagine, if you were a Zeppelin pilot... well, you wouldn't have much work unless you learned a similar skill, perhaps you could transition to becoming an airline pilot.

    Getting stuck in a rut is never good - continuous learning is. The trick is being able to figure out quickly which technologies will tank quickly and hard before you climb on, and which ones will stick around and thrive.

    --
    - passion
  36. We need organizations fighting for our profession by nabucco · · Score: 5, Insightful
    The article begins "Become a dentist, CPA, or lawyer and odds are you'll be practicing that profession on a more or less daily basis till the day you retire."

    Yes, and dentist's have the ADA, accountants have the AICPA, and lawyer's have the ABA. What professional association of the magnitude of the ABA or AMA represents modern IT engineers? The answer is, there is no professional association with any weight behind it that represents engineers.

    We do have a well-financed association or lobbying group financed by the employers of the IT profession (Microsoft, IBM etc.) called the ITAA, which has been making war on our profession for years. Their sole purpose is to flood the IT labor market in order to drive up IT unemployment and drive down wages. They also despise worker independence which is why they love H1-B restrictions (forcing H1-Bs to stick with rotten companies during green card applications) and support section 1706 in the tax code (which forces independent consultants into body shops).

    The first high-rated post said "we can all become managers!" Um, no, we can not all become managers, most of the IT departments I've worked at have had anywhere from 10-30 people under a manager, so when one of them goes on to be a manager, what becomes of everyone else. Also, good programmers don't necessarily mean good managers, and mediocre programmers can be good managers. I could go on, but the article is true that 24/7 oncall for years on end, constantly working weekends and 60 hour weeks can lead to burnout, and that many companies don't like hiring people over a certain age.

    From a personal standpoint, I believe the failure of engineers to form an association that can counter the ITAA's war on our profession in Washington, as well as the failure to form consulting companies which are geared more towards worker-ownership and worker-control (although there are some, like RMPCP) is due to the fact that many of the people in this profession are the stereotypical socially retarted dorks, who are unable to socialize normally with other human beings, and who place their entire self-worth in the idea that they are the smartest programming super-genius whose skills are better than everyone else, who works harder than anyone else and so forth, so why would he have to have an association like the ABA or AMA with other engineers like every other god-damn profession does? Believe me, doctors are not stupid, cutting someone open and operating on their beating heart is a lot more complicated than opening up a computer and adding more RAM to it. They're not stupid, many of them are very smart actually, and we should follow their example and form a professional association.

    For my preference, I like the Programmer's Guild, if you don't like them you can form your own or join a different one, although I'd hope if there were several associations they'd work together in fighting the ITAA's attempts to steal our intellectual property and drive us out of work in Washington. There are engineers working on this and have been for years, but our numbers are small and we need more engineers to just cursorily educate themselves about these things, and then spread the word and educate others about these things, just a few more people on board and it will reach critical mass and we can get the word out more. To me, it's not just about fighting for my profession, it's a principle thing, I'm sick of being kicked around by Microsoft (and IBM, Oracle etc.) via their ITAA yap dog, and I'm glad that I'm actually doing something about it.

    My web page that deals with all of this is the Oncall Guild web page. We're not a group that seeks paying membership, anyone can be a member, just educate yourself about this, spread the word and join organizations like the Programmer's Guild or similar good organizations to do something about it. Some of the older engineering organizations are discussed on the web page, both the problems (corporate-financed to the point that they have killed campaigns that oppose the ITAA with threats, too academically focused, created decades ago and not focused on the modern IT profession and so forth) and good things (surveys about salary and other matters, allowing engineers to network with each other).

  37. Re:why to go to the dark side.... by prizog · · Score: 3, Informative

    I think you missed a few.

  38. IEEE problems by nabucco · · Score: 5, Informative

    I agree that IEEE has some good points, especially in terms of discussion of technical issues. It also has some very glaring bad points with regards to professional issues other than increasing technical knowledge. Although a reform effort in IEEE and IEEE-USA would be helpful, reforming this century-old association is an enormous task, and associations like the Programmer's Guild can do a lot more in the meantime while that reform effort is underway.

    Norm Matloff pinpoints the problem with IEEE so well in his excellent research paper "Debunking the Myth of a Software Labor Shortage" that I'll just excerpt from that:

    http://heather.cs.ucdavis.edu/itaa.real.html#tth _s Ec2.5.1

    In 1998, the engineering professional organization IEEE-USA (Institute of Electrical and Electronic Engineers-USA) had lobbied Congress strongly against the H-1B quota increase which was proposed that year. (It had been a major critic of the H-1B program in the past as well.) As an organization of over 200,000 members nationwide, it was a force to be reckoned with.

    However, as a result, IEEE-USA then came under enormous pressure from corporate and academic interests in the parent organization IEEE to moderate its position. IEEE-USA then hired Paul Donnelly as a consultant, whose job was ``to help wean the organization from its outright opposition to immigration.'' (The New Republic, June 19, 2000.) Donnelly is the former staffer with the Congressional Commission on Immigration Reform described in Section 2.3.4.

    Around the same time, IEEE-USA greatly toned down its Web site. It removed its ``Misfortune 500'' file, a compendium of 500 engineers, mainly older, who were having trouble finding engineering work in spite of the alleged high-tech boom. It also removed from the site its report on a 1998 Harris Poll which had shown that 82% of Americans opposed the H-1B increase.

    Donnelly convinced IEEE-USA to support his proposal - similar to one formulated by Congressional Commission on Immigration Reform as mentioned above - under which industry could bring in foreign engineers and programmers on an expedited basis, giving them ``instant green cards'' and bypassing the H-1B stage. This new stance on IEEE-USA's part was counter to its previous view that industry should hire/retrain American programmers and engineers, but apparently the organization felt that its new position would relieve the pressure brought to bear on it by the parent organization.

    However, Donnelly was up against his rival, Rick Swartz (again, see Section 2.3.4), and up against Swartz's allies representing the computer industry, who apparently wanted to retain the ``indentured servant'' nature of the H-1B workers. Those lobbyists dismissed Donnelly as ``anti-immigrant,'' in spite of his work as a consultant to immigrants and as a longtime advocate for relieving the greencard backlog for the spouses and children of immigrants. (Wired News, May 15, 2000.)

    Meanwhile, Swartz had acquired a new client, the Immigrant Support Network, an organization of H-1Bs who were hoping to get Congress to alleviate the ``indentured servitude'' problem. (See Section 2.4.)

    Donnelly still tried to get Microsoft to support the ``instant greencard'' proposal. However, Microsoft's counsel and lobbyist, Ira Rubinstein, simply stalled, saying that he may support the proposal in the future but now wished to concentrate on H-1Bs. Later Rubinstein tried other stall tactics as well. (Personal communication with Paul Donnelly, June 17, 2000.)

    Personally I do not support the Donnelly proposal, because although it would fix the problem of H-1B ``indentured servitude,'' a worthy goal, it would not address the problems of age discrimination and so on which are being fueled by the influx of foreign programmers. Nevertheless, the industry's continuing rejection of the Donnelly proposal, which would bring in the workers they say are needed and would reduce paperwork and trouble for the employers, shows that they do indeed wish to retain the indentured-servant nature of the H-1B program. And the personal attacks on Donnelly are uncalled for.

  39. Uhh.. by Etriaph · · Score: 5, Insightful

    Every job has a burnout rate. I would wager that 80% of the people in North America do their job because they can stand it and they need the money. 15% do it because they love it, and 5% don't need to because they're financially independant. 80% of the population looks forwards to Friday. That's 80% of about 280 million people (I'm discounting teenagers and youngins). Programming doesn't burn you out, your job does.

    --
    "It's here, but no one wants it." - The Sugar Speaker
  40. Technology *does* change "too fast" by Tablizer · · Score: 3, Insightful

    (* It can be difficult to keep up with quickly changing technology, but it can also be exciting. *)

    I like learning new things when I see *value* in them. However, it seems like that I.T. is becoming more like the clothing fashion industry: it makes more money when styles change because people don't buy new clothes as often if styles don't change. Thus, there is a built-in incentive to hype "new things" just for the sake of change.

    Such change is often not evolution upward, but sideways change just because it is different.

    Java sucks eggs and XML is warmed-over static LISP. The "newer" guys suck up all the BS about these because they don't know better. Those of us who have seen the same things get repackaged and re-combined under a different name are a bit frustrated with pointless change.

    True "eureka!" technologies only come about once a decade. The rest is just trade-rag play and marketing gimmicks. PHB's are almost as gullible as the newbies.

    However, those of us who express such skepticism are often looked down upon as "out of touch". Thus, the oldbees are forced to go with the flow and *pretend*. If I was one who liked pretending, then I would be a manager instead of programmer.

    More about the self-fulfilling fad-tred-mill at:

    http://geocities.com/tablizer/itpot.htm

    1. Re:Technology *does* change "too fast" by Aapje · · Score: 3

      I really wouldn't care if Java is marginally worse than your favorite obscure language or that XML is warmed over LISP (although you've probably used neither and this is pure hearsay).

      I do care about the large library of Java code that is available and runs on Windows, Macs, Linux and Solaris. I do care about almost non-existent leaks, good exception support and all the other niceties. I do care about the help that I can get if I'm stuck with a problem. I do care about the great number of tools that are available for XML-processing. I do care about the fact that XML has been introduced at the right moment and has made everybody rally behind it. I do care that people are starting to develop industry-wide datamodels based on XML (www.hr-xml.org).

      I can't get these things with your old, 'superior' technology. I agree that new technologies are usually overhyped and often misused, but a good programmer can seperate the hype from the substance. Your simple condemnation of 'new' things shows that you are indeed out of touch. Why? Because you are unwilling to learn. Smart programmers always jump on promising new technologies to test them out.

      --

      The Drowned and the Saved - Primo Levi
    2. Re:Technology *does* change "too fast" by Tablizer · · Score: 3, Insightful

      (* But if you have a bit of experience you should be able to easily sort out the crap from the real thing. *)

      Yes, but a programmer usually has little choice in such matters. A PHB will use a Hype-O-Meter to select.

      (* Furthermore, as most things are just rehashing of old ideas, you should have little trouble picking up the new technologies *)

      It is still time-consuming and project-slowing to learn the specific details and irrational bugs of each Great New Thing. It frankly becomes a somewhat boring chore after a while. I am thinking of creating my own database of commands that translate across one to another. I have probably seen 15 different ways to do a Contains (string) function/method/tag in my career. I can't pretend like I am thrilled to see #16.

      I am starting to cross-mix them all. Information overload?

      I can't act like the wide-eyed newbies who think XML is gonna solve world hunger, even if it is relatively easy to learn. IOW, I can learn it fine, but I cannot *pretend* to be the dupe-head that the newbie is.

      "Dammit, Jim, I am a programmer, not an actor."

      (* If you are consistently building systems in half the time and half the cost than others, then you should have no problems getting work... *)

      No, because the next group that hires you likely don't know your work. References are nearly useless due to the buddy buddy system. I suppose it may work for contracting where the agency keeps track, but frankly I prefer longer term stuff because contractors are usually called in to clean up the messes made by dumb newbies, and I don't want to play Emergency Pasta Surgery any more.

      Also, newbies actually tend to be relatively fast at creating new systems because they are full of blind, hyper fire. Their virgin fingers can copy-n-paste pretty quickly. Their main fault is the lack of longer-term maintanability of the results. However, they usually don't get penalized for such hit-and-run otrocities. The later-coming complainer is blamed.

      IOW, the industry rewards the *appearence* of enthusiasm and the ability to return short-term results.

      Most humans are superficial idiots who chase after bright shiney red things like a Chimp in a suit.

      Merit Shmerit.

  41. You're right. by nobodyman · · Score: 3, Insightful


    I pursued my degree in computer science because I wanted to learn. If you went into this field for other reasons... well, maybe you shouldn't have.

  42. Re:We need organizations fighting for our professi by JohnsonWax · · Score: 3, Insightful

    Ok, it's quite clear that you are not an engineer, or were done a great disservice from your university.

    Just like the professions you list, Engineers have these organizations. There are many of them just as there are many Engineering fields. ASME, ASCE, IEEE, ACM, AICHE, and so on. 'Professional Engineer' is a formal title granted by most states, Canada, UK, not unlike Attorney at Law, Physician, Registered Nurse, Certified Public Accountant.

    States are now beginning to recognize 'Professional Software Engineer' as a formal title. Texas was the first. New Jersey is considering doing the same.

    http://www.chipcenter.com/columns/COL_SLO_200007 05 . tml

    The problem is that you have the issue totally wrong. None of these organizations or structures are created to protect jobs. Nobody gives a shit whether you keep your job or not. These groups exist (as do the AMA, ABA, etc.) to protect the integrity of the profession. If you feel these H1B workers are undermining the integrity of this profession, or are causing a risk to the public at large, that's a excellent reason to protect the profession - to ensure that those who practice are of high caliber and bear the responsibility that comes with the job. And who oversees the licensing of engineers, works with the state labor boards, designs the exams? ASME, ASCE, IEEE, ACM, AICHE, and so on.

    Don't be too eager for this to happen. All Professional Engineers (PEs) need to graduate from an accredited program (most CS programs are not accredited) pass an exam called the Fundamentals of Engineering, work for a minimum of 4 years under a Professional Engineer and earn 5 letters of recommendation to the state labor board from Professional Engineers, and take another exam called the Principles and Practices of Engineering.

    As a Professional Engineer, you will be solely qualified to perform specific job tasks - such as seal design plans, testify as an expert witness, and so on. Nobody can encroach on your job. You can also be sued for malpractice and be held criminally liable for work that fails to adhere to federal, state, and local standards. And you get to do this for every state that you practice in.

    The problem that programmers are facing stems from the fact that as a group, they are unwilling to establish standards for practice. There are no standards as to what constitutes good software or bad software. There are no standards for testing. No standards for interface or for communication. No standards for what constitutes a proper education to practice.

    Engineers as a group have done this. Without it, there is no case to be made that some 14 year old from Thailand isn't as fully qualified to as a 50 year old Ph.D. with 25 years of experience at writing software.

    Just to be clear - I'm not an engineer. I'm a mathematician and physicist. I can't be an engineer. I can't pretend to be an engineer. But I've been a programmer and as far as anyone is concerned, I'm every bit as qualified as you to be one. After all, I don't have to take responsibility for my work either.

  43. Re:XML is LISP? by alispguru · · Score: 3, Informative

    Go read this paper by Philip Wadler. Particularly look at pages 6 and 8.

    For the short form, take a look at my .sig below.

    --

    To a Lisp hacker, XML is S-expressions in drag.