Slashdot Mirror


"Logan's Run" Syndrome In Programming

Ian Lamont writes "InfoWorld has an interesting analysis of the reasons behind the relative dearth of programmers over the age of 40. While some people may assume that the recession has provided a handy cover for age discrimination, a closer look suggests that it's the nature of IT itself to push its elderly workers out, in what the article describes as a 'Logan's Run'-like marketplace. A bunch of factors are listed as reasons, including management's misunderstanding of the ways in which developers work: 'Any developer can tell you that not all C or PHP or Java programmers are created equal; some are vastly more productive or creative. However, unless or until there is a way to explicitly demonstrate the productivity differential between a good programmer and a mediocre one, inexperienced or nontechnical hiring managers tend to look at resumes with an eye for youth, under the "more bang for the buck" theory. Cheaper young 'uns will work longer hours and produce more code. The very concept of viewing experience as an asset for raising productivity is a non-factor — much to the detriment of the developer workplace.'"

599 comments

  1. "Elderly"?!?!? by Anonymous Coward · · Score: 0

    Elderly?!?!? I'm 41, you insensitive clod!

    1. Re:"Elderly"?!?!? by couchslug · · Score: 4, Funny

      "Elderly?!?!? I'm 41, you insensitive clod!"

      Now get out of that igloo and back on the ice, Gramps. Polar bears gotta eat too.

      --
      "This post is an artistic work of fiction and falsehood. Only a fool would take anything posted here as fact."
    2. Re:"Elderly"?!?!? by Moryath · · Score: 2, Insightful

      While some people may assume that the recession has provided a handy cover for age discrimination, a closer look suggests that it's the nature of IT itself to push its elderly workers out... inexperienced or nontechnical hiring managers tend to look at resumes with an eye for youth, under the "more bang for the buck" theory. Cheaper young 'uns will work longer hours and produce more code.

      I think I just read the definition of age discrimination.

    3. Re:"Elderly"?!?!? by Maxo-Texas · · Score: 1

      HP is very specifically engaging in age discrimination right now.

      In part because 20 years ago they engaged in age discrimination and so there is a huge block of people the same age headed towards retirement at the same time.

      The way they are doing it is by only hiring people who have graduated in the last few years (which is 99% under 28).

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    4. Re:"Elderly"?!?!? by s73v3r · · Score: 1

      I'm doing my part to combat this. I'm one of those "cheaper young 'uns", and I typically don't stay past 5:30, unless its really, really needed.

    5. Re:"Elderly"?!?!? by Darinbob · · Score: 1

      I don't discriminate, I just don't like certain classes of people.

    6. Re:"Elderly"?!?!? by Cylix · · Score: 1

      Carousel... carousel....

      I'm sure you've seen the vacation advertisement in your inbox.

      It might have been pushed to your spam folder.

      The whole free vacation wording nearly ensures no one ever witnesses the evite.

      Just make sure you write a review on your experience ;)

      --
      "You should always go to other people's funerals; otherwise, they won't come to yours." -- Yogi Berra
  2. Obivous Answer by cabjf · · Score: 4, Insightful

    Eventually people do tend to get promoted beyond programming positions.

    1. Re:Obivous Answer by HeckRuler · · Score: 3, Funny

      Traitors...
      Unless you consider being the archetect to be beyond programming. I assumed you meant transforming perfectly good human beings into pointy haired bosses.

    2. Re:Obivous Answer by Idbar · · Score: 1

      What about motivation? People tend to write more lines of code if they are motivated. I've written most of my lines of code driven by motivation of their usefulness rather than my age.

      Although, at my age, I rather write more lines of code that do stuff for me quicker. Maybe I've become lazy AND old.

    3. Re:Obivous Answer by Opportunist · · Score: 1

      I was about to say that.

      I see it amongst my peers. Many started out as programmers and are now "elevated" beyond that "grunt work" of creating code. They move towards management positions where they are no longer considered programmers.

      I tried. I am no manager. Either let me code or send me to the carousel.

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    4. Re:Obivous Answer by infinite9 · · Score: 1

      Eventually people do tend to get promoted beyond programming positions.

      And the other 90% that don't get promoted because those spots were filled by the 10%?

      I think the real reason is simple. People older than me (almost 40) are likely to be mainframe programmers. Back then, there weren't a lot of computers. So there weren't a lot of programmers. The office where I work now is filled with people around 40yo doing c++/unix. Come back in about 10 or 20 years, and you'll see a lot of older programmers.

      --
      Disconnect your television. Do your own research. Draw your own conclusions. They're probably lying. Don't be a sheep.
    5. Re:Obivous Answer by rock_climbing_guy · · Score: 1

      Give us your tired, your weak, your huddled masses, yearning to be unemployed.

      Normally I don't reply to .sigs. However, in case you don't know, you might look up what the minimum wage is in Mexico some time.

      --
      Wh47 d1d j00 541, 31337 15n't t3h r0xor5 ne m0r3???
    6. Re:Obivous Answer by slick7 · · Score: 4, Funny

      Unless you consider being the archetect to be beyond programming.
      At least I am old enough to spell "architect"

      --
      The mind conceives, the body achieves, the spirit manifests.
    7. Re:Obivous Answer by Rogerborg · · Score: 3, Insightful

      Why are we even considering that "more lines of code" is a good thing? It's more bugs. I'd rather write half as much code, spend half as much time debugging it, and go home. I fear enthusiastic younglings who thrash out a thousand lines in a caffeine fuelled late night Code Rage, then spend the next two days thrashing out yet more code to fix their mistakes - or more usually, press on to screwing up the next new feature, and leave us old guys to clean up after them.

      --
      If you were blocking sigs, you wouldn't have to read this.
    8. Re:Obivous Answer by Anonymous Coward · · Score: 0

      I'll take "Stereotypical Situattions that Never Really Happen Like That" for $1000, Alex.

    9. Re:Obivous Answer by Bovarchist · · Score: 1

      Or they renew on Carousel.

      --
      Hell is other people's code.
    10. Re:Obivous Answer by parla · · Score: 2, Informative

      I'd consider getting a managing position as being demoted.

    11. Re:Obivous Answer by starfishsystems · · Score: 5, Insightful

      "Beyond" programming?

      When I look around, the most limiting factor I see in any enterprise computing environment is the quality of software in use. Multiple teams of people and multiple layers of management are required just to keep it working. Any upgrade plan sends ripples of alarm racing back and forth. And why is there such a status quo of vast inefficiency? Because software is as complex and flawed a contraption as inexperienced programmers can make it.

      It takes an extraordinary person, one having both breadth and depth of experience as well as innate clarity of thought, to design even a moderately large system that's simple and sufficient, modular and extensible. Such people aren't to be found in anyone's junior staff. They don't have the experience. And their talents are lost if they should move into management or some other career.

      It's not a question of "beyond" where programming is concerned. Unlike any other field, the medium in which we work imposes no ceiling on what we can do with it, Gödel incompleteness notwithstanding. There is no "beyond".

      This is such an elementary insight. Since the field itself is not a constraint, what we can achieve is constrained by two factors: our own competence in the field, and time. Given two people of the same natural ability, the one with more experience will be more competent than the one with less experience. That's because, in effect, the experienced one has already put in the time.

      Of course, inexperienced people might not know this.

      --
      Parity: What to do when the weekend comes.
    12. Re:Obivous Answer by lewiscr · · Score: 1

      What? I've done that many times. That's when I learned that 60+ hour workweeks and coding till 4am is counter productive.

    13. Re:Obivous Answer by Angst+Badger · · Score: 5, Insightful

      Eventually people do tend to get promoted beyond programming positions.

      Sometimes, though it's obviously a minority, or managers would soon outnumber their subordinates. I've turned down lots of management positions. The narcissism of non-technical managers is such that they think everyone wants to be like them, so they are quite sincere in their attempts to reward good programmers with management positions. The problem is that there is next to no overlap in the skillsets, and most often, what you get is a crappy manager in exchange for a good programmer. There are exceptions, but they are definitely the exceptions, not the rule. Some will accept the promotion with the idea that they'll run things better, but then they discover that the cluelessness of the non-technical manager they are replacing wasn't all or even most of the problem: there's the cluelessness of the next level of management behind it.

      As it happens, I actually can do a decent job of managing people. The problem is that I'd rather flip burgers. Consequently, I've stuck to programming and kept my skills updated, but at 39, I'm looking at the reality of a career change in the mid-term future. I'm not terribly worried about it -- I'll have the kid through college in four more years, and after that, I can afford to live on a much, much smaller paycheck.

      Should it be that way? No, of course not. But absent some kind of organized labor movement -- which programmers are notoriously, irrationally averse to -- it's not going to change, as the people making the hiring and firing decisions are getting by just fine with the current system. There is then little choice but to adapt, or at least emigrate.

      --
      Proud member of the Weirdo-American community.
    14. Re:Obivous Answer by Anonymous Coward · · Score: 0

      I know, right? Everyone knows that the younger programmer spends WAY too much time on social networking web sites and twitter to actually write thousands of lines of code.

    15. Re:Obivous Answer by Anonymous Coward · · Score: 3, Insightful

      Eventually people do tend to get promoted beyond programming positions.

      And the other 90% that don't get promoted because those spots were filled by the 10%?

      Agreed. That's always been the case.

      I think the real reason is simple. People older than me (almost 40) are likely to be mainframe programmers. Back then, there weren't a lot of computers. So there weren't a lot of programmers. The office where I work now is filled with people around 40yo doing c++/unix. Come back in about 10 or 20 years, and you'll see a lot of older programmers.

      Dude, I couldn't disagree more.

      C++ was taking hold as a mainstream language in the early 90s. Borland C++ came out in 1988 - I believe. When C++ came out and it was making a BIG splash I was in my early 20s. At the beginning of my development career, I was strictly C/C++ on PCs,Servers, and workstations. Back then, just knowing a language was enough, meaning a job description was "2-5 years C++ experience. AT&T Unix a plus" - I really miss those days!

      In my say we made fun of the mainframe programmers as being old fogies.

      Lastly, I'd like to point out, I know a few mainframe programmers and whenever they've been laid off, they got a job within a year - even when they're over 40. And here's the funny thing, the latest hardware technology is being developed for the mainframe. That wasn't the case when I started out. IBM develops a COBOL compiler and whatnot for the mainframe and on their way.

      COBOL the language for the latest hardware.

    16. Re:Obivous Answer by Anonymous Coward · · Score: 2, Insightful

      Why is it that a "promotion" in the programming field is always to management or something beyond programming?

      You don't see surgeons hoping to become hospital administrators, or research scientist hoping to become university
      administrators...

      I have never understood this paradigm - reward for technical prowess shouldn't be to remove that item from the technical realm...

    17. Re:Obivous Answer by Darth+Sdlavrot · · Score: 1

      Eventually people do tend to get promoted beyond programming positions.

      I think the real reason is simple. People older than me (almost 40) are likely to be mainframe programmers.

      Well, I'm a good bit older than you and I have never programmed mainframes.

      I like writing, so I have passed on becoming a PHB, but many of my friends and peers have gone on to be PHBs, Architects, CTOs, started their own companies, or changed careers.

      I've written software for Apple ][s, DOS, Unix/Linux, OS/2, Windows, but mainly Unix/Linux for the last 20+ years.

    18. Re:Obivous Answer by denobug · · Score: 3, Interesting

      The thoughts that everyone old folks in /. were once the young 'uns scares the crap out of me.

      Jokes aside, we were all young, inexperience programmers at some point of time in our life, unfortunately. Somebody more experienced have shown me the ropes before I got better (besides just ME thinking that I am good). Just hope I didn't cause too much pain for other "more experienced" co-worker when I was younger.

      Conclusion: Young /.er be nice to the older co-workers!

    19. Re:Obivous Answer by mattack2 · · Score: 3, Funny

      At least I am old enough to spell "architect"

      At least I'm aware of how to use "blockquote", and to put a period at the end of my sentence.

      (BTW, I'm perfectly fine with the spelling attack too!)

    20. Re:Obivous Answer by SQLGuru · · Score: 1

      Where is my generations version of COBOL Y2K jobs? We need some sort of archaic technology that only we understand so that we can be hired back at exorbitant salary multipliers! Too bad I'll have to wait until 2038 for that (http://en.wikipedia.org/wiki/Year_2038_problem).

    21. Re:Obivous Answer by Anonymous Coward · · Score: 0

      For whatever it's worth, I've made it to 49 without having to quit programming.

    22. Re:Obivous Answer by fahrbot-bot · · Score: 4, Interesting

      Consequently, I've stuck to programming and kept my skills updated, but at 39, I'm looking at the reality of a career change in the mid-term future.

      I'm not sure a career change is a future reality, unless that's what you desire. I'm 47 and still highly sought by the various teams where I work. I have a broad background as an application/system programmer *and* system administrator (Unix and Windows) which allows me to develop solutions and, possibly more importantly, debug issues that others with narrower backgrounds simply cannot do. In other words, I get the hard problems - which have to be solved.

      --
      It must have been something you assimilated. . . .
    23. Re:Obivous Answer by jayme0227 · · Score: 3, Funny

      Everyone knows that all of the programmers over 40 became internet millionaires. That's why they aren't programming anymore. At least I think that's what the brochure said.

      --
      But then I realized the cable was blue, so I only gave it one star. I hate blue.
    24. Re:Obivous Answer by lowrydr310 · · Score: 4, Funny

      Lines of code? I only ever write one per program. No carriage returns for me, thank you.

    25. Re:Obivous Answer by timeOday · · Score: 1

      The problem is not that "anybody can program any system," because as you said that's not true. The problem is the gatekeepers of salary and status simply cannot tell the difference between those who can and those who cannot. Thus there is not much career progression in programming.

    26. Re:Obivous Answer by Darth+Sdlavrot · · Score: 1

      FYI, those Y2K jobs weren't only in COBOL.

      Presuming that I live that long, in 2038 I'll be 78. I hope I won't need to work by then and will be spending all my time riding snow board in the winter and my mountain bike in the summer.

      I used to think that there would still be 32-bit computers in use by 2038, and I'm sure there will be many; but I predict they'll be vastly in the minority.

    27. Re:Obivous Answer by TheRaven64 · · Score: 3, Insightful

      A good programmer who doesn't completely lack people skills can make several less-experienced programmers a lot more efficient by doing troubleshooting and design, rather than grunt work. A competent researcher does the same, spending more time supervising PhD students and research assistants than doing their own research.

      --
      I am TheRaven on Soylent News
    28. Re:Obivous Answer by Anonymous Coward · · Score: 0

      Yes, right into the giant landfill of humanity known as middle management

    29. Re:Obivous Answer by Late+Adopter · · Score: 4, Insightful

      It takes an extraordinary person, one having both breadth and depth of experience as well as innate clarity of thought, to design even a moderately large system that's simple and sufficient, modular and extensible. Such people aren't to be found in anyone's junior staff. They don't have the experience.

      Agreed in entirety! But design and architecture are one of the options I think of when I hear "beyond programming". I don't want the smart people languishing as code monkeys forever, their insights are lost there to all but themselves.

    30. Re:Obivous Answer by tompaulco · · Score: 1

      Where is my generations version of COBOL Y2K jobs?
      Well, a lot of that was hype anyway (but a lot of it wasn't, miserably). Perhaps you can get some hype going around the Mayan's Y2012 problem and offer to fix it.

      --
      If you are not allowed to question your government then the government has answered your question.
    31. Re:Obivous Answer by FrozenGeek · · Score: 1

      ... But absent some kind of organized labor movement -- which programmers are notoriously, irrationally averse to -- it's not going to change, as the people making the hiring and firing decisions are getting by just fine with the current system. There is then little choice but to adapt, or at least emigrate.

      At least here in North America, our general aversion to unions is entirely rational. Unions here do not foster creativity - they foster group think. Did you ever want to work a couple extra hours because you were really into what you were doing? Try doing that in a union shop - you'll have a very unhappy experience. I've had unionized jobs (albeit not programming jobs). I cannot imagine a unionized programming job being anywhere near as enjoyable as a non-union programming job. Unions suck.

      --
      linquendum tondere
    32. Re:Obivous Answer by Waffle+Iron · · Score: 1

      Indeed, it's not all that uncommon for a senior engineer to have a higher job grade and salary than his boss. It's happened to me on occasion.

    33. Re:Obivous Answer by bmpc · · Score: 2, Insightful

      "I'd rather write half as much code, spend half as much time debugging it, and go home. "

      Thats why I like Test Driven Development: when I'm writing unit cases, I'm doing test case design AND I'm coding. Then I also get to write the code that passes the tests. So I end up enjoying the testing part of the work a little more.

    34. Re:Obivous Answer by SQLGuru · · Score: 2, Insightful

      Actually, it wasn't hype. It was just that the important code was fixed well in advance of the cut-off date (believe it or not, an I/T project that met the timeline). I know of several Y2K issues that were fixed at two different companies (I changed jobs in August of 1999). The hype lead to focus which lead to the event being a non-issue. Same went for several other over-hyped events (swine flu, anyone?); raised awareness turns catastrophe into non-event.

    35. Re:Obivous Answer by JWW · · Score: 4, Insightful

      You know, regarding your carousel comment. Its kind of ironic that the referencing of Logan's Run as a corollary explanation for why there are so few older programmers, is a reference that younger programmers wouldn't know.

    36. Re:Obivous Answer by leamanc · · Score: 1

      If only Slashdot could mod you higher than +5. This is the obvious answer. I mean, who wants to be doing the exact same thing they were doing at 22 years old when they are 40? Now, you might want to use your years of experience to manage a group that does the same thing...

      --
      :q!
    37. Re:Obivous Answer by Marxist+Hacker+42 · · Score: 1

      At which point the PEBCAK destroys your code anyway, because your unit test didn't handle unexpected idiocy.

      --
      SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
    38. Re:Obivous Answer by Marxist+Hacker+42 · · Score: 1

      Yeah, it doesn't rerun 20 times a week on Syfy channel now that they've gone to attempting to woo women....

      --
      SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
    39. Re:Obivous Answer by WinterSolstice · · Score: 1

      Gotta love it :)

      I find this to be dead on, though. Hardly anyone puts up with the BS that is IT past 40. Heck, most people start planning their retirement (defined as "any work not related to IT") in the first 5 years.

      I know I have - and I've only spent a bit over 15 years doing this pro, and I'm almost ready to get the heck out for good.

      --
      An operating system should be like a light switch... simple, effective, easy to use, and designed for everyone.
    40. Re:Obivous Answer by Anonymous Coward · · Score: 0

      much, much smaller paycheck

      And there is the real issue. The question seems to be the perceived value of the work in a corporation. Should the best cleaner or a maker of a burger in the world get much more pay than an average CEO? Should the best secretary in the company get more pay than an average middle manager? Based on the customer derived value those generally lower paid persons can produce by the work they do or can lose by the not acting according to the situation, the answer should be definitely yes. A corporate hierarchy no longer reflect the actual value of an employee to a company, as the products companies produce become increasingly sophisticated, the amount of services associated with the products increases and customer valuations of these products become increasingly sensitive to details, that is, the products become decreasingly fungible from the customer perspective in the market of apparently similar products.

    41. Re:Obivous Answer by DamonHD · · Score: 1

      If they wish to be. Some of us, even at the ripe old age of 42, want to stay closer to the technology...

      Rgds

      Damon

      --
      http://m.earth.org.uk/
    42. Re:Obivous Answer by Marxist+Hacker+42 · · Score: 1

      $4.47/day last I looked.

      But I'd point out that in Mexico, that's a living wage- one that you can survive on. In United States, you need 8x that just to eat.

      --
      SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
    43. Re:Obivous Answer by Marxist+Hacker+42 · · Score: 1

      COBOL the language for the latest hardware.
       
      How many smartphones run COBOL?

      --
      SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
    44. Re:Obivous Answer by Marxist+Hacker+42 · · Score: 1

      Finally- at least one outlier to give a person a decade younger some hope.

      --
      SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
    45. Re:Obivous Answer by Monolith1 · · Score: 1

      in 2038 I'll be 78. I hope I won't need to work by then and will be spending all my time riding snow board in the winter and my mountain bike in the summer

      I like your attitude. These kind of extracurricular activities for ~80yo's are bound to help fix that pesky baby boomer problem much faster.

    46. Re:Obivous Answer by Marxist+Hacker+42 · · Score: 1

      At least here in North America, our general aversion to unions is entirely rational. Unions here do not foster creativity - they foster group think.
       
      And management does the same, and uses their group think to destroy our creativity.

      --
      SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
    47. Re:Obivous Answer by mh1997 · · Score: 1

      Everyone knows that the younger programmer spends WAY too much time on social networking web sites and twitter to actually write thousands of lines of code.

      Some waste their time posting to slashdot also.

    48. Re:Obivous Answer by maxwell+demon · · Score: 4, Funny

      COBOL the language for the latest hardware.

      How many smartphones run COBOL?

      All the mainframe ones. :-)

      --
      The Tao of math: The numbers you can count are not the real numbers.
    49. Re:Obivous Answer by bmpc · · Score: 2, Insightful

      I was not saying that Unit Tests cover everything. I was just saying that doing them raises my enjoyment of testing... I still do other kinds of testing and so does the company's QA team.

    50. Re:Obivous Answer by HikingStick · · Score: 1

      That's one angle I was shocked did not appear in the original, although "promoted" may not be the best word choice. IT people, if they have the right soft skills (e.g., the ability to communicate at any level of the organization), often transition into key business leadership positions. Their hybrid knowledge--of IT and the business side of the company (or business administration in general)--makes them uniquely qualified for numerous positions across many industries.

      --
      I use irony whenever I can, but my shirts are still wrinkled...
    51. Re:Obivous Answer by beanball75 · · Score: 1

      At least here in North America, our general aversion to unions is entirely rational. Unions here do not foster creativity - they foster group think.

      There are creative professions that also have unions. Remember the writers strike a few years ago?

    52. Re:Obivous Answer by cerberusss · · Score: 0, Troll

      I'd consider getting a managing position as being demoted.

      Does your wife agree?

      --
      8 of 13 people found this answer helpful. Did you?
    53. Re:Obivous Answer by Anonymous Coward · · Score: 0

      "copy con program.exe" ?

    54. Re:Obivous Answer by cerberusss · · Score: 1

      Well maybe if your boss is younger. But really?

      --
      8 of 13 people found this answer helpful. Did you?
    55. Re:Obivous Answer by Daniel+Dvorkin · · Score: 1

      You don't see surgeons hoping to become hospital administrators, or research scientist hoping to become university
      administrators...

      I agree with the point of your post wholeheartedly, but I'd like to point out that you do in fact see physicians and scientists who want to be administrators -- the former are often referred to sarcastically as "MDA's." They are, almost universally, bad at their primary jobs, they know it, and they desperately want to get into a position where they can spend most of their time telling other people what to do instead of doing it themselves. In other words, they're natural-born PHB's who just barely had what it took to get through med or grad school. A little more brains, same personality type.

      --
      The correlation between ignorance of statistics and using "correlation is not causation" as an argument is close to 1.
    56. Re:Obivous Answer by Chees0rz · · Score: 1

      At least I am old enough to spell "architect"

      At least I'm aware of how to use "blockquote", and to put a period at the end of my sentence.

      (BTW, I'm perfectly fine with the spelling attack too!)

      At least I'm aware of how to use "blockquote," and to put the comma within the quotations.

      (BTW, I'm perfectly fine if you're a Brit/Canuck/Aussie)

    57. Re:Obivous Answer by ErichTheRed · · Score: 1

      At least here in North America, our general aversion to unions is entirely rational. Unions here do not foster creativity - they foster group think. Did you ever want to work a couple extra hours because you were really into what you were doing? Try doing that in a union shop - you'll have a very unhappy experience. I've had unionized jobs (albeit not programming jobs). I cannot imagine a unionized programming job being anywhere near as enjoyable as a non-union programming job. Unions suck.

      I've never understood this thinking. Unions do tend to even out the stand-out employee, but I'm thinking that that's less of a concern as I age. The whole reason why there was a huge middle class in the 50s through the 70s was the fact that people had steady jobs that paid well. People who aren't freaked out about losing their job constantly will go out and buy cars, buy houses, take vacations and all the other stuff that fuels consumer spending.

      Now we're back at the other extreme. Management has done a great job convincing the labor at all levels, skilled and unskilled, that they're your buddies. Without any protections against abuses, it becomes easy to demand extra unpaid work or toss people out when they've outlived their short-term usefulness. The adversarial split between labor and management needs to make a comeback - maybe in a less overt form, but with enough teeth to make employee demands count for something.

      Call me mediocre, but I'd rather give up the potential for being a total rock star employee for a fixed-hour work week, a contract that eliminates the salary shell game seen in corporate jobs, guaranteed raises, work rules and stability.

    58. Re:Obivous Answer by Abcd1234 · · Score: 0

      Did you ever want to work a couple extra hours because you were really into what you were doing?

      No. I stop, go home, and then return the next day and pick up where I left off.

      Honestly, why the *hell* would you *voluntarily* put in unpaid overtime just for kicks? Don't you have a life outside your career? Wouldn't you rather go home and do something for yourself, rather than wasting that time slaving for your boss?

      Frankly, this is exactly the attitude that gets you young bucks preferred over older, more experienced folk. The older guy has a life outside work, and chooses to go home at the end of the day because he or she realizes that work is work and life is life, and balance between the two is important. Meanwhile, the younger guy goes on and on about how work provides free breakfast and cots, and puts in 18 hours a day while only being paid for 8, and is convinced that they're *lucky* to have such a great job!

      Sorry, fuck that. I'd rather spend those extra hours at home working on my own projects or putting effort into other, non-programming hobbies. Unpaid overtime? You can keep it.

    59. Re:Obivous Answer by TheKidWho · · Score: 1

      I currently make 6x that and I eat just fine thank you very much.

    60. Re:Obivous Answer by Blakey+Rat · · Score: 2, Interesting

      Microsoft gets a lot of grief on this board, but this is something they certainly do right. They have like 7-8 different levels of "programmer"-- you can serve your entire career writing software and never feel like you need to switch jobs to get a raise or get your ideas heard at the company.

    61. Re:Obivous Answer by sl149q · · Score: 1

      Some physicians, some scientists, AND some programmers do plan or hope to move up into administration.

      Alternately in all of the above examples some people do not want to advance.

      The problem arises when you have someone who is competent at what they do getting promoted to a position where they are not competent (also known as the Peter Principle).

    62. Re:Obivous Answer by pnewhook · · Score: 2, Funny

      I think the real reason is simple. People older than me (almost 40) are likely to be mainframe programmers. Back then, there weren't a lot of computers.

      Yes and we only had wind up light bulbs as electricity hadn't been invented yet either.

      Give me a break. I'm over 40 and have NEVER programmed on a mainframe, nor has anyone I know. Maybe if you said people over 60 I'd agree with you.

      --
      Tesla was a genius. Edison however was a overrated hack who liked to torture puppies.
    63. Re:Obivous Answer by Anne+Thwacks · · Score: 1

      Please mod parent +2, ROTFLMAO

      --
      Sent from my ASR33 using ASCII
    64. Re:Obivous Answer by Amanitin · · Score: 1

      Unlike any other field, the medium in which we work imposes no ceiling on what we can do with it, Gödel incompleteness notwithstanding. There is no "beyond".

      Unlike any other? So you tell me the medium of science imposes ceilings? Like there is going to be a point where 'breaking news: we know EVERYTHING about the universe'?

    65. Re:Obivous Answer by Anne+Thwacks · · Score: 1

      I have made it past 60, and I am still trying to earn a living writing PHP, C, or designing hardware, or doing Unix Sysadmin. I really don't want to be an alligator wrestler at my age, but there are not many other jobs going.

      --
      Sent from my ASR33 using ASCII
    66. Re:Obivous Answer by Gilmoure · · Score: 1

      Isn't McD doing a remake?

      --
      I drank what? -- Socrates
    67. Re:Obivous Answer by Skreems · · Score: 1

      Because nothing attracts female viewers like Michael York, cardboard robot costumes, and naked 70s boobs?

      --
      Slashdot needs a "-1, Wrong" moderation option.
      The Urban Hippie
    68. Re:Obivous Answer by starfishsystems · · Score: 4, Insightful

      Thank you! I think we're in general agreement, but let's explore the implications a bit further.

      Is there any substantive dividing line between design and implementation? If there were one, then people could indeed be left languishing on the wrong side of it. But I don't see one. I think that to impose one is entirely artificial.

      If you're designing and writing specifications without thinking about implementation, you're not giving your best. If you're implementing a spec without regard for principles of design, well, that's just stupid.

      But more than that, it's often the case that the exercise of building something sheds significant light on its design. There's a lot of natural interplay between these two perspectives, in other words. When we discount that interplay we end up with development processes that don't work well at all, because they're not fully informed.

      I need to backtrack a bit here. The problem comes from applying processing concepts to software development that were evolved from the manufacturing industry. In manufacturing, you know what needs to be made; you just have to figure out how to scale up the volume of production. We don't have that situation in software. Far and away the hardest part is expressing what needs to be made, because it's unique each time. The fabrication is trivial.

      Of course there are huge varieties of class libraries and operating system features on hand to provide the nuts and bolts when developing software, but that resource doesn't touch what makes software design a cognitive challenge, and it merely shifts where the cognitive effort of implementation has to be applied. We're still fundamentally conditioned by the two factors I cited before: competence and time.

      To get back to your point, I believe we agree that value is minimized when anyone is asked to function merely as a code monkey. I'm arguing to do away with the distinction. This partitioning of the problem space is pure artifice, a residue of thinking carried over from the Industrial Revolution. I've found that the way to get the most out of people is to let them participate across the broadest range in which they're presently capable. As their capabilities grow, reward them with more involvement and more responsibility. And don't forget to pay them accordingly.

      That's how to address the problem of "languishing" that you rightly identified. But senior developers must not be taken out of the coding process. That's a huge mistake. Yes, they have to divide their attention across many areas, but that's what qualifies them as senior. If you don't expose the junior people to mature ways of thinking, you're throwing away huge opportunities for motivation, mentoring, and just plain knowledge transfer. Worst of all, you end up with a pool of junior people who are disconnected from the rest of the development organization. I see it all the time, and it's toxic.

      --
      Parity: What to do when the weekend comes.
    69. Re:Obivous Answer by Skreems · · Score: 1

      Except you get promoted MUCH faster if you jump companies every few years compared to sitting in one spot, unless you happen to hitch yourself to a particularly competent and motivated senior engineer early on. Although with the number of top people who are jumping ship from Microsoft in the past year and a half, it wouldn't be a bad time to get in and coast your way up for a while.

      --
      Slashdot needs a "-1, Wrong" moderation option.
      The Urban Hippie
    70. Re:Obivous Answer by mattack2 · · Score: 1

      At least I'm aware of how to use "blockquote," and to put the comma within the quotations.

      As a self-admitted grammar Nazi, that's one of the few rules I purposefully violate, likely because in programmer-think it doesn't make sense to put it in the quotes.

    71. Re:Obivous Answer by selven · · Score: 3, Funny

      Per program? You don't have just a single program which does everything you might need with a massive chain of ternary operators?

    72. Re:Obivous Answer by mdarksbane · · Score: 1

      I agree 100%. Every project team I have been on, I have thought to myself "We could really benefit from someone over 30 who's actually done something vaguely like this before."

      The problem is twofold:

      1) It is a field where more experience is not directly correlated with better ability. This applies to many things, but is extremely true in programming. My wife's company has many elder programmers - they are the source of her favorite quote that "you can write COBOL in any language."

      2) Partially because of this, and partially because non-programmer managers have no way of identifying good programmers to begin with, the salary structure does not reward or encourage experienced, quality programmers who stay in the discipline.

      Who knows, though. This may be a short-term artifact. Fourty-year-olds in programming now grew up on punch-cards, BASIC, and COBOL. There have been so many dramatic paradigm shifts in programming during their tenure that it would make sense for them to not have necessarily kept up - even the core rules of how to design software have largely changed. As things slow down a bit in those terms (a normal computer from twenty years ago is at least recognizable as being something similar to today) I wonder how much that will change on its own.

    73. Re:Obivous Answer by Grishnakh · · Score: 1

      At my last workplace, there was one guy who I'm guessing was around 55, and used to program MULTICS machines, and was doing Linux kernel programming.

      Unfortunately, he, along with the rest of our team, all got sacked one day because upper management at that company, which I think will be in a Freefall soon, were idiots. He did however get another job at a local defense contractor.

      So from what I've seen, it is harder when you're older, but if you're good, there are jobs for you. One key is to specialize in something that not a lot of other people can do. Everyone and his brother can write PHP or C#/.NET or whatever, but not that many people are good at (and experieced with) kernel programming.

    74. Re:Obivous Answer by Marxist+Hacker+42 · · Score: 1

      You only make $3.35/hr ($26.82 for an 8 hour workday, 6x Mexican Minimum Wage)? Does your boss realize he's hired you illegally? Do YOU realize federal minimum wage in the United States is $7.25/hr or $58/day, nearly twice as much as you're getting?

      --
      SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
    75. Re:Obivous Answer by Blakey+Rat · · Score: 1

      Why is it that a "promotion" in the programming field is always to management or something beyond programming?

      I'd say ideally it wouldn't be. Microsoft has enough different levels of "programmer" that you can serve your entire career without ever stopping what you love, or saying no to raises or promotions.

      If the company you work for doesn't do that, maybe you should try to change things.

      You don't see surgeons hoping to become hospital administrators, or research scientist hoping to become university
      administrators...

      Ah, but you *do* see teachers moving on to be principals or work at the district level. (Also, many hospital administrators are doctors, that's not so weird.)

      I have never understood this paradigm - reward for technical prowess shouldn't be to remove that item from the technical realm...

      Then work for a company with a different paradigm. Or change the paradigm at your company. None of this is set in stone, you know.

    76. Re:Obivous Answer by Grishnakh · · Score: 1

      Exactly. However, if your manager doesn't have a problem with it, it is nice if you can work some extra late hours when you're on a roll, and then take off at noon on Friday to make up for it.

    77. Re:Obivous Answer by Marxist+Hacker+42 · · Score: 1

      No, that's the point, Logan's Run is off SyFy channel due to apparent (or at least, by my DVR because I've finally found science fiction that my wife likes) reruns of Caprica 20 times a week (which is saying a lot considering they've only shown 3 episodes of that series so far- and all of the reruns are apparently the second episode).

      --
      SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
    78. Re:Obivous Answer by Anonymous Coward · · Score: 0

      If I don't have a career plan at work, I miss my yearly goals. If my career plan has me doing the same thing 5 years from now, it looks like I don't want to progress. Bottom line is, I have to make out a plan that gets me out of the coding business. If I fail to meet my forced goals, I get less change of raise/bonus/promotion type stuff.

      So basically forced turnover, not sure if it's intentional.

    79. Re:Obivous Answer by starfishsystems · · Score: 1

      I take your point, of course, but I think you're quibbling with terminology in order to make it.

      You object to the way I've characterized software as a "medium"? A medium is defined as stuff we work with. We're speaking of its properties: in other words, what's computationally possible.

      Metallurgists work with the properties of metal. Fluid mechanics is concerned with the properties of fluids. However, scientists don't work with the properties of science, because science is not a medium but a methodology.

      I agree with your core idea. Science is unbounded, to the extent that the universe is a big place with lots to teach us. Each new answer seems to raise further questions, though it doesn't necessarily follow that this process can continue indefinitely in physical science.

      A further difference is that in software development we're chiefly concerned with producing usable artifacts. That's what we've been talking about today. Sure, it's merely applied science, but its unboundedness is of a different order: creative rather than analytic.

      There are quantitative differences as well. If I build an artifact in iron alloy, say, the practical range of options available to me is rather constrained. The science of metallurgy helps me to understand those constraints, just as computer science helps me to understand what is and is not computable. But quantitatively, the range of options available to me in software development is far greater. It's my own cognitive limitations which dominate what I can do, not the medium itself.

      --
      Parity: What to do when the weekend comes.
    80. Re:Obivous Answer by Grishnakh · · Score: 1

      A good programmer who doesn't completely lack people skills can make several less-experienced programmers a lot more efficient by doing troubleshooting and design, rather than grunt work. A competent researcher does the same, spending more time supervising PhD students and research assistants than doing their own research.

      I've never known managers to do much troubleshooting and design. Usually, it's the high-level engineers that do that stuff. Sometimes, the two intersect a little, and this is frequently called "team leader": an engineer who manages a small team, but also spends a lot of time doing real work, and frequently helps out less-experience engineers when they have problems. Above this, however, it's all PHBs: managers who do zero technical work, and just talk all day and play with powerpoint charts.

      As for researchers, I've never heard of a "researcher" who doesn't actually do research, or PhD students and RA students who actually do any research. The latter help conduct research, but they certainly don't come up with the ideas, write up the theses, or whatever. The helpers just do the gruntwork: conducting experiments as instructed, taking data, etc. The analogy to this in the engineering world is the "technician", something that seems to have all but disappeared these days. In the old days, especially with more physical types of engineering than Software Engineering, engineers had several technicians who worked for them, so if they needed a special cable made, or a circuit board modified, etc., they'd give it to their technician to do, while they worked on the actual design.

    81. Re:Obivous Answer by Maxo-Texas · · Score: 1

      Half as much code would probably take 1/4 as long to debug.
      Big O time for debugging is exponential.

      This is why iterative testing is so powerful compared to testing when the code is complete.

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    82. Re:Obivous Answer by Anonymous Coward · · Score: 0

      You wont see Logans Run on SyFy, its a science fiction movie and they dont really do that anymore.

    83. Re:Obivous Answer by Roman+Coder · · Score: 3, Insightful

      While I generally agree with you, there have been times when I'm "In the Zone" coding wise, and just hate to leave something half done until the next day, because then I'll have to pick things up after a long break and try to remember all the details of what I was doing, etc.

      --
      "The future can only affect the present if there is room to write its influence off as a mistake." - Yakir Aharonov
    84. Re:Obivous Answer by azgard · · Score: 1

      I hate to pointing out the obvious, but it *is* a good thing. Of course, all the usual disclaimers apply. But if you take two different programs written by a programmer of same competence in same languages, the longer one will probably have more features. That's why we need the lines of code - we need the code to actually *do* something.

    85. Re:Obivous Answer by Grishnakh · · Score: 1

      they'd give it to their technician to do, while they worked on the actual design.

      And to add to what I was saying, in the software realm, the code IS the design. It's not just "gruntwork" that you shovel off onto someone else while you draw up block diagrams of systems.

    86. Re:Obivous Answer by azgard · · Score: 1
    87. Re:Obivous Answer by Grishnakh · · Score: 1

      If I need heart surgery, I want a skilled surgeon doing the surgery on me, not some guy who did surgery years ago and now just shuffles papers and leads meetings.

    88. Re:Obivous Answer by Anonymous Coward · · Score: 0

      $30 a day? On that, you can eat just fine... in your mom's basement.

      (I make 7x what you do and I know I don't make shit.)

    89. Re:Obivous Answer by darkwing_bmf · · Score: 3, Insightful

      Some of us can flex our time such that if we spend 2 hours extra today (for whatever reason) we can go home 2 hours earlier tomorrow.

    90. Re:Obivous Answer by metamatic · · Score: 1

      The best developer won't write any code at all, unless he really has to.

      --
      GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
    91. Re:Obivous Answer by Altus · · Score: 1

      When would they have the time between ECW, reruns of Enterprise and all those wonderful original movies like "Ice Spiders," "Rock Monster" and "Mega Quake"

      --

      "In America, first you get the sugar, then you get the power, then you get the women..." -H. Simpson

    92. Re:Obivous Answer by the_hellspawn · · Score: 0

      I would say that most programmers end up in a business situation. Most, from my experience, don't make oodles of cash and those in management do. Do the logic there. Also Programmer I, II, III is all there is and what is beyond...management. Very simple to see the steps of progression. I so feel you though, but the pay check sure and the hell don't.

      --
      "The laws of science be a harsh mistress." --Bender
    93. Re:Obivous Answer by DrCode · · Score: 1

      56 here! Still doing development in C for the EDA industry. Fortunately, I'm at a company that values experience, and I've been getting consistently high reviews.

      But the last time I looked for a job, 7 years ago, I spent 5 months searching, and the only interview I got was with my current employer. Sure, there are people in their 50's who are old farts. But there are also 30-somethings who haven't done anything new in 10 years. I've been trying to stay youthful, taking up snowboarding at 50, salsa at 53. But that doesn't do much good on a resume (unless one lies about the years).

    94. Re:Obivous Answer by elnyka · · Score: 1

      What about motivation? People tend to write more lines of code if they are motivated. I've written most of my lines of code driven by motivation of their usefulness rather than my age. Although, at my age, I rather write more lines of code that do stuff for me quicker. Maybe I've become lazy AND old.

      Motivation != efficiency (or even knowing how to program well).

      Lines of Code != good indicator of programming productivity, experience or efficiency.

      I've known a lot of motivated programmers, motivated for sure, but ones I wouldn't trust anything beyond maintaining JSP pages. Motivation by itself doesn't mean much, not unless it is accompanied by hard-earned elbow-grease and experience (or when inexperienced, at least a firm knowledge in programming principles, a sharp mind, and good intuition about complex problem solving.)

      Might be wrong, but that's what I see as a good indicator for desirable programming attributes. Not motivation alone. Certainly not rate of production of lines of code.

    95. Re:Obivous Answer by elnyka · · Score: 1

      I'd consider getting a managing position as being demoted.

      Depending on where you work. In some companies (specially the shitty ones), this is true.

      But in others, specially good companies (either engineering ones or IT ones that value technology), being a manager after being a techie is a good way to go.

      For me, I'm 41 now, programming for 15 years now, 18 if we count school work. Been a senior soft.eng for a while now. By 50 I intend to be either at an architect position, or an engineering management position (different challenge and - usually - more money). Either that or I'll "retire" by 55 to teach programming or math at a university or community college and do some part-time consulting gig on the side (less money but more enjoyable.)

      At least that's the plan.

      I love pure, raw and unabashed coding, but I don't feel that I will have the passion for doing so beyond another decade. I do some very interesting software programming work, but still. Been there, done that, what's next? Meh, working my way to promotions.

      Unless there is something like, oh, I dunno, some new, revolutionary industrial research shinny thingie that gets my programming panties all curled up again in frenzy, moving up the (engineering) management ladder (in a good tech company, that is) looks like a good deal to me.

    96. Re:Obivous Answer by Joe+Mucchiello · · Score: 1

      Fourty-year-olds in programming now grew up on punch-cards, BASIC, and COBOL.

      I did? Maybe the fifty-year old programmers did punch-cards professionally. But not us early 40s guys.

    97. Re:Obivous Answer by elnyka · · Score: 3, Interesting

      The problem is not that "anybody can program any system," because as you said that's not true. The problem is the gatekeepers of salary and status simply cannot tell the difference between those who can and those who cannot. Thus there is not much career progression in programming.

      Depends. For people that have degrees in CS and EE (specially advanced ones) and years of experience, it is very rare that they don't have a career progression in programming.

      Or, in IT Computing, career progression depends on the degree of specialization and breath of knowledge. In the Java world, for example, it pays not only to be a good Java programmer, but also

      • to have one or more specializations (.ie. web/RIA development + ejb/spring or web service development + jee architecture),
      • a good understanding of databases (not only on database theory and SQL, but on vendor specific DB infrastructure, configuration, tablespaces, rollback segments and so on.)
      • a good understanding of distributed computing
      • a good understanding of network infrastructure (because then you know that there is a shitload of things like DNS servers, caching devices and the like between your users and your app that can affect the performance and behavior of your app)
      • a good understanding of operating system configuration (because then you can detect your OS TCP timeout settings are not tuned and are thus wreaking havoc between your Apache servers and your JEE containers.)
      • ... and so on and so on...

      The thing is that, it is true that there is no career progression in programming. But that is true because programming by itself is not the only thing at play, nor the one isolated thing in which we build specialization and breath of experience.

    98. Re:Obivous Answer by Joe+Mucchiello · · Score: 1

      Exactly. However, if your manager doesn't have a problem with it, it is nice if you can work some extra late hours when you're on a roll, and then take off at noon on Friday to make up for it.

      Invariably, such cool managers get orders from above to stop letting people leave early on Friday because no one in the other departments allows it. Even when that isn't an issue, minutes before you leave Friday there will be an emergency that you just have to look at....

    99. Re:Obivous Answer by starfishsystems · · Score: 1

      Thanks for your comments. I seem to be chatting a lot on this thread, but perhaps I could make one more contribution.

      Indeed, there have been a lot of changes since I started programming in 1972, though I must say that they are essentially cosmetic ones. I've learned a lot, and I continue to learn a lot. In other words, the learning process itself is pretty much unchanged. The results of mathematics and computer science have not been overturned. I especially like to point this out because it helps to reinforce the message that there are areas of knowledge worthy of career investment. I don't necessarily mean formal computer science either, but perhaps areas which will ultimately be formalized. I always tell people to look for the underlying principles and design patterns, however they may present themselves, and master them. This is true whether you're developing software, doing systems architecture or security or operations or whatever. Watch for the deep principles.

      People who don't do this are in for a short career lifetime. I think this is what you mean by people not having kept up - but I don't think it's about technology changes so much as whether a person is stuck in surface appearances or able to see past them. For example, apart from surface appearance, XML is no different than the S-expressions that interested John McCarthy in the 1950s. It's easy to adapt to new technologies when you can anticipate most of how they're going to work from first principles. And so it's easy to keep up.

      Things are just more convenient now. That's the main difference. I've never seen an IDE that will do the thinking for me. Naïve people can produce bad designs more quickly, but fortunately, experienced people can produce good designs more quickly as well. It follows, therefore, that at every level you still need to be able to distinguish between good and bad design. Simply having fancy tools means nothing, but then, it never did.

      In that all-important sense, software design has not changed at all. Nor has the management of software designers. You still have to sift the effective people from the not-so-effective. You still have to ask "why" at every point where a design decision has been made. I can separate the competent from the incompetent in five minutes of discussion that way.

      It's true that the competent people make a smaller pile, but that's statistically inevitable. Despite the abundant frustrations which people report in this career, I think that the outlook for competent people over the long term is excellent. Merit, ultimately, is what differentiates between good outcomes and bad outcomes. Management which sees this will be more successful than management which doesn't. It may be a slow and bumpy road, but that's where we're headed.

      And finally, there is the matter of literacy. In my view, this is a huge factor. As the common level of computer literacy gradually rises, people who are not literate are just not as credible as they used to be. It's inevitable. For some time they've been drifting into easier careers. That raises the bar still further. And it's great news for the rest of us.

      --
      Parity: What to do when the weekend comes.
    100. Re:Obivous Answer by Migala77 · · Score: 1

      Agreed in entirety! But design and architecture are one of the options I think of when I hear "beyond programming". I don't want the smart people languishing as code monkeys forever, their insights are lost there to all but themselves.

      If only people could learn to read code, and learn the insight of those 'smart people' that way...

    101. Re:Obivous Answer by yupie · · Score: 1

      Why did no one notice the most obivous error ?

      --
      Sig (appended to the end of comments I post, 120 chars)
    102. Re:Obivous Answer by Patman64 · · Score: 1

      COBOL the language for the latest hardware. How many smartphones run COBOL?

      My smartphone is a UNIVAC you ignorant clod!

    103. Re:Obivous Answer by Anonymous Coward · · Score: 0

      Sometimes managers just want kids who are super-eager to please, don't know what can't be done, and generally don't know how to speak up for themselves. I think this has a lot more to do with manager/worker power issues than anything else.

    104. Re:Obivous Answer by sg_oneill · · Score: 1

      Yeah your right. I'm 35 and I've got far less tolerance for the long hours and crunches than I did when I was younger. The problem however is not in older workers , imho, but in younger workers putting up with it. I actually want a life, and time to focus on family. Lifes far too short to be spent in a bad suit and a tie. I don't want a million dollars anymore, I want a yacht and some time to spend on it with my family!

      One big difference I think between me at 25 and me at 35 is I simply don't fear employers anymore. Whereas when I was 25 I'd just accept I'm not going home till ten for three weeks straight, I can now recognise it as abusive and I'm more likely to tell my employer so. And being that bosses can't look down on me as some sort of uppity kid, I get to achieve that. The reality is I still get kept around jobs, because I have better 'meta' skills than the young guys, younger guys are great at seeing fine print problems, but us older coders excel at spotting organisational and big picture issues. Those are life skills, not technical skills, and are frankly pretty damn important.

      But I still think that theres a pressure on us older workers to put in the extra hours and to shut the fuck up and comply with bad management, so part of what I try and do is teach the younger guys to be assertive, think broad and to not be afraid to reach out to management and flag shit that personally hurts their real lives. Ultimately it leads to younger coders not burning out and in the long run that means better productivity.

      I'll be giving this game up soon and heading into management, I think.

      --
      Excuse the Unicode crap in my posts. That's an apostrophe, and slashdot is busted.
    105. Re:Obivous Answer by Angst+Badger · · Score: 0

      Did you ever want to work a couple extra hours because you were really into what you were doing?

      Seriously? No, never. I have a life. Part of which involves not ever telling my daughter that I prefer unpaid inner loop optimization to her company.

      More often, I have the case of management that has mismanaged resources until they've backed the whole project into a corner, and they expect a lot of unpaid overtime from developers to code them out of that corner. And in the absence of a union, or even enforced labor laws, there's nothing you can do but suck it up and let your employer get something for nothing.

      --
      Proud member of the Weirdo-American community.
    106. Re:Obivous Answer by Anonymous Coward · · Score: 0

      Lines of code? I only ever write one per program. No carriage returns for me, thank you.

      No carriage returns? I use lots of carriage returns, just no line feeds. They can't figure out why it takes me so long to write that one short line of code, but it sure does a lot.

    107. Re:Obivous Answer by Blakey+Rat · · Score: 3, Insightful

      Now we're back at the other extreme. Management has done a great job convincing the labor at all levels, skilled and unskilled, that they're your buddies.

      If I ever worked at a job where the management weren't my buddies, I'd leave and go to some other company.

      Without any protections against abuses, it becomes easy to demand extra unpaid work or toss people out when they've outlived their short-term usefulness.

      And with protections, it becomes impossible to toss the useless dead-weight that holds you and your company back. Look at the quality of education in the US, if you would like a vivid example of how unions harm society.

      The adversarial split between labor and management needs to make a comeback - maybe in a less overt form, but with enough teeth to make employee demands count for something.

      In good companies, there's no adversarial split. Why would I want to work in an environment where I'm working *against* management instead of my management and I working *for* my customers?

      If you *ask* (not demand, because you're not an asshole) something from your boss, and he doesn't provide it, then either suck it up or go to a company that will. It's not hard.

      Call me mediocre, but I'd rather give up the potential for being a total rock star employee for a fixed-hour work week, a contract that eliminates the salary shell game seen in corporate jobs, guaranteed raises, work rules and stability.

      Losing more money from union dues than I earn from raises, having political contributions made with my money against my will, having to deal with useless dead weight co-workers who can't be fired...

      Yah, it's not all sunny. There's no way our company would have a well-stocked bar if it was unionized.

      Despite my tone in this post, I'm not really anti-Union-- I'm anti-being-forced-into-a-union. If you want to start a IT union, fine. Knock yourself out. But if you want to *force* me to join it to retain my current job, then you can go screw yourself-- I can't think of anything more anti-American and yet culturally accepted in the US than forced unionization. Hell, it's why I went into IT in the first place instead of becoming a school teacher.

    108. Re:Obivous Answer by Anonymous Coward · · Score: 0

      At least I'm aware that punctuation belongs inside the "quotes!"

    109. Re:Obivous Answer by MmmmAqua · · Score: 1

      per program

      Um, per program, or perl programmer?

      --
      Arr! The laws of physics be a harsh mistress!
    110. Re:Obivous Answer by Anonymous Coward · · Score: 0

      I really don't want to be an alligator wrestler at my age

      Is that object oriented alligator? I hear you can't trace alligator shit.

      ==

      Its my job, you know, to freeze you.

    111. Re:Obivous Answer by ucblockhead · · Score: 2

      Exactly. To quote the article in two places:

      16.7 percent for everyone aged 15 to 24, 8.2 percent for everyone aged 25 to 44, and 6.3 percent for everyone aged 45 and older. So, the older you are, the less likely you are to be unemployed.

      The median weekly salary for workers in the 16-to-24 age bracket is about 41 percent less than what someone aged 25 to 44 makes -- and they're making 6 percent less than the folks in the 55-and-up group.

      At 44, I've finally moved fully into management. The last production line of code I wrote was about a year ago, capping a 23 year career as a programmer. I moved into management because it paid well. I am firmly convinced, given the headhunters who've called and people I've talked to that I could have stayed in coding without much fear. (Assuming I continued to stay up-to-date technically.) However, my salary as a coder was as high as I could expect it to go and so the only way up was management.

      --
      The cake is a pie
    112. Re:Obivous Answer by CodeBuster · · Score: 2, Interesting

      absent some kind of organized labor movement -- which programmers are notoriously, irrationally averse to

      IMHO, this aversion is not as irrational as it might first appear. As you probably know well, many programmers are firm believers in meritocracy; those who can produce elegant solutions to complex problems with clear and concise code are both admired and respected by their peers while those who cannot are not. Contrast this with a common problem in organized labor, rewarding seniority regardless of merit, and you see the principal objection that most programmers have to unionization. If the union rewards members strictly on the basis of merit then it adds nothing worth paying dues for above and beyond the marketplace itself, which also rewards merit and not just seniority. In other words, how does a union benefit the best programmers who could do just as well in the free market?

    113. Re:Obivous Answer by CodeBuster · · Score: 1

      How can one have a geek card without having at least heard of Logan's Run? I think that even younger programmers will get the reference.

    114. Re:Obivous Answer by LukeWebber · · Score: 1

      What if you're a 53YO programmer who doesn't want to be an architect or designer. (Hint: That would be me)
      I don't mind doing some design work, requirements gathering, and what-not. But the code speaks to me, and I can't ignore its siren song.

    115. Re:Obivous Answer by awyeah · · Score: 1

      I think you're on to something there. Most non-technical managers (and in my experience, often times these are ANYONE above the "lead programmer" or "team lead" position) see programmers as simply labor, and are interchangeable.

      Programming is as much an art as it is a science.

      --
      Why, no, I haven't meta-moderated lately. Thanks for asking!
    116. Re:Obivous Answer by Ihmhi · · Score: 1

      A wild slick7 appears!

      slick7 users grammar smackdown!

      It's not very effective...

    117. Re:Obivous Answer by Ihmhi · · Score: 1

      This is a part of the article I flat-out don't understand:

      However, unless or until there is a way to explicitly demonstrate the productivity differential between a good programmer and a mediocre one, inexperienced or nontechnical hiring managers tend to look at resumes with an eye for youth, under the "more bang for the buck" theory.

      I would say considering metrics like memory usage, processor usage, and size of the program alongside with how well and how fast it does its job would be a fine enough way to measure the difference between the skill of one programmer and another. As for the productivity, I'd take a guy who make an efficient program in 5 days over a guy who makes a slapdash, inefficient program (that gets the same job done) in 1 day.

      I noticed that computers nowadays just feel slower. Windows 98 feels better than XP some days. Part of it is just developer laziness IMO.

      Would you prefer a program that users 100 MB of RAM and completes a task in 5 seconds or a program that uses 10MB of RAM and completes an identical task in 10 seconds?

      Developers need to figure out their priorities. You know the old joke about women and dating:

      Single, pretty, sane - choose two.

      It's the same way with programming, isn't it? Low usage of resources, or fast processing? Which of the two is more important in the design? (In the era of nearly 2TB hard drives, I doubt that disk space usages - at least for the program itself - is not necessarily important.)

    118. Re:Obivous Answer by ConceptJunkie · · Score: 1

      Fourty-year-olds in programming now grew up on punch-cards, BASIC, and COBOL.

      Are you talking to us from 1993? I'm almost 45. My first job was programming C and shortly after that I moved on to C++, which is mostly what I've written in my career.

      A computer from 20 years ago would likely be running Windows 3, and would be easily recognizable to a modern user minus its lack of a web browser... and the browsers became common not too long after.

      Software development will always keep changing. Competent people will be able to change right along with it and incompetent people won't. Of course, since too many managers are happy to commoditize employees and ignore any real metrics on their ability to get things done well, I imagine that software development will get worse, not better. This isn't a function of the programmers so much as it is the fact that we as a society are losing the ability to manage.

      --
      You are in a maze of twisty little passages, all alike.
    119. Re:Obivous Answer by jhol13 · · Score: 1

      As it happens, I actually can do a decent job of managing people. The problem is that I'd rather flip burgers.

      Well, I can do a reasonable job of managing people. The "problem" is that I'm much better at coding (& designing, debugging, ...).

      A bit different from you, but close enough, I think. Though I'm a bit older and not looking for a career change.

    120. Re:Obivous Answer by mdarksbane · · Score: 1

      My bad, I lose track of the years and forget that my dad is in his early fifties now. He used to talk about doing punch cards in college.

    121. Re:Obivous Answer by Anonymous Coward · · Score: 0

      Alternately in all of the above examples some people do not want to advance.

      Again - why is it considered an 'advance' to management? That is the point...

    122. Re:Obivous Answer by cayenne8 · · Score: 1
      "Or they renew on Carousel."

      Not in the book....at 21 you turned yourself in for sleep.

      The book was SUPERIOR to the movie...give it a read some day. The 'gun' in the book was much more fun to read about, that alone makes for a good reason to read the book.

      --
      Light travels faster than sound. This is why some people appear bright until you hear them speak.........
    123. Re:Obivous Answer by smellotron · · Score: 1

      Hey! I'm in my mid 20s, I consider myself a young programmer, and I immediately recognized the reference.

    124. Re:Obivous Answer by Anonymous Coward · · Score: 0

      Yes - I understand the dollars and cents of it...

      I guess my point was - that it seems wrong. The frustration is that there are
      models in the technical worlds (physicians, researchers) that demonstrate keeping
      highly skilled technical people focused/happy/etc. and doing what they are good at,
      without having to get out of their area of expertise (and likely source of pride) to stay
      compensated fairly.

      Why does the software industry not follow that demonstrated model?

    125. Re:Obivous Answer by Meski · · Score: 1

      4 digit UID? You're obviously old.

    126. Re:Obivous Answer by Anonymous Coward · · Score: 2, Interesting

      I am 45. I am a much better programmer now than I was in my younger years. For one thing, I am a more mature person, and deal with people and business situations in a more mature manner and I am less likely do make some of the social mistakes I made in my youth. On the technical side, I have seen a lot of problems in the past and have a more intuitive grasp on how to solve permutations of problems I've seen before. I also tend to be more logical in my approach. Well, for whatever reason, I am a better programmer. However, I have definitely been the target of hiring discrimination. For example, there is one company for which I interviewed and I easily aced all their interview questions and the job was similar to other jobs I have done. But I studied the company and noticed that the average age was 27 and they had between 70 and 100 employees, so that is very difficult to do. I asked myself, why would they hire me. They don't hire people over thirty. Of course, they did not. In another situation, when I was still in my 30s, I was part of a team that was interviewing a candidate. My team mates made such incredible exclamations as, "he graduated from college before I was born." I pointed out that that was age discrimination and the room suddenly became quiet. I was never allowed to interview anyone at that company again.

    127. Re:Obivous Answer by zoloto · · Score: 1

      My paycheck and relative autonomy beg to differ. Not all employers are soulless corporations.

    128. Re:Obivous Answer by Anonymous Coward · · Score: 0

      But why on Earth would an organisation of programmers who understand meritocracy make union rules that forbid meritocracy? That doesn't even make sense.

    129. Re:Obivous Answer by riT-k0MA · · Score: 1

      (BTW, I'm perfectly fine with the Dictionary attack too!)

      FTFY

    130. Re:Obivous Answer by Anonymous Coward · · Score: 0

      Well, they did explicitly reference Logan's Run on Family Guy.

    131. Re:Obivous Answer by dcw3 · · Score: 1

      I think the real reason is simple. People older than me (almost 40) are likely to be mainframe programmers. Back then, there weren't a lot of computers. So there weren't a lot of programmers. The office where I work now is filled with people around 40yo doing c++/unix. Come back in about 10 or 20 years, and you'll see a lot of older programmers.

      51 here, and I was working on minis (DG Nova was my first) back in the late 70s. The majority of us have moved to management or SE positions. Recent layoffs I've seen have all been targeting older developers. I'm surprised they haven't resulted in more age discrimination suits.

      --
      Just another day in Paradise
    132. Re:Obivous Answer by Rogerborg · · Score: 1

      Granted, but the important metric isn't code per day, it's code that makes it into the build that you sell.

      --
      If you were blocking sigs, you wouldn't have to read this.
    133. Re:Obivous Answer by Anonymous Coward · · Score: 0

      Code monkeys? Did you read the post you replied to? Its whole point is that the attitude that programmers are code monkeys is wrong. Ask Donald Knuth is he still has anything more to learn about writing code or he's just a code monkey. The false division of labor you imply is there are smart designers and stupid keyboard monkeys who "type code".

      "Code monkeys" is unintentional code for "the perspective of a stupid managment team".

      It's amusing to see that when people are confronted with the invisceration of their own wrong-headed ideas, they only see the confirmation of those ideas even as they agree excitedly with the invisceration.

    134. Re:Obivous Answer by Anonymous Coward · · Score: 0

      The current system is awesome! I used to live in fear that a large well funded team would just squash me like a bug, but as it turns out, I don't need to worry about Adobe or Microsoft out innovating me along any dimension. Awesome!

        I love it when the ruling class brutalizes itself with the nail-studded club they designed to be used on the rest of us. Work for Adobe? That's OK, I'd rather spend the hours and days of my life creating, contributing and making money for myself.

    135. Re:Obivous Answer by precaheed · · Score: 0

      That's right, see this as an example http://jamals-massive.blogspot.com/

      --
      Hit: http://jamals-massive.blogspot.com/
    136. Re:Obivous Answer by tkg · · Score: 1

      "I'm surprised they haven't resulted in more age discrimination suits."

      They probably don't want to blow their 401k on legal fees. Big corps tend to have deeper pockets then worker bees and they can drag a court battle out long enough to discourage most law suit attempts.

    137. Re:Obivous Answer by Anonymous Coward · · Score: 0

      Please define "mainframe"

    138. Re:Obivous Answer by Anonymous Coward · · Score: 0

      ....only the bad ones...any good programmer will be a good geek and therefore know all about Logan's Run.

    139. Re:Obivous Answer by Anonymous Coward · · Score: 0

      It seems to me that Lakoff and Johnson's coherent metaphorical systems are a superset of problem-domain ontologies, and I believe that these systems are crucial to creating and maintaining all complex systems. In particular, it would appear that a coherent metaphorical system gives you a framework in which to measure the quality of any design by evaluating it, metaphorically, within the existing framework.

      The move from junior developer to senior developer is, IMO, usually a matter of understanding the existing CMS, or in some cases applying a more widely known (and useful) CMS to a particular problem domain. An easier way to express this is, "If you know the ontology, you're a senior developer". But I would add the caveat that I think it is the CMS in general that you must know, not just the ontology.

      - Bud Millwood, AC

    140. Re:Obivous Answer by Ritchie70 · · Score: 1

      My group maintains a large, old (25+ years) legacy C application.

      By this article's standard, we're all old (I'm 41, and sure I'm the youngest.)

      We're excited when we make an enhancement and have a negative lines-of-code count.

      --
      The preferred solution is to not have a problem.
    141. Re:Obivous Answer by adavies42 · · Score: 1

      ternaries? luxury! in my day, we did it all with the comma operator!

      --
      Media that can be recorded and distributed can be recorded and distributed.
      -kfg
    142. Re:Obivous Answer by Anonymous Coward · · Score: 0

      Why cant there be middle-aged inexperience programmers?? 40 is not old, 60 is old. And when I.m 60, 80 will be the new old.

    143. Re:Obivous Answer by laurelraven · · Score: 1

      What the hell is a PEBCAK?

      --
      RTFA is Known to the State of California to cause cancer.
    144. Re:Obivous Answer by Marxist+Hacker+42 · · Score: 1

      Problem Exists Between Chair and Keyboard. The ultimate bane of any given software product or data system. Also known as Garbage In, Garbage Out, but GIGO is really a subset of PEBCAK in which the software system actually fails to notice the human errors and continues working. Real PEBCAK also includes the unexpected or downright malicious input that causes a system to stop working entirely.
       
      NO unit test alone can survive PEBCAK, because the software engineer who created the system knows how it is supposed to work and will code to how it is supposed to work. PEBCAK is the subset of input the system is not designed to work with- in other words, all other input other than what the system is designed for.

      --
      SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
  3. Yes and No by Concern · · Score: 5, Interesting

    I have no idea if I'm an outlier, but with a blind preference for intellectual depth, rigor, and creativity, I tend to see what I figured was normal: more experienced candidates often come out ahead. Not always, but often. More experience unsurpisingly equals more age. The best are often bringing decades of experience, MA or PhD level credentials, and the ineffable things that come from having been there and done that in a lot of different trenches. They often cost more (though not all that much more), and they're worth it.

    I know the corporate world at large has this patrician idea about pay related to seniority - whereas I come from the pay-for-value mindset. There is a good observation in the article about older folks making more and therefore being victims of cost cutting. I'm sure this happens as well, but in my world the observation is meaningless. A senior software engineer will get a good salary - more than enough to support an upper middle-class lifestyle (albeit not at the level of an attorney or an anesthesiologist), regardless of their age. If they ask for too much, they will be unemployed; if they tire of unemployment, they bring their compensation demands back in line with their value. I find most people have a very good grasp of the labor market, especially with the advent of widely available salary suvery data.

    I have a couple of friends in their 50's who joke about becoming obsolete. I associate this with actually getting tired of keeping up with an industry that reinvintents itself so often, and therefore, not keeping up. There's a trap there, too: a kind of local maxima where, for a while, being an expert in Cobol or IBM mainframes is not only easier than learning Java, but will pay more and more, as you become more and more rare. Until one day you look for your next job and it just... isn't there.

    Historically IT has suffered from a lack of technical depth at the top. Companies wanted wise old hands with management experience in charge, even if those wise old hands needed an assistant to print their emails every day (true story, multiple companies). As the next generation rises through the ranks, you will have more middle management, SVP, and ultimately COO, CEO, etc types that have real first-hand knowledge of technology. Eventually the corporate world will lose some of its notortious and costly blindness towards talent, and both hiring and strategy will become more objective and less bullshit-driven.

    --
    Tired of Political Trolls? Opt Out!
    1. Re:Yes and No by Enderandrew · · Score: 4, Interesting

      Experience is key. The issue is that new applicants coming out school have more experience with .NET, Java and they key technologies that many industries are looking for today. The fact that you have 30 years of COBOL experience doesn't help you if you don't learn new technologies.

      --
      http://blindscribblings.com - Tasty pop-culture in conceptual fashion.
    2. Re:Yes and No by sakdoctor · · Score: 1

      That's not what your hand crystal says; report to carrousel.

    3. Re:Yes and No by 2short · · Score: 5, Insightful


      True, but if it's for a job doing .NET programming (for example) a lot of people doing hiring will take the guy with 1 year of .NET experience and nothing else over the guy with 30 years experience in 5 different languages and no .NET. All else being equal, the latter guy will probably be more valuable.

    4. Re:Yes and No by LWATCDR · · Score: 5, Insightful

      "The fact that you have 30 years of COBOL experience doesn't help you if you don't learn new technologies."
      learning a new language is easy. Learning to program is hard.
      c, java, c#, php, perl, are all very much alike. Once you know one learning the rest are easy.
      In your typical application program so much code is now offloaded to the libraries that once you leave school you are unlikly to have to write a HASH or a sort every again.
      What experence teachs you is when you need to use a hash vs a btree.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    5. Re:Yes and No by Anonymous Coward · · Score: 0

      I second that! My employer hired a young woman as a Java programmer who had work experience in several languages, but no Java. She demonstrated good problem solving skills (that substantiated the kudos from her references) during the interview. This is why we prefer people with education in computer science or engineering for programming positions. Sure there are lots of good self-taught Java programmers out there with degrees in Journalism, but they're one trick ponies when it comes to doing anything else besides Java programming.

    6. Re:Yes and No by Anonymous+Psychopath · · Score: 2, Insightful

      learning a new language is easy. Learning to program is hard.

      QFT

      IANAP but have written code as a hobbyist. I'll spend hours writing and rewriting something only mildly complex because, while I understand the languages and syntax well enough, I use trial and error to find the right methods. Starting with only a vague idea of how I want something to work doesn't help, either. Good programmers know the right methods already, and learning how those methods are applied in any particular language is trivial.

      --

      Eagles may soar, but weasels don't get sucked into jet engines.

    7. Re:Yes and No by alan_dershowitz · · Score: 4, Interesting

      Learning how to not leverage 30 years of COBOL experience by programming in COBOL in every other language you use is hard.

      I maintain C code written by a COBOL programmer. You can tell.

    8. Re:Yes and No by Opportunist · · Score: 5, Insightful

      Just wait 'til Y3K rolls over and we old COBOL proggers will be sought after again!

      Ok, aside of lame jokes, it's a misconception that "you have to know $language_FOTM to be useful". You have to know how to program to be useful in the long run. Of course, all those fast breeder COBOL programmers that were cranked out 30+ years ago when COBOL was the be-all, end-all language of the trade will not have any future. Neither will the same kind of fast breeder .net codemonkeys have any. They will be used now 'til nobody cares about .net anymore, then they will be tossed and retrained to ... car salesmen or whatever needs more people then.

      What's left is programmers who do not learn a programming language but to program. It does not matter if you write C, C++, Java or C# code. It's basically the same concept. I could see that there is a genuine difference between an imperative and a descriptive language, but ALL the languages mentioned above ARE imperative. If it does matter to you that you're supposed to use a different one, you have no right to call yourself a programmer in my eyes. Because the algorithm does not change. The words you write, the symbols you use and maybe a few tidbits to take care of do. But the foundation stays the same.

      Programming is not knowing an API by heart. That's something help files are here for. Programming is not knowing what library contains what functions. Check your manual for reference. Programming is knowing how to translate a problem into code. What language is used to do that translation is not important.

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    9. Re:Yes and No by SpinyNorman · · Score: 1

      With COBOL you may have a point - OTOH are there really any full-time COBOL programmers out there? I thought they all went back into retirement after coming out for the Y2K feeding frenzy!

      OTOH, say I'm looking to hire someone to do Java development... I'd MUCH prefer a C++ programmer with 10 years experience over a fresh graduate who knows Java. The C++ programmer will learn Java few months, but the newbie will need 10 years to get 10 years worth of programming experience.

      The difference in productivity between a programmer with a lot of experience and a newbie can be astounding... A seasoned professional who puts his years of experience to play in designing it right can do in a week what a newbie may struggle months to get working (and still end up with an unmaintainable poorly written mountain of code vs the clean solution of the pro).

    10. Re:Yes and No by mollog · · Score: 4, Insightful

      Experience is key. The issue is that new applicants coming out school have more experience with .NET, Java and they key technologies that many industries are looking for today.

      Arrant crap. The best programmer I know is in his 60's and got his start on IBM mainframes. He's the go-to guy when you're writing a new OS for your next imbedded application. As others have already said, once you've been through a few languages, JCL, Cobol, Fortran, C, C++, Java, TCL, the next language doesn't even register as a 'new' language.

      The reluctance of younger managers to hire older programmers has less to do with skill and ability, and more to do with psychological factors such as an older programmer's ability to instantly see the folly of what a younger manager wants to try. Been there, tried that, fuggetaboutit.

      --
      Best regards.
    11. Re:Yes and No by Afell001 · · Score: 1

      Hence, your best policy is to learn continuously and not rest on your laurels. There are very few professions where a person can learn all they need to know in four years of schooling and then expect to reap the rewards for the rest of their lives. Doctors are constantly having to learn new procedures and new medicines. Lawyers have to keep themselves appraised about changes in law and recent court decisions that change interpretations, as well as any changes in their profession that might force them to change their specialization. Just like there aren't any buggy-whip salesmen out there anymore, there isn't as much call for programmers who know COBOL or FORTRAN. And just like the buggy-whip salesmen had to learn a new product line to sell, so do programmers need to be in constant contact with the shifts in the industry. But then, just like architecture, programming is as much an art form as it is a science. All we programmers really need to do is learn new tools, and the tools we use are the different languages and IDEs that contain the logic we want computed. How long would it really take an experienced COBOL programmer to pick up .NET or Java is they already understand the concepts behind the semantics? Given a reasonable level of intelligence, I would say a good programmer can probably be well enough versed in a modern language on the outside of a month at the most. Sure, they aren't going to be flying in it (that takes at least a few more months), but programming is programming, and the one thing you really can't teach is a well-organized mind that can build logic to fit the requirement. Granted, it requires management who actually views employees as an investment rather than a commodity to be able to allow for this constant retraining. I think we also need to look at another factor as to why we don't see too many older programmers. If someone is a developer for any length of time, they tend to get promoted into management. As soon as someone spends more of their day managing projects instead of actually programming, I would say that person is no longer really just a programmer. You see a lot more of these folks climbing the corporate ladder instead of filling out the roster in the programming ranks.

    12. Re:Yes and No by Minwee · · Score: 5, Insightful

      On the other hand, the guy with thirty years experience probably expects to leave the office at the end of the day and not work overnight and on weekends. The guy with one year of .NET experience may even believe tales like "We're going to have to put in a few extra hours to finish this project, but we'll make it up to you after we ship", "That's the way everybody in the industry does this" and "I'd hate to see you have to leave the company because you didn't want to be a team player".

      While the more experienced developer is obviously a valuable addition to a well run team, Junior is much easier for a dysfunctional team to exploit, throw away and then replace next year.

    13. Re:Yes and No by Maxo-Texas · · Score: 2, Insightful

      Older programmers will typically not repeat the same naive mistakes again.

      OTH

      A large percentage of older programmers are unable to learn a new programming model. For example: Object Oriented coding. There are some who just do not get it and will write procedural code in object oriented languages.

      by and large, programming as a field in general has such low status and poor conditions that I can't recommend it to anyone any more. Go into programming if you

      a) want to likely suffer terrible age discrimination and a truncated career.
      b) want to spend a lot of your time learning new ways of doing the same work*
      c) want substandard pay for the effort put into the degree.
      d) want to compete with people in third world countries who feel like kings on $15,000 a year.
      e) want to be forced to work nights
      f) want to be forced to get up at 5am
      g) want to be forced to work holidays
      h) want to be forced to not take a vacation over one week long
      i) want to have no respect from the business at all (unless your business is selling software-- but then see EA so not even then)
      j) want to be forced to implement stupid solutions that you know will fail because some lame brained executive won't accept your input.

      * Don't get me wrong- some people like learning. But unlike plumbing, accounting, legal work, management, heck even engineering (which has a lot of training but minimal compared to IT), in IT, every 3-5 years, you pretty much have to toss out everything you know, learn the new "big thing" while ruthlessly ignoring good but dead end jobs.

      Oh and
      k) have a harder time finding a spouse given your lower status AND have a harder time keeping one given your unreasonable work hours and substandard pay and general societal low status.

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    14. Re:Yes and No by Anonymous Coward · · Score: 1, Interesting

      "True, but if it's for a job doing .NET programming (for example) a lot of people doing hiring will take the guy with 1 year of .NET experience and nothing else over the guy with 30 years experience in 5 different languages and no .NET. All else being equal, the latter guy will probably be more valuable."

      I used to think this. The problem is that the ecosystems around Java and .NET are so massive that if two people are of equal intelligence, the one with .NET experience and say, 5 years of Cobol is more valuable than the guy with 30 years of Cobol and 0 .NET. He's WAY more valuable in fact. Again, assuming all things are equal.

    15. Re:Yes and No by Alinabi · · Score: 4, Insightful

      What experence teachs you is when you need to use a hash vs a btree.

      Actually, school teaches you that. If it didn't, you were not paying attention in class.

      --
      "You can't allow somebody to commit the crime before you detain them." [Condoleezza Rice]
    16. Re:Yes and No by Ephemeriis · · Score: 1

      Experience is key. The issue is that new applicants coming out school have more experience with .NET, Java and they key technologies that many industries are looking for today. The fact that you have 30 years of COBOL experience doesn't help you if you don't learn new technologies.

      The differences between languages are largely syntactic. If you're a good COBOL programmer, it's only a matter of spending the weekend with a decent .NET book to learn the language-specific syntax.

      No, you might not know all the clever things that .NET does... But that's a very small part of writing good code.

      --
      "Work is the curse of the drinking classes." -Oscar Wilde
    17. Re:Yes and No by mollog · · Score: 1

      A large percentage of older programmers are unable to learn a new programming model. For example: Object Oriented coding. I don't think that relates to age at all. I watched in horror as college new-hires in the 90's, who had learned to program in C, make a hash out of a new project written in C++. They were younger. And they just didn't get it. But they did work long hours and hacked the code until management said, 'ship it'.

      And they had shiny programming degrees, so they ruled.

      --
      Best regards.
    18. Re:Yes and No by rickb928 · · Score: 1

      "The issue is that new applicants coming out school have more experience with .NET, Java"

      Um, sure they have experience in school. But they don't have, in general, 'more experience' if they haven't yet had a job.

      And yes, if they are competing with COBOL programmers, there's a good chance they have the skills, just not the experience, that the COBOL guys don't have. You COBOL guys can learn Java, I know it. You already know about quality coding, probably. If not, well...

      How many postings have you seen with qualifications "Windows and Linux administration, PC and printer troubleshooting, desktop support, website support, and Java." Pus. Looking for an out-of-work web designer who had to manage his own worksation and a few others, hoping to get a web designer at admin wages. A pox on them all.

      I was this close (THIS CLOSE) to taking a plum job, turns out they actually wanted an HTML coder who also could support the web app, i.e. talk to users and figure out how to solve their problems. We had a great discussion on the problem of finding someone who can code and communicate with users, and the hiring manager was pretty frustrated at not finding anyone. She couldn't get the requester to accept me with the promise that I would catch on to ther HTML pretty quickly. When pressed, he started expanding the requirements - Java, ASP, etc. The hiring manager apologized to me, and I check in with her occasionally. Feature creep affects recruiting too. This alone can drive older applicants out.

      Me? I'm lucky. I pass for 10 years younger than I am, and I no longer tell them when I graduated from school. I'll be going back for a degree, and I probably won't list a 2012 graduation then either. It will be obvious I'm a 'life-long learner'. Codeword for 'retraining'.

      --
      deleting the extra space after periods so i can stay relevant, yeah.
    19. Re:Yes and No by khallow · · Score: 4, Insightful

      Actually, school teaches you that. If it didn't, you were not paying attention in class.

      You make a common mistake. Teaching is not the same thing as learning. Learning is what sticks and it includes knowledge that didn't come from the "teaching" end.

    20. Re:Yes and No by Aanalin · · Score: 1

      Not many doctor's job description specify 'must have 5 years in .NET transplantation surgery method' ..and refuse doctor with 'only' 1 year in .net combined with 4 times 5 years in other surgery technics..

    21. Re:Yes and No by mcgrew · · Score: 1

      I have a couple of friends in their 50's who joke about becoming obsolete

      COBOL programmers? Crappy Old Bad Obsolete Language... ;)

      As the next generation rises through the ranks, you will have more middle management, SVP, and ultimately COO, CEO, etc types that have real first-hand knowledge of technology.

      Except that today's technology will be as obsolete 20 years from now as 1989 technology is today. I mean, look how much DOS batch file knowledge is useful today, or dBase... hell, I'd bet even NOMAD is obsolete (I loved NOMAD). I doubt twenty years from now the CEO will be any more versed in the technology of the day as today's CEOs are of today's tech.

    22. Re:Yes and No by nabsltd · · Score: 1

      Older programmers will typically not repeat the same naive mistakes again.

      No, we keep coming up with new and exciting (and exponentially more expensive) mistakes.

      Seriously, my old mistakes meant the code wouldn't compile or would flame out quickly in testing. Now, the mistakes are more subtle and more likely to be caused by some unexpected interaction of multiple parts of the entire system.

      OTOH, I did spend about 10 minutes yesterday debugging a "dead" NIC that I had plugged into the wrong switch port (different VLAN).

    23. Re:Yes and No by RavenChild · · Score: 2, Interesting

      http://thedailywtf.com/Articles/Jurassic-Programmers-.aspx

      Some fun reading. I just read it while going through old Daily WTF posts no more than 2 minutes ago.

    24. Re:Yes and No by DerekLyons · · Score: 4, Interesting

      True, but if it's for a job doing .NET programming (for example) a lot of people doing hiring will take the guy with 1 year of .NET experience and nothing else over the guy with 30 years experience in 5 different languages and no .NET. All else being equal, the latter guy will probably be more valuable.

      If I'm hiring someone to do .NET programming, I see no a priori reason to assume that the guy without any .NET experience would be a better hire than a with .NET experience.
       
      I'm reminded of the home improvement show I saw a few weeks back. A highly experienced contractor was brought in to do a remodel, and on the surface did an excellent job. But after a few months problems began to surface that he couldn't (or wouldn't) fix. The guy brought in to fix the problems traced many of them to the original contractor using new materials but old techniques that weren't suitable to the new materials and didn't take into account current building practices.
       
      All else being equal, the original contractor with decades of experience should have been a good choice, but in reality he was an iceman - frozen in time and irrelevant to the modern era.

    25. Re:Yes and No by Anonymous Coward · · Score: 0

      I've learned that you can smoke hash, but you can't smoke a btree!

    26. Re:Yes and No by bittmann · · Score: 5, Insightful

      I maintain C code written by a COBOL programmer. You can tell.

      The code is written in a verbose, heavily-commented, yet easy-to-read style, and actually does what it appears that it should?

    27. Re:Yes and No by DeadCatX2 · · Score: 1

      You think it's easy to move from COBOL through C/C++ to managed languages like C#? That's a riot. You have to learn marshaling, boxing, garbage collection, forms, the CLR. And that's assuming you don't have to do any mixed-mode code, use any interop functions, etc.

      I have seen the results of C++ programmers who thought that they could just start programming in C# like it was C++. It's not pretty.

      Cypress makes an IC called the FX2LP. It's a USB microcontroller. They write an API for it and updated it to C#. Well, the guys who did it were clearly C++ programmers, because they don't understand how arguments are passed in C# and why you don't need to pass a byte[] using a ref parameter.

      Worse, there's a simply catastrophic bug in their managed API. The garbage collector can run and move your managed variables around, and then the unmanaged code (specifically, the USB drivers) doesn't know, and you start getting weird exceptions that the CLR can't catch on threads that aren't transmitting to the USB...I had to employ a work-around that pins every buffer that gets passed to their API because the Cypress developers didn't bother learning how to marshal properly.

      If managed is easy and unmanaged is hard, you might think that mixed-mode would be in between. It's not. Mixed mode is way, way harder than even unmanaged code.

      --
      :(){ :|:& };:
    28. Re:Yes and No by Lazy+Jones · · Score: 1

      learning a new language is easy. Learning to program is hard. c, java, c#, php, perl, are all very much alike. Once you know one learning the rest are easy.

      I would almost agree, but felt I had to point out that the more you have seen, the worse you'll feel about (and consequently more inner resistance you'll develop against) having to learn something that is crap / has bad documentation / unfinished specs / unstable IDEs / buggy compilers/VMs etc. etc. ...

      --
      "I love my job, but I hate talking to people like you" (Freddie Mercury)
    29. Re:Yes and No by SQLGuru · · Score: 1

      Actually, the guy with zero years of .Net is just as likely to be useless as the one with only one year (unless it's a really good year). COBOL and .Net approach solutions differently. Sure, both can probably handle the syntax and can write loops and functions and what not. But neither one really knows how to develop a solid .Net application from the ground up. When should I use one architecture vs the other architecture to solve this business problem? If you've got the senior member that can mentor either of them, then the guy with only one year of .Net will be the better choice -- they'll be cheaper and be able to crank out the same code.

      I'll take a guy with three or four years of Java and no .Net over the guy with only one year of .Net, though. The Java experience will translate to .Net in that both languages have a similar approach to a solution. A guy (like me) with many years of experience in multiple languages and multiple solution paradigms would be your best choice because I've shown that I can adapt to any technology you choose and I have the experience necessary to write good solid code. Of course, I'm now 37, so I guess I'm only good for three more years before I need to get a lobotomy.

    30. Re:Yes and No by LWATCDR · · Score: 1

      I have moved from Pascal to Moduala-2 to c to Perl to PHP to javascript to java to c++ to objective c. It just isn't that terrible of a task.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    31. Re:Yes and No by SQLGuru · · Score: 1

      I will argue that learning the solution spaces is more important that even imperative vs descriptive vs whatever. The new languages will all have some new twist that makes them more efficient and cool and whatever else to become adopted. Showing that you can adopt to these twists will keep you employed.

      Structural programming
      Functional programming
      Event driven programming
      Object Oriented programming
      Aspect Oriented programming
      Scripting languages
      Web Services / Service Oriented Architecture
      etc.

      These are the things that you need to know. Just knowing looping structures and what not won't help you when the fundamental approach to solving the problem changes because the language changes models. Showing that you can freely move from one model to the other, however, makes you valuable and should keep you employed. I do a lot of coding by Google because I don't know the language -- but I know the solution space and know what I'm looking for, the rest is just APIs and syntax.

    32. Re:Yes and No by rachit · · Score: 2, Interesting

      I've worked at a couple startups, and the unfortunate truth is when we hire someone, we expect them to be productive by the end of the first week.

      A less experienced guy with the right skills will win out over the more experienced guys without those skills, especially if you factor in the cost and possible "ego" issues. At a startup everyone has to do the dirty work. Its sometimes more difficult to get the experienced folk to wear the build engineer hat for the day, or handle a support escalation.

    33. Re:Yes and No by LWATCDR · · Score: 1

      That is what is taught but did they learn it? I ran into a "programmer" from a local university with a degree that had no idea what a hash was much less when to use it.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    34. Re:Yes and No by HappyEngineer · · Score: 2, Interesting

      Programming is not knowing an API by heart. That's something help files are here for.

      That is profoundly untrue. It may be true that you can learn the basics of new APIs quickly, but most APIs have gotchas. Gotchas wouldn't be gotchas if they were easy to avoid. You learn them by using the API and then debugging the bugs and then remembering those gotchas the next time you use the API.

      In Java, when you call new GregorianCalendar(2010,1,1) and end up with a date in February you'll learn a gotcha. When you create a date formatter with ("mm/dd/yyyy") and for some reason keep getting random values for the month you'll learn a gotcha.

      There's also the simple fact that you often don't know what's in an API. New users of an API may often end up reinventing the wheel unnecessarily.

      Granted, the better the API, the less of a problem this is. It's too bad that most APIs are very imperfect.

    35. Re:Yes and No by Anonymous Coward · · Score: 0

      No. Everything was in CAPS.

    36. Re:Yes and No by Anonymous Coward · · Score: 0

      That's funny at my office they hire straight business folks to ride herd over technical staff. It's a terrible system. Decisions are made based on people with no technical background talking to salesmen from other companies, but at least we got the rust-proofing on our Colecos.

    37. Re:Yes and No by tompaulco · · Score: 1

      Me too. I have worked over the last 22 years in Fortran, Basic, C, C++, SQL, plus a host of various scripting languages, both public domain and proprietary. But I didn't know Java. Then, about the middle of last year I decided to know Java, and a month later I had already written a pretty involved GUI Workflow monitoring program with about 5,000 lines of code. If I were a manager, and I wished my company to succeed, I would definitely hire someone with three or more languages under the belt even if my preferred language was not one of them, over someone with a year of experience in only that one language.

      --
      If you are not allowed to question your government then the government has answered your question.
    38. Re:Yes and No by FrozenGeek · · Score: 1

      "The fact that you have 30 years of COBOL experience doesn't help you if you don't learn new technologies." learning a new language is easy. Learning to program is hard.

      Let me amend that to "Learning to program well is hard."

      I've been earning a living as a programmer since 1986. I'm continually learning new things about programming, from new techniques (i.e. OOP - they didn't teach that in 1982) to new languages to the psychology of the my end users. Comp Sci school is like learning English grammar. It's really useful, but just like knowing English grammar doesn't make you a great writer, neither does a Comp Sci degree make you a great programmer.

      Whomever I hire has to be learning continually about his or her craft. I'm not going to hire anyone who knows it all - that person is an ass.

      --
      linquendum tondere
    39. Re:Yes and No by DeadCatX2 · · Score: 1

      Well, since we're whipping it out, I started with Pascal, then C++, C, Java, multiple flavors of assembly, and finally C# (and VHDL, but that doesn't really count...). Learning a new language is not hard, and I'm not disputing that. Clearly, Cypress' C++ developers were able to learn C#, and it compiled, and even ran!

      Knowing how to use the language properly and being able to debug the problems that you run into are what make this process terrible.

      --
      :(){ :|:& };:
    40. Re:Yes and No by Fareq · · Score: 1

      I agree with what you are trying to say.

      I say it often myself.

      BUT, if the only difference between your C program and your C# program are a few symbols and "tidbits" then you are definitely using one of those languages in the wrong way. (Or you are writing things that are trivially small and simple, I suppose)

      When I write C#, my code looks very different than it does when I write C.

      The old joke was that you could write BASIC in any language. You can, but you really shouldn't.

    41. Re:Yes and No by elrous0 · · Score: 3, Insightful

      That's not because he was old, it's because he refused to take the time to learn new things and keep current in his field. There is a BIG difference between those two things.

      --
      SJW: Someone who has run out of real oppression, and has to fake it.
    42. Re:Yes and No by Concern · · Score: 1

      Hah! You could be right. But I optimistically think it's going to be a net improvement. Today you can still go into businesses heavily dependent on technology, yet find CEO's who can barely use a computer, let alone understand how it works. But gradually this type of person is ceasing to exist.

      In another 10-20 years, it will seem absurd to have a management team at a tech-dependent company with no direct experience in their own field, just as we frown on pharma concerns that don't have MD's and PhDs in top slots. If your business makes software, it will not be obvious how a CEO who hasn't made software herself at some point will run that business well. Steering the ship will come down to judging talent (which can't always be done by acting like a 21 year old in a liquor store and buying the highest price or the fanciest label), and making the right calls when strategic technical decisions arise. We are rife with good failure stories on this score. Eventually investors get sick of hearing them.

      It makes sense if you see "IT proficiency" as fundamentally a way of thinking, where individual tools and technologies come and go, but the overall paradigm seems relatively stable. For the same reason, I don't think we should fear growing older, only losing the desire to keep in the game.

      --
      Tired of Political Trolls? Opt Out!
    43. Re:Yes and No by LWATCDR · · Score: 1

      True and you are talking about the embedded space. C# in embedded just makes my head hurt. It must be an ARM at least. Is it running CE?
      Once you hit embedded it is almost like the good old days where you didn't just have to know the language but also the machine that runs it.
      I was talking about the application space where things are a lot simpler. Heck in the embedded space you might even have to right your own sort because the one in the library isn't good enough or uses too much memory.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    44. Re:Yes and No by DeadCatX2 · · Score: 1

      Actually, I'm not talking about the embedded space. I'm talking about programming on x86 CPUs; the Cypress .NET API I was discussing was the API for communicating with the device from the host computer.

      http://www.cypress.com/?rID=34870

      --
      :(){ :|:& };:
    45. Re:Yes and No by MagikSlinger · · Score: 1

      What experence teachs you is when you need to use a hash vs a btree.

      Actually, school teaches you that. If it didn't, you were not paying attention in class.

      You are old like me. How do I know? You believe they teach hash and b-tree in elementary computing courses that the new hires come from. A lot of the young IT slaves come from community college (which are getting pretty good these days!) or lower. The result is they may have heard the term hash and tree, but couldn't tell you what they actually are.

      In true computing science classes, they do teach this, but I rarely see comp sci grads anymore at my big-name consultant workplace. They seemed to like hiring the cheapest programmers they can, and university/college comp sci types demands higher wages, so as a result, I get newbies writing code that staggers belief.

      An example, in Java, a young coder would get the results of several queries from Hibernate then wants to merge them and ensure no duplicates. An old, wiley programmer like me would make the query do all the work for me, but alas, he did not. A middling wiley programmer would use some sort of Set with equals() defined on the entity objects to compare IDs. The young one wrote a double for loop to iterate over every query result, and then used linear search to see if the object was already in his output list, if it wasn't, insert it. Repeat.

      I see these new "grads", and I cannot believe they never learned fundamental data structures and algorithms. They don't even seem to be aware of run-time effeciency (big-O notation, etc.). The quality of programming grunts is declining very rapidly, and I worry what kind of defects we will be seeing soon.

      --
      The bitter lessons of a veteran coder: http://bitterprogrammer.blogspot.com
    46. Re:Yes and No by Daniel+Dvorkin · · Score: 1

      If I'm hiring someone to do .NET programming, I see no a priori reason to assume that the guy without any .NET experience would be a better hire than a with .NET experience.

      It is reasonable to assume that the guy with more programming experience will be a better programmer, period. It's only slightly relevant whether that experience is in a particular language or framework. If you're hiring for a .NET project and you're looking at two programmers with five years of experience, one in .NET and the other in Java, then the default assumption that the first guy is a better choice is entirely reasonable. But if you're looking at one programmer with five years of experience in .NET and nothing else, and another with twenty years of experience in a mix of C, C++, and Java, then it is a damn good bet that the second guy will do a better job.

      --
      The correlation between ignorance of statistics and using "correlation is not causation" as an argument is close to 1.
    47. Re:Yes and No by Anonymous Coward · · Score: 0

      I'd put it even more strongly.
      Programming constructs like loops, if statements, subroutines, have been around basically unchanged since the invention of Fortran and Algol.
      Similarly the fundamental types like pointers, integers, characters, strings and data structures likes lists, hashes, trees etc are ancient.
      The basic stored program computer architecture with registers, memory, interrupts is even older.
      Timesharing, multi-tasking, multi-processing etc predates Unix.

      In some sense programming is an easy mechanical job that will eventually become obsolete. Understanding, design, analysis whatever you call it, is hard.

    48. Re:Yes and No by Maxo-Texas · · Score: 2, Insightful

      I'm talking about basic things like...

      Design your code so it can be maintained.
      Design your code for growth.
      Design your code for debugging.
      Design your code so you only write 20% as much code.
      Code for risks first- do the easy stuff last.

      Young pups seem to very quickly code things that do not scale, is hard to debug in production, and fails as soon as the number of transactions goes up by 20% from the specs. Which is what the old geezers did 20 years ago.

      They are also murderous about writing huge amounts of unnecessary code because they have no design experience. Patterns and so on are helping them some by externalizing common programming experience and coding solutions but still... Indians were good back in 2002-2004 but lately they are doing the same things which means to me that we must be getting more college grads (and trade school grades) where as previously we were getting masters degree types with more experience.

      Without guidance, a young person will write code which isn't documented... OR is overdocumented in areas you don't need it... or stupidly documented (' add 1 to the counter) with teeny variable names "tw = p1 + b" instead of "tableWindow = row 1 + offset" instead of "invoiceTableWindow = (startOfPeriod + weekOffset)"

      They will write routines which are only used once. They will write code without optional transaction recording to log files so when someone says "why did this happen" your only answer is, "we don't know".

      And worst, they'll write 80% of the project before finding out something is impossible or impractical.

      The ideal matchup seems to be one senior person and two to four junior people. The senior person uses the juniors and code monkeys and enforces good standards and practices. High Productivity + High Quality. When we have contractors they do this-- but at a 20:1 ratio instead of a 2or4:1 ratio. The results are predictable.

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    49. Re:Yes and No by Imagix · · Score: 3, Insightful

      Don't laugh too hard, I've actually had someone accuse me before that my C code looked "too Pascal-ish". What? Readable and maintainable? You say that like it's a bad thing.

    50. Re:Yes and No by Darinbob · · Score: 1

      Someone who's dealt with a single technology all their (short) lives, versus someone who's seen lots of different languages, operating systems, infrastructures, fads, etc. I have seen the person who's only ever used COBOL all their lives, and they can be just as inexperienced in many ways as a new tech school grad who's seen nothing but .NET.

    51. Re:Yes and No by LordArgon · · Score: 1

      Mod parent +5 Depressing

    52. Re:Yes and No by Maxo-Texas · · Score: 1

      The status thing in particular gets to me.

      You can be a buff sports playing 6'er and making $90k as a programmer and a "sales manager" making $70k plus bonus has more status.

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    53. Re:Yes and No by Anonymous Coward · · Score: 0

      Design is programming. If you have a design complete enough that a computer can build a program out of it, you've written a program in a high level language.

    54. Re:Yes and No by HereIAmJH · · Score: 1

      This is one of the problems I am seeing with the job market. There are so many different languages in use and every employer wants you to be a specialist in the one that they use. It used to annoy me that my IT director used to complain that he couldn't find Delphi developers, but wouldn't even consider looking at candidates with experience in other OOP languages. Now I see it from the candidates side, 15 years of Delphi won't get you an interview for a C# job.

      Languages are easy, but finding someone with a track record of good problem solving skills is not. I used to think it was a college thing, but I'm continually amazed when I run into developers who can't break down a problem and tackle it one piece at a time. I thought this was the age of Agile development.

      --
      Another day, another update to a Google android app.
    55. Re:Yes and No by Anonymous Coward · · Score: 0

      Well, you *maintain* code (as in bug fix, occasional small changes, whatnot), and complain/smirk. He designed and developed the original code base, as in decided when one needed the btree and when was the time for the hashtable. Probably did it without wisecracking and smirking, too.

      Dont worry, you too will get there. In the meantime, engage in the consultant standard operating procedure - mocking the predecessor's work. That's one way to convince a PHB that you are of any value.

    56. Re:Yes and No by psithurism · · Score: 1

      If I were a manager

      That's a problem coming up in many comments on this article; managers often are not people familiar with software coding and don't know that problem solving is high among the skill sets that will actually matter.

      I worked the past 3 years in C++. I still code with references to the stl and language manuals open, but a non technical person won't understand that when they see "3years C++ experience." They won't understand, because they haven't been there, that I could just as easily pop open some other language's reference material and solve the same problems in that language.

    57. Re:Yes and No by Anonymous Coward · · Score: 1, Insightful

      I don't agree with you.

      Programming is much the same in most popular languages today. Sure the syntax migh be different and some new concepts might be used that weren't used before. Someone used to cobol might need to get up to speed with object oriented techniques before starting with java or .net. But the basic concepts of computer science apply just the same. Things like datastructures, access times in O notation, working with stacks and basic algorithms and all the other development processes alongside it will remain relevant no matter which language you use.

      Mediocre programmers are good in one thing.
      Good programmers are good in many things, and able to adapt to new things.

    58. Re:Yes and No by Nicros · · Score: 1

      I find learning a new language is easy, learning the new tools is a pain in the ass. Java was easy. I found Eclipse RCP/Spring/Hibernate more difficult to learn. C# was easy too. Learning WPF, WCF and all the .NET 3.5 (and now 4.0) technologies was much harder (still doing it in fact). Not to say these things are truly difficult, they're not. But there is a LOT to them and it takes time to understand it all. I don't think most programming jobs are about the language at all anymore, its more about the tools used to build apps. Understanding the syntax of a language seems to be kind of a given.

    59. Re:Yes and No by TheRaven64 · · Score: 1

      I'm only 27 (maybe that counts as old in computing), but I covered this stuff in my degree. The year after I graduated, they changed the course to use Java instead of Pascal because it was more buzzwordy, but I think they still made you implement trees and hash tables, as well as covering big-O notation in several core modules.

      What is taught, however, is not quite what the grandparent said. You learn the run time characteristics of a tree and a hash table, but you don't learn what problems need those characteristics. You also tend not to learn more esoteric data structures. you may encounter AVL trees, but you probably don't come across skip lists. You might be asked to show the asymptotic worst case performance of some of these, but you won't learn that red-black trees have better cache utilisation than skip lists on modern CPUs, or that hopscotch hashing typically lets you use a single cache line for lookups while secondary chaining can require a lot of them.

      --
      I am TheRaven on Soylent News
    60. Re:Yes and No by TheRaven64 · · Score: 1

      new techniques (i.e. OOP - they didn't teach that in 1982)

      Depends where you were. Alan Kay was giving talks on OOP in Utah in 1966. The first version of Smalltalk - the language that was created to embody OOP - was out in 1976 and the version that was widely available shipped in 1980. Most of the core concepts in functional programming date back to Lisp in 1958 (which also had loose coupling, late binding, dynamic dispatch, and accurate garbage collection).

      --
      I am TheRaven on Soylent News
    61. Re:Yes and No by TheRaven64 · · Score: 1

      Aspect Oriented programming

      It still amazes me that someone managed to create an entire programming paradigm based around an abstracted form of a conditional COME FROM statement, without being haunted by the ghost of Djikstra.

      --
      I am TheRaven on Soylent News
    62. Re:Yes and No by HereIAmJH · · Score: 1

      The differences between languages are largely syntactic.

      I understand the point of these arguments, and mostly agree with them, but this COBOL vs .NET argument loses me.

      COBOL is a procedural language and .NET is both OOP and event driven. There is a lot more for a COBOL developer to learn than just new syntax. I remember the leap from procedural to OOP, and done right it is a huge step that not everyone can make. Once you have OOP, event driven is a smaller step.

      An example I wouldn't have a problem with is GUI based C++ (Win, QT, etc) to a .NET language. That is primarily a simple language change.

      --
      Another day, another update to a Google android app.
    63. Re:Yes and No by Roman+Coder · · Score: 1

      Both you and the parent are correct, basically. Its not a black or while thing.

      In your examples, I'd just do a javadoc lookup of the api before I use it, and I'd know the right order and type of arguments to pass into the constructor/method.

      But in other cases, its HOW you use the api that's important. I remember a ways back of using the Apache POI api, and in some cases, the ORDER in which you called the api made a difference, something that was not covered in the javadocs.

      But overall, I agree more with the parent poster. At the end of the day, clearing the screen or getting a listing of files on the hard drive is the same concept, no matter what the api name is (dir, etc.). Its more important to know WHEN you should clear the screen or get the listing of files, than HOW you do so.

      --
      "The future can only affect the present if there is room to write its influence off as a mistake." - Yakir Aharonov
    64. Re:Yes and No by greenbird · · Score: 3, Insightful

      On the other hand, the guy with thirty years experience probably expects to leave the office at the end of the day and not work overnight and on weekends.

      The more experienced programmer you won't have to work nights and weekends to complete the project. 30 years experience provides the foresight to avoid the development black holes that create the situations where you have to work nights and weekends to complete the project.

      --
      Who is John Galt?
    65. Re:Yes and No by Lars512 · · Score: 1

      "The fact that you have 30 years of COBOL experience doesn't help you if you don't learn new technologies." learning a new language is easy. Learning to program is hard. c, java, c#, php, perl, are all very much alike. Once you know one learning the rest are easy.

      Learning a new language is easy if you commonly take the time to learn a new language and challenge the assumption that your current pet language is best for business. If you have only used two or three languages in 30 years, people might rightly question why you haven't explored your own field more.

      What experence teachs you is when you need to use a hash vs a btree.

      That's actually what a computer science degree teaches you. Experience would instead help you to see to the core of a new problem, and find that one or two insights which turn a complex problem into a simpler one. It would also help you to manage client expectations, so that even with similar output everyone would be happier.

    66. Re:Yes and No by Anonymous Coward · · Score: 1, Insightful

      Repeat with me. Software development != Building development.

    67. Re:Yes and No by SimonInOz · · Score: 3, Interesting

      Ah, what a great thread. And as I turn 55 tomorrow, I guess it's pertinent.

      I currently "manage" a team of young programmers (nearly all from India, based in Australia). They are happy to slog away, coding until they are blue in the face.
      Lines of code - they'll give you lines of code.

      But do they think much - er, no, not as far as I can see.

      I am rubbish at managing. My main function is staying out of the way, and going to meetings. Oh, and doing estimates (guess at what you think the work might take. Round up to days, multiply it by about ten, double it to allow for testing ... then think if there might be any other problems and add a bit. This is a bank, we have a FIXED release schedule. So our aspirations are way, way low. No rewards for wonderful work, only punishment for not delivering on time ... we aim low, so, so low).

      But I still reckon I could out program pretty much my whole team. (Yes, arrogance is a requirement for a decent programmer). And I would so, so much rather do that. So I write code to entertain myself, spending about 10% of my time on management.

      I weep when I see the miserable approach they take - why write a general solution when you could write more code? Why use a library when you could just - write more code. And so on.

      And get off my lawn ...

      --
      "Cats like plain crisps"
    68. Re:Yes and No by Kjella · · Score: 1

      learning a new language is easy. Learning to program is hard.
      c, java, c#, php, perl, are all very much alike. Once you know one learning the rest are easy.

      Personally I find trying to learn multiple languages annoying because my brain doesn't do namespaces well. Let's take something as basic as opening a windows, yes it's the same but different. Then there's five thoughts in my head not one, usually I manage to pick the right one and for the more obscure I might have to look it up because I mix them up. Now don't get me wrong I'm hardly incapacitated but I find it eats of the total pool of program flow, state and logic that I can keep in mind and try to hammer out, the less I have to backtrack and check docs or function call parameters the better. Oddly enough it's different than languages, I speak three and they don't get mixed up but programming languages just lack that natural grouping.

      --
      Live today, because you never know what tomorrow brings
    69. Re:Yes and No by thetoadwarrior · · Score: 1

      With more experience hopefully you shouldn't have to work as long as someone with little experience. Working long hours for nothing isn't all it's cracked up to be. The reason older people don't do it is because they've learned you just get treated like a slave rather than gain any meaningful reward for working hard because not every company is Google or MS and will allow you to wear wacky t-shirts and play with foam swords at work to break up those extra hours.

    70. Re:Yes and No by SimonInOz · · Score: 3, Funny

      Your sig is right - oh, so bitter.

      Damn, where do I start?

      Age discrimination and a truncated career - 55, still in IT. Can't be that bad. But there's some truth in it.
      Learning new ways of doing the same work - new tools, similar problems. Beats using the same tools for the same problems (like, say, a plumber).
      Substandard pay - nope.
      Compete with 3rd world labour - quality will out. Be good at what you do. Aren't you?
      Work nights ... try delivering on time. Aren't you good at what you do? Hang on, didn't I just say that?
      5am - see above. Or try being a plumber.
      Holidays ... what is it with you and not getting things done on time?
      Vacation ... oh, you are American. Anyway, see above.
      No respect - respect must be earned, whatever you do, be it a plumber, a janitor, a judge, a programmer. Try being nice to people.
      Implementing stupid solutions - can be a problem. Earn some respect, become involved in the process.

      Girlfriends/spouses - you really do have problems, don't you? Try earning and giving some respect, change your t-shirt occasionally, maybe to one with sarcastic, bitter remarks on it. Maybe the world will love you more.

      If you don't like this field, please leave. If you do not enjoy the challenge of one of the fastest paced, most technical areas around, just quit. Go work in a shop (mindless tedium), be a plumber (on call 24 hours, fixing broken toilets), a lawyer (everyone hates you), a factory worker (you hate yourself), a garbage collect (damn they die a lot. And girlfriends?)

      I think I'll stick with it.

      --
      "Cats like plain crisps"
    71. Re:Yes and No by thetoadwarrior · · Score: 1

      This is true and this is part of the reason I think youth can win out. Yes they'll unfortunately work stupid hours but their knowledge set can often be fresher even if it's lacking experience and because it's all new to them still they will likely pick up new things happily when required. I started off painfully hacking PERL. I moved to PHP which was a bit easier, Java was even easier and I learned enough to complete what I had to do in Python within a couple hours.

      I will eventually pick up more Python (unless I get distracted by Scala) but I know enough now to knock out something with a few quick glances at references. I'll never have to use it for creating GUI programs or really anything more than CLI data processing and the odd home web project but it is helpful to learn it and I also think it makes you a better programmer because it keeps you enthusiastic. Learning new languages is always more fun than bashing out the same old thing for years.

    72. Re:Yes and No by Jedi+Alec · · Score: 1

      To tap into both your and the GP's post, I've actually used eg Perl to do a quick mockup of something I want to write in C down the road. That way I can focus on the actual problem and how to go about solving it first, and deal with stuff like memory allocation, horribly string processing and the other joys that pure C brings to the table.

      And yes, I too am strictly an amateur.

      --

      People replying to my sig annoy me. That's why I change it all the time.
    73. Re:Yes and No by Doomdark · · Score: 1
      Good points, but I don't completely buy your list. Points (e), (f) and (g) have never been an issue for me (well, (f) has happened to me exactly once -- but with compensation associated). I know they are issues for others, but my experience here (yea yeah, my slashdot is not short enough to qualify me as much past 12 years here, but that'll have to do) suggests that you only bend as far down as you want to. You don't have to flat refuse to do things, but you do have to define and keep boundaries; and let others with softer spine to bend over further. Not surprisingly, abusive managers (co-workers, CxOs etc etc) tend to take path of least resistance and find their victims elsewhere.

      Although I guess I may be barking up the wrong tree: you said that if you want to see you go there; not that you couldn't go there without having to take all bs mentioned. :)

      --
      I like paying taxes. With them I buy civilization -- Oliver Wendell Holmes
    74. Re:Yes and No by martin-boundary · · Score: 1

      Neat. I didn't know about hopscotch hashing.

    75. Re:Yes and No by elnyka · · Score: 1

      Actually, school teaches you that. If it didn't, you were not paying attention in class.

      You make a common mistake. Teaching is not the same thing as learning. Learning is what sticks and it includes knowledge that didn't come from the "teaching" end.

      I have a hard time picturing a CS education where they didn't *teach* the difference in purposes of a hash vs a btree (unless the instructor/curriculum is atrocious.) It is such a basal, fundamental principle that it *must* come via *learning* from *teaching* (assuming a decent instructor and curriculum.)

      Knowledge: that's the sum of everything that has/should have been appropriately learned in school plus everything that has been learned at work... plus everything that can be correctly deduced/reasoned from that.

      The fact that someone thinks that it is from experience that we (should) learn when to use a hash over a btree makes me wonder what the fuck they are teaching in CS schools nowadays.

    76. Re:Yes and No by Opportunist · · Score: 1

      C'mon, you know what I meant.

      If you know what you want to do, it is usually no big leap from one language to the next. Some things (e.g. pointers) may not be available to you, others (like the whole managed code paradigm) mean you have to take certain things into consideration, but in general you're not learning something completely new, you just have to take other features and shortcomings into account.

      What I can see as a problem for old programmers is a shift in the way things are done. I know a lot of my database collegues had trouble moving towards relational databases. They really had a hard time getting to terms with the whole idea. Likewise, OOP was something old programmers were kinda hesitant to adopt when I was young and fully convinced this is the way ahead. And again I saw it how some had trouble getting used to the idea of event driven programming with the ensuing "loss of control" over your programs execution.

      In total, though, these are just tools in your toolbox. Learn to use them and use them where appropriate. Yes, that means you have to keep current with development and you can't simply quit learning new stuff because it was good in your days.

      If you're a programmer, you have to be willing to adapt and learn. Part of the job, I'd guess.

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    77. Re:Yes and No by Anonymous Coward · · Score: 0

      Which is why in the UK there are Chartered Engineers and Chartered Information Technology Professionals. One requirement for that qualification is that you commit to continual learning, another is to take responsibility for your work.

      Unfortunately the USA doesn't recognize this qualification.

    78. Re:Yes and No by Kjella · · Score: 1

      Actually, school teaches you that. If it didn't, you were not paying attention in class.

      You make a common mistake. Teaching is not the same thing as learning. Learning is what sticks and it includes knowledge that didn't come from the "teaching" end.

      I still fail to see how this is bad English. "I sent him off to boot camp because I thought it would teach him discipline. Well, it didn't." sounds perfectly natural to me. Whether that was because they no longer teach discipline or they teach it too poorly or because the person didn't have the ability to learn discipline or because the person was unwilling to learn is left ambiguous, but it establishes that the skill was not learned at that time. The grandparent goes one further and claims that if the school didn't teach you, it was because you didn't pay attention in class. This excludes a few other possibilities too like that you already knew it before going to school and thus the school didn't teach you or that you never did go to school, but the formulation is normative - you should have learned this in school, not on the job. I think the grandparent is perfectly correct and your attempts at correction mistaken.

      --
      Live today, because you never know what tomorrow brings
    79. Re:Yes and No by ucblockhead · · Score: 1

      You know, whenever I hear the complaint "they won't hire me because I don't know $ProgrammingLanguage. This is stupid, because you can learn a programming language in two weeks!" I have to wonder what they were doing in the two weeks before the interview.

      --
      The cake is a pie
    80. Re:Yes and No by MmmmAqua · · Score: 1

      engineering (which has a lot of training but minimal compared to IT)

      What kind of engineering, exactly? I'm an old CS guy, and my wife is just finishing her BS in Mechanical (Mechatronic) Engineering. The amount of training - initial and ongoing - she has had and will continue to have as long as she's working is phenomenal.

      I'm back in school for medicine, and that is the template for continuing education professions. Well, medicine and law. Anyway, I believe the continuing education needs of IT professions are really pretty lightweight. Unlike doctors (and some engineering fields [and lawyers?]), there are no formal CE requirements for working in IT. It's not like you'll lose your right to practice software engineering if you don't clock 40 hours of CE every year or two.

      --
      Arr! The laws of physics be a harsh mistress!
    81. Re:Yes and No by haruharaharu · · Score: 1

      The issue is that new applicants coming out school have more experience with .NET, Java and they key technologies that many industries are looking for today.

      Java is not a technology. It is a language and an operating environment. MVC, OO development, and separation of concerns may be viewed as technology, and they are not language specific. Really, Java isn't all that hard to deal with. If you have 20 years of C and C++ and more importantly, experience building what needs to be built, then I'd say Java is a speedbump on the way to success, not a roadblock.

      --
      Reboot macht Frei.
    82. Re:Yes and No by khallow · · Score: 1

      still fail to see how this is bad English.

      I didn't say it was bad English. It's a misunderstanding of the role of teaching and learning. Look at your example. The person in question who didn't learn discipline was probably one of many students. What if most such students learn discipline? That is, the school is mostly successful. Do they teach discipline or not because one student didn't learn discipline?

      Moving on, just because a class teaches the difference between two data structures, doesn't mean that the student understands how to use those data structures in the real world. The great grandparent simply asserts that being taught these concepts (and how to use them) in a class is sufficient to know how to use them in the real world - even though it is not so.

    83. Re:Yes and No by SpinyNorman · · Score: 1

      A large percentage of older programmers are unable to learn a new programming model. For example: Object Oriented coding.

      I hate to break it to ya, sunshine, but OO design isn't anything new, even if languages to make it easy are more so.

      Want OO design and polymorhism in 'C' or assembler? Just use a struct with pointers to functions. Things like implicitly called constructors and destructors are just syntactic sugar.

      Us old fucks aren't quite as stupid as you imagine us to be! ;-)

    84. Re:Yes and No by Anonymous Coward · · Score: 0

      good answer!! :)

    85. Re:Yes and No by smellotron · · Score: 1
      The best is when you interview someone and they say, "Oh, well [your language] is pretty much the same as [my language], so I think I can pick it up pretty quickly." I guess they talk to you after they talk to me:

      "they won't hire me because I don't know $ProgrammingLanguage. This is stupid, because you can learn a programming language in two weeks!"

    86. Re:Yes and No by haruharaharu · · Score: 1

      once you've been through a few languages, JCL, Cobol, Fortran, C, C++, Java, TCL, the next language doesn't even register as a 'new' language.

      I thought that until I looked at ruby. Sure, I can write anything at all in ruby, but the modes of interaction allowed by passing blocks around as first class objects makes for a radically different environment.

      --
      Reboot macht Frei.
    87. Re:Yes and No by haruharaharu · · Score: 1

      My old mistakes led to subtle corruption faults. My new errors lead to exceptions or simply don't happen because I make my code stupid simple. I call this progress.

      --
      Reboot macht Frei.
    88. Re:Yes and No by Anonymous Coward · · Score: 0

      > (Yes, arrogance is a requirement for a decent programmer)

      Not the exactly wording I'd choose, but yeah. I'd say more like confidence combined with some honest introspection. You need to have enough to *try*, enough to notice when you've *failed*, and enough to still get back up and try again informed by your mistakes. That's the difference between those who keep learning and those who stagnate.

      Or in slightly different words, it's similar to what I see in CS/math classes. The bad students ask for help before they've even tried the problem, or after only a few seconds, or don't ask and don't even try. The good students ask for help after they've grappled with the thing first... which means they don't often need to ask questions because the initial failure leads to the following success. Come to think of it, that was true in my music performance experiences too, and is likely true for a lot of other things in general.

    89. Re:Yes and No by inKubus · · Score: 1

      I agree 100%. It's just the framework monkeys can whip out good looking apps right quick. Sure, you're in for a surprise when you try to scale but who cares, we got a real working application in 6 months vs. 2 years!

      --
      Cool! Amazing Toys.
    90. Re:Yes and No by SamSim · · Score: 1

      Actually, school teaches you that. If it didn't, you were not paying attention in class.

      Sure, if your degree was in computer science.

    91. Re:Yes and No by Anonymous Coward · · Score: 0

      Oh wow - you have to work for Accenture.

    92. Re:Yes and No by Ubik · · Score: 1

      Definitely - the key is to have fundamental programming skills, so to be able to solve given problems by writing an efficient code. I'm running Codility, a company providing automated online tests for programming job candidates - you may want to take a demo test at http://codility.com/ yourself :).

    93. Re:Yes and No by alan_dershowitz · · Score: 1

      No, it's just different than everybody else's code by ignoring C coding standards, so it takes a huge mental context switch to work on one guy's old code. When I code in C, I code to C standards. When I code in Java, I code to Java standards. When I work for a place I adjust my coding style to the company standard. I don't just do everything the same way I've been doing it forever. You might say this isn't a COBOL thing specifically, but I have heard similar complaints elsewhere.

    94. Re:Yes and No by elnyka · · Score: 1

      That is what is taught but did they learn it? I ran into a "programmer" from a local university with a degree that had no idea what a hash was much less when to use it.

      The either he was a lame programmer or his education was lame. As I mentioned in a previous post in this thread, I learned that stuff on my second 2000-level programming class, in my second year at university. It is fundamental knowledge. The only thing more fundamental than that is control structures (structured program theorem), and the basics of structured programming and top-down design.

      Also, who cares if "they" learn it or not. Who's "they". What about you? You claim that experience is where you learn that, which I and others tells you is fundamental. Was that YOUR experience? YOUR education? If you don't have formal computer science education, that is fine. Some of the best programmers I've known never had any formal training in computer science.

      But by and large, when referring to programmers with a computer science background, if they don't know that, then they weren't paying attention, or their education was shit.

    95. Re:Yes and No by LWATCDR · · Score: 1

      I am an old programmer. Yes I did learn about hashes and btrees in school but frankly this new hire made me doubt what they where teaching in University these days.
      I have found that experienced programmers will will take a look at a task and know immediately that they should use this algorithm or that. Also from experience you tend to learn to look past the initial requirements of an application and see what a user may want in the future and design for those. Of course in a larger institution you will have a project architect that will handle that type of planing. I work in a small development house so the programmers are given a large amount of freedom and responsibility.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    96. Re:Yes and No by Bengie · · Score: 1

      My Advanced Database class teach let us use open notes/internet/books/ANYTHING except open neighbor for all homework/quizes/tests/everything.

      He said it was more important to understand the ideas and solve the problems than it was to make syntactically working code, at least for learning purposes.

    97. Re:Yes and No by elnyka · · Score: 1

      I am an old programmer. Yes I did learn about hashes and btrees in school but frankly this new hire made me doubt what they where teaching in University these days. I have found that experienced programmers will will take a look at a task and know immediately that they should use this algorithm or that. Also from experience you tend to learn to look past the initial requirements of an application and see what a user may want in the future and design for those. Of course in a larger institution you will have a project architect that will handle that type of planing. I work in a small development house so the programmers are given a large amount of freedom and responsibility.

      In that case it was the programmer's at fault for not knowing about it, or there was something missing in his education. That type of data structure and algorithm knowledge is still being taught by the time a student enters his junior years (if not before).

      But it is also the case that many CS schools (not all thank God) have turned into lame Java learning centers (they don't even teach Java right anyway).

      I know of this student who I corresponded with e-mail until recently. He graduated with a B from a 3000-level class in data structures and algorithms, and he didn't know how to use for loops. No exaggeration. I peeked at the school curriculum (his school will remained unnamed.)

      The curriculum was pathetic. Superficial teaching of Java as the first programming language, with, maybe 3 weeks of C++ at the end of the course, superficial computer org class with another 3 weeks of assembly, and then BOOM, right into data structures and algorithms. Grading is such that anyone but a lobotomized retard can pass... with a B or better. And the sad thing is that the curriculum and the requirements at that school weren't like that 15 years ago.

      The things I mentioned as basic are still taught and reinforced at good schools, but there are other schools that have turned shitty just to increase their enrollment numbers... ergo producing a shitload of people that are not qualified at all and that would have never graduated 10+ years ago.

    98. Re:Yes and No by LWATCDR · · Score: 1

      I don't think java is a terrible first language. Mine was Pascal but that was a long time ago.
      I have no idea if it was the school or the student but he also seemed to have problems with global vs local variables. He took over maintaining some code I wrote and made a total pigs breakfast of it.
      Did understand loops? Well I can not say that I am shocked.
      We had a young man in tech support that wanted to get into programing so we tried to help him. He claimed to know how to program in Foxpro. He didn't know what a prime number was.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    99. Re:Yes and No by LWATCDR · · Score: 1

      Good point. I wouldn't be shocked if I failed to get a job programing in Lisp or ADA since I don't know them.
      Right now I am learning Objective C. I think I like it better than C++ but then I never really liked C++ all that much.

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    100. Re:Yes and No by Anonymous Coward · · Score: 0

      Meh. Not learning .NET is like not learning Befunge -- it's not hard to learn (and if you know more than six languages already, you can pick it up and become competent in it in a weekend), but it isn't any better than more established languages for any given task, and it ties you to something that quite quickly will not be supported.

      Also, both are far too visual for my taste. Real men use vim -- AND LIKE IT.

    101. Re:Yes and No by wideBlueSkies · · Score: 1

      It's kind of cool when you know multiple languages / technologies.

      I started off as a COBOL guy, and eventually taught myself c/c++, Java, and Perl.

      I found that being multi-lingual was OK. -The right tool for the job, you know? But it got to the point where I was writing in COBOL and started to think in C, and just really brought some new ideas into how to structure and write a COBOL program. Got creative with arrays of tables, etc.

      And the same thing the other way around... I started thinking in COBOL sometimes when writing C programs in distributed environments... which I guess led to better program structure, and more verbose code that I'd seen in examples..especially around string/data handling. Of course C/C++ give you a LOT more options than COBOL does... but there's also something to be said for simplicity when it makes sense, and lots of self descriptive code...

      Anyone can learn a language - but it's really something when your experience from one place starts to kick in elsewhere..usually when you don't expect it to.

      --
      Huh?
  4. I've seen that happen over and over by Ralph+Spoilsport · · Score: 1

    When my last boss was 20 years younger than me, I changed professions... I'm not that old...

    --
    Shoes for Industry. Shoes for the Dead.
    1. Re:I've seen that happen over and over by HeckRuler · · Score: 2, Insightful

      Why was that necessarily a bad thing? Asshole young punk bosses aside, why do you want a boss that's older then you? Is it some old-fashioned respect to elders you demand? Do you feel passed over for that position?

      Bossing, and doing are two different things that don't have much overlap. It's good for a boss to be knowledge about what his worker bees do, but it's really not that crucial. And the skill overlap between a boss and a worker is hardly anything. Ok, sure, the skillset of a boss includes babysitting, settling disputes, wagging fingers, and sucking up to higher-ups. All sort of common sense skills that anyone could have, but not a specialty of workers. Seriously, why the hell do people stop doing good work and become bosses. Why isn't there a bachelors degree in management with entry level boss positions. Why are bosses paid more?

      Inertia isn't reason enough.

    2. Re:I've seen that happen over and over by Ralph+Spoilsport · · Score: 1

      Well, not that emotional maturity and numerical age are correlated in a direct manner (I've known plenty of elderly idiots who were narcissistic crybaby jerkoffs) but there is something that happens with experience (on one end) and the classic "grey hair" syndrome in group sociality. Not that an older person is necessarily more experienced, but they tend to be so. And no, i did not get "passed over" for the job - I honestly didn't want it. what I saw was this: you do coding long enough and people burn out on it and often want more responsibility and control over a product. They emotionally invest in a system and attach to it and want to do more than just code. So they turn 40, look around, realise being the boss sucks, and then get sacked for being old and expensive. It's not just coding - it's also graphic design. You don't see a lot of older people doing design production work - they tend to either become art directors or find some other job. you ask "why are bosses paid more?" No idea - I'm with you on that one. I always found that irritating as well. But I'm an old commie pinko mutherfarker. I think people who dig ditches and pick fruit should be the highest paid people. But that's me.

      --
      Shoes for Industry. Shoes for the Dead.
    3. Re:I've seen that happen over and over by Anonymous Coward · · Score: 0

      Microsoft has entry level boss position, and they're still set to take over the world.

    4. Re:I've seen that happen over and over by cusco · · Score: 1

      Indeed. Management skills don't necessarily have anything to do with technical skills. A couple of the best bosses that I've had really didn't have a clue what it was that I did. They just knew that the customers were happy so they stayed the hell out of my way until I asked for their assistance with something. One was younger, one was older, I didn't really care as long as they didn't try to micromanage.

      --
      "Think about how stupid the average person is. Now, realise that half of them are dumber than that." - George Carlin
    5. Re:I've seen that happen over and over by russotto · · Score: 4, Insightful

      Seriously, why the hell do people stop doing good work and become bosses. Why isn't there a bachelors degree in management with entry level boss positions. Why are bosses paid more?

      The bachelor's degree in management exists (the Bachelor of Business Administration, known from the expression "The limit as GPA approaches 0 of the Computer Science Student is the Business Student"). But to get an entry level boss job without experience you usually need the MBA. Knowing the owners/board members/executives doesn't hurt either.

      Why are bosses paid more? Well, because they're bosses. They're making the decisions on salaries.

      Fact is, positions where you _do_ something will always be at the bottom of the hierarchy. To be a "higher up", you have to be higher than someone -- those who report to you. So unless you want to be on the bottom forever, basically just doing what you're told and with no real input into any corporate decisions, you have to go into management. Or into business for yourself.

      Militaries make this explicit: you can be the best infantryman, combat engineer, tank driver, or whatever, but it doesn't matter; you're still an enlisted person and you still have to grovel to the most junior officer (manager) in the service. It's the same way in the corporate world, they're just less obvious about it, and there's more mobility from grunt to manager in most cases.

    6. Re:I've seen that happen over and over by Opportunist · · Score: 1

      The problem being?

      My current boss is about a decade younger than me. So? He is a great businessman, knows the latest and greatest PR scam... I mean, tricks and is generally a great blend of business and marketing. It just so happens that he also owns the company and his signature is on my paycheck.

      Don't judge people by age. I know 20 year olds that are more valuable than 40 year olds and 60 year olds that no 30 year old can hold a candle to. Detach yourself from the idea of "age == knowledge". We could talk about age == wisdom and "life experience", but even that is no longer really true. You can easily have 30 year olds that have been through more than ten pampered 60 year olds together.

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    7. Re:I've seen that happen over and over by An+ominous+Cow+art · · Score: 1

      Wait, isn't the lowness of one's Slashdot UID the only valid indicator of skill and experience? If not, I really need to rework my resume.

    8. Re:I've seen that happen over and over by Anonymous Coward · · Score: 0

      Patently false on the military comparison. 2nd Looies who lock up the SMAJ for a perceived offense might have a brief moment in the sun, but just like Icarus.

    9. Re:I've seen that happen over and over by Toad-san · · Score: 1

      "Militaries make this explicit: you can be the best infantryman, combat engineer, tank driver, or whatever, but it doesn't matter; you're still an enlisted person and you still have to grovel to the most junior officer (manager) in the service."

      Heh heh ... you've obviously never met a sergeant major and watched his relationship with a junior lieutenant. But I digress ...

      Toad-san
      (retired SGM)

  5. Over 40 is "elderly"? by Anonymous Coward · · Score: 1, Funny

    Congratulations, Ian Lamont! From now on, whenever I see a resume with the name "I. Lamont" on it, it's going straight to the trash.

    1. Re:Over 40 is "elderly"? by Anonymous Coward · · Score: 1, Informative

      Congratulations, Ian Lamont! From now on, whenever I see a resume with the name "I. Lamont" on it, it's going straight to the trash.

      You'd probably be better off tossing out resumes from Lisa Schmeiser since she's the one who originally used that particular verbiage. Then again, I wouldn't expect someone to pay attention to details before deciding to scapegoat someone.

    2. Re:Over 40 is "elderly"? by Anonymous Coward · · Score: 0

      Actually, 40 is the cutoff age for ADEA protection against age discrimination.

      It used to be that their was an upper age limit (meaning that you could legally discriminate against a 95 year old in employment), but there isn't any more.

      You can still discriminate against 39 year olds though.

    3. Re:Over 40 is "elderly"? by methano · · Score: 5, Funny

      Congratulations, Anonymous Coward! From now on, whenever I see a resume with the name "A. Coward" on it, it's going straight to the trash.

  6. My own two cents' worth by garg0yle · · Score: 3, Insightful

    Not only are younger coders generally cheaper, they also generally are more into the "new technologies" -- as a programmer gets older, it becomes almost a second job to keep up with the new technology as it comes out, and at some point I suspect that many just decide it's easier to get off the carousel and go find something else to do.

    As an example, if you've been coding in COBOL for 20 years, Java can be an awkward language to learn. However, many new grads in the last 10 years learned Java as their first language. As such, even though the senior coder probably would perform better in the long run (due to more experience with designing efficient algorithms and more knowledge of internal business processes), management would likely hire a couple of recent grads rather than pay to have our COBOL programmer trained in Java.

    --
    Modding "-1, Troll" is not a proper response if you disagree with me. Try reason.
    1. Re:My own two cents' worth by base3 · · Score: 1

      . . . I suspect that many just decide it's easier to get off the carousel and go find something else to do. [emphasis mine]

      I think the issue is that the over-40 coders are being asked to get on the carousel.

      --
      One CPU cycle wasted on digital restrictions management is ONE TOO MANY.
    2. Re:My own two cents' worth by jythie · · Score: 2, Informative

      Besides new technologies, one also needs to keep up with the current flavor of 'one true way' programming. Multi-paridigm programmers are increasingly being seen as warped or 'in need of training' since they can *gasp* see value in something other then the current snapshot of how OOP is done. Experience and perspective become detriments unless one knows which current fad to focus on and which ones you are supposed to say have no value.

    3. Re:My own two cents' worth by ShieldW0lf · · Score: 1

      The information technology business has a low barrier to entry. Anyone who has experience in IT can buy all the tools needed to solve problems independently. Older people with experience who know what they are doing get sick and tired of being told what to do by morons whose skill set amounts to kissing the ass of investors and dumping on staff. Therefore, there is no reason for experienced IT workers to continue to have a conventional job. The only reason to take a conventional job is if you don't have any skills and need direction, or don't have any tools and can't use the knowledge you have effectively for that reason.

      --
      -1 Uncomfortable Truth
    4. Re:My own two cents' worth by kscguru · · Score: 1

      management would likely hire a couple of recent grads rather than pay to have our COBOL programmer trained in Java.

      I can't fault management for not wanting to pay for retraining. A couple of recent grads who already know Java (that is, learned on their own time while racking up college debt) versus a COBOL programmer who wants to be retrained on the company dime? Retraining may work out, but one of those recent grads may turn out to be just as talented in about the same time span as it takes to retrain in Java and become proficient - it's a very hard business trade-off to make. It's not just about experience - both experience and staying current matter, and recent grads are "born" current.

      Now, a COBOL programmer who teaches himself - takes night classes, or spends a few months hacking around on open source projects in the evenings - that's somebody valuable. Good programmers stay current, either as an off-work hobby, or by involving new technologies and using them in ancillary roles, or by periodically taking classes. I script in Python to support my C programming, I have C-programming colleagues who become proficient in JavaScript/SQL by writing websites to aggregate statistics generated by their C code, all of this in support of our primary jobs; and while the code is not as excellent as primary code, it is a base of experience AND allows our years of experience in one language to show as good results in another language. It's a matter of initiative to justify and get that training (whether hobby, ancillary work, or courses) before it becomes necessary - and an experienced programmer is exactly the sort who should be able to see ahead and anticipate the need.

      Most professions that change rapidly have a mandatory number of hours of coursework to retain professional certifications - CPAs, medical professionals, lawyers, and so on. Even my father, an environmental regulator, takes regular classes to stay current. If software professionals want to be treated as professionals and valued for their experience, software professionals need to act professional and put in effort to stay on that carousel. (I admit that getting a manager to pay for this professionalism is more difficult - but I also note that a lot of good programmers still find a way, even if it means sacrificing non-work time.)

      An employer that won't pay for training in new technologies isn't a cause to leave the industry; it's an excuse, the sort of excuse that good programmers who do stay in the industry do not make.

      --

      A witty [sig] proves nothing. --Voltaire

    5. Re:My own two cents' worth by jeff4747 · · Score: 1

      I think you vastly overestimate the difficulty in learning new languages.

      Learn C++. Once you've done that, you can program in C, C#, Objective-C, php, perl, Java, Python, VB and a lot of other languages after about a day of learning syntax.

      Unfortunately, non-technical folks don't know this, so they can make stupid hiring decisions. Young geeks also overestimate the difficulty, because they've only learned 1 or 2 languages. It gets easier each time you learn a new language, especially since most of the 'hot' languages are based on previous languages. (ex: Java evolving from C++)

    6. Re:My own two cents' worth by Zecheus · · Score: 1
      A developer who picked up java ejb in 2000 at the age of 30 is now 40. How would your two cents count for this colleague?

      There is an assumption that people over 40 are programming only mainframes. This is false.

      I'm short of 50 by three years. I never wrote a stitch of cobol. 25 years ago I fixed on unix, data communications and C. Today, its linux, data communications and Java (not really a big jump).

      To les infants: settle on a core technology for your career and be careful about investing too much in a knowledge domain that has a short shelf-life. If you have trouble deciding, remember the adage about entering the restaurant business: People will always have to eat.

      Salutations from the Assisted Programming Home.

    7. Re:My own two cents' worth by flaming+error · · Score: 1

      > As an example, if you've been coding in COBOL for 20 years,
      > Java can be an awkward language to learn

      Where did you get that idea? Been there, tried that?

      The OO paradigm is just a way to organize code. You can implement an OO design in COBOL or Assembly or C or Perl.

      Programming languages are - like a car. They get you from point A to point B. For a particular job, some cars may be better than others. But if you're a good driver in a pickup truck, you'll probably still be a good driver in a mini Cooper, even if you might need to refer to the Owner's Manual sometimes.

    8. Re:My own two cents' worth by Richard+Steiner · · Score: 1

      Freelancing as a software developer is fine as long as your existing skills are in demand, and as long as companies are hiring consultants in your particular area of technical focus.

      However, I know a fair number of folks who have crashed and burned trying to do that.

      Sometimes it's more fun to play within the confines of a larger organization, if only because of the interesting problem sets and complex environments that such places can provide.

      --
      Mainframe/UNIX Bit Twiddler and long time Windows/Linux Hobbyist.
      The Theorem Theorem: If If, Then Then.
    9. Re:My own two cents' worth by Mongoose+Disciple · · Score: 1

      I think you vastly overestimate the difficulty in learning new languages.

      Learn C++. Once you've done that, you can program in C, C#, Objective-C, php, perl, Java, Python, VB and a lot of other languages after about a day of learning syntax.

      Speaking as someone who did learn C++ first and has done work in most of the other languages you list since...

      What you're saying is technically true, yet misses a bigger picture.

      Being a good/experienced Java (or whatever) developer isn't just about being able to write Java code or knowing the Java language and syntax. You're right, that part is easy for someone who knows any similar language. The much harder part, or at least, the part that rarely translates for shit, is knowing all the standard libraries, frameworks, best practices, etc. that have grown up around the languages.

      A developer who knows C++ and not Java can be working on, let's say, a Java web project using something like Spring, JSF, and Hibernate (or whatever) and writing code in a day. What he won't be doing in a day is writing very good code, or at least, as good of code as someone who has a few years experience with those frameworks. Until he gets up to speed, which won't happen in a day, he'll make subtle mistakes or write 100 lines of difficult to understand code when 1 line properly leveraging the framework would have sufficed and been much more readable/maintainable.

      There are other kinds of painful context switches as a developer, too. A good developer who tends to write custom desktop applications for businesses is going to (correctly) prioritize very different things writing his code than someone who works on embedded devices, heavy-traffic consumer-facing web applications, or video games. In each of these cases a developer new to these things will probably spend a lot of effort on things that matter very little, and not enough on things that, for the task at hand, matter a lot.

      So, yes, moving from language to language isn't hard, but it isn't the whole story, either.

    10. Re:My own two cents' worth by ClosedSource · · Score: 1

      I don't get all this talk about COBOL with respect to developers in their 40's or 50's. Most developers in that age group worked on PCs or embedded systems, not mainframes.

    11. Re:My own two cents' worth by mikael · · Score: 1

      The problem is that coding career paths are frequently diverging ...

      1980's you would just need to learn C and 80x86, 680x0 or SPARC assembly language to get a real-time systems programming position (VxWorks might help too). X-windows/Motif or Windows would get you a GUI development position and X.25 would get you a telecoms position.

      1990's, you would need to know C++, design patterns, multi-threading, Windows MFC, and OpenGL to get a GUI position. For a real-time position you would need to know MIPS assembly language plus the relevant hardware

      For a GUI development position now, you need to know Java / C++, design patterns, multi-threading, CUDA, GPU shading languages (OpenGL/DirectX), Windows API's (.NET) as well as the state-of-the-art in rendering methods.

      --
      Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
    12. Re:My own two cents' worth by ClosedSource · · Score: 1

      "Therefore, there is no reason for experienced IT workers to continue to have a conventional job."

      Things like eating seem to be good reasons to me.

    13. Re:My own two cents' worth by ShieldW0lf · · Score: 1

      I wasn't really talking about being a consultant. I was talking about being an entrepreneur. If you've got 20 years experience as a miner, you're probably still not going to have the cash to buy modern mining equipment and a mine. If you've got 20 years experience as a programmer, chances are you can afford to set up all the tools you need to get started in a spare bedroom.

      --
      -1 Uncomfortable Truth
    14. Re:My own two cents' worth by jeff4747 · · Score: 1

      The much harder part, or at least, the part that rarely translates for shit, is knowing all the standard libraries, frameworks, best practices, etc. that have grown up around the languages.

      That's what documentation is for. Seriously, you know you want something that looks like a queue, it really doesn't take long to find what a particular language calls it.

      What he won't be doing in a day is writing very good code, or at least, as good of code as someone who has a few years experience with those frameworks.

      Frameworks != languages. My post only covered the basics of the language. You'll indeed need additional time to get familiar with the frameworks involved. But it's still not hard. If you're actually experienced, reading one O'Riley book will do.

      In each of these cases a developer new to these things will probably spend a lot of effort on things that matter very little, and not enough on things that, for the task at hand, matter a lot.

      This has nothing to do with the languages involved. Both projects could be in C++ and you could make the same statement.

      However, I believe it's an erroneous statement. One of the benefits of experience is that you learn how to recognize what's a bottleneck and what's not - regardless of the language involved or the problem that is being solved. If you don't instinctually know what parts of your program are going to be hit over and over and over again, no matter what the subject, you're not experienced (or the design is some opaque blob in the architect's head & he won't share)

    15. Re:My own two cents' worth by fahrbot-bot · · Score: 1

      Not only are younger coders generally cheaper, they also generally are more into the "new technologies" ... As an example, if you've been coding in COBOL for 20 years, Java can be an awkward language to learn.

      I don't know why people keep using this for an example. I've been an application/system programmer *and* system administrator (Unix and Windows) for 25 years. I've worked on almost every Unix platform known to man and program in 10+ languages. I learned Java nine years ago in about an hour. I am still the one who gets the "hard" problems to solve because, quite frankly, the younger coders don't have the experience, background or (often) the energy to solve them through - and a five-minute Google search doesn't count as effort.

      --
      It must have been something you assimilated. . . .
    16. Re:My own two cents' worth by bmajik · · Score: 1

      I actually think that its less about learning a specific technology and more about the technologies that you grew up with and took for granted, and which influenced your mental development.

      One of the iphone jail breakers was like a 15 year old kid.
      There is at least one US university that is teaching software reverse-engineering courses.

      Pulling off these whole-system type hacks is a different way of thinking with a different set of skills.. and the ability to "go deep" as necessary but with a reliance on mature tools in many related areas.

      There's an older guy I used to work with that in the early 80s... built his own single-board computer out of discrete components. That guy clearly understands enough about hardware and software and everything inbetween to do the conceptual "same thing" as jailbreaking an iphone.

      But I don't suspect he'd be able to pull it off. The complexity of a modern device at any spot you look is orders of magnitude higher than what he was used to working with.

      Similarly, I don't think any of the iphone jailbreakers can, unless they've had some reason to try in the past, build a working computer out of discrete electronic components. Yet "finding the JTAG" and other such tricks are just something they can understand and use at a level of understanding sufficient for their goals.

      Each new generation of computer folks stand on the shoulders of what came before. But as our levels of abstraction continue to shift ever higher... the types of problems we tackle are wider and shallower, asking us to go deep only where necessary in thin vertical columns.

      I can understand the concepts behind hacking an iphone. But circumventing consumer hardware wasn't popular when I was growing up. The level of electronic and software complexity then was much lower than it is today. Right now I'm working with something called "MEF", which is a runtime dependancy injection framework for managed code. When something goes wrong in MEF I honestly have no __idea__ wtf the problem OR fix is, because there are moving parts here that are hidden away from me. I don't understand where to try and look deeper and what lens to look through, and as such, the whole box is opaque and frustrating to me.

      I grew up in the days of static linking, reading data from files, and doing single-step debugging through every instruction that the processor got fed [if you needed to]. The Borland IDEs. When I work in any system where I cannot relate it to these techniques that I developed my knowledge and experience around, I get frustrated -- "the usual things no longer apply".

      I really think that for many people, the level of technology you grew up with is what remains your comfort zone for the rest of your life.

      People that want to remain "in industry" for an extended basis will probably need to re-create the time and activity commitment they had during their "intense immersive learning phase" on a re-occuring basis in order to re-center their thinking around present-day techniques and cultural uses of software.

      But it simply isn't realistic for me to spend 5+ hours every day hacking at home like i did from middle school until the end of college. And I suspect that's the case for most people. I'd guess that 35 is probably the inflection point for software engineers, and if people develop their thinking in their highschool and university years as a rule, that age will probably stay put.

      --
      My opinions are my own, and do not necessarily represent those of my employer.
    17. Re:My own two cents' worth by Max+Romantschuk · · Score: 1

      Not only are younger coders generally cheaper, they also generally are more into the "new technologies" -- as a programmer gets older, it becomes almost a second job to keep up with the new technology as it comes out, and at some point I suspect that many just decide it's easier to get off the carousel and go find something else to do.

      I believe that the 'true hacker' type of programmer is driven by passion. A passion to make great software. A passion to learn new things until the very end. Without the passion there just isn't enough motivation to keep learning new skills, constantly asking yourself the question: "Could this be done better?"

      I've met programmers who code for a living, and I've met programmers who have made a living of what they want to do anyway: To code.

      The latter always outperform the former.

      --
      .: Max Romantschuk :: http://max.romantschuk.fi/
    18. Re:My own two cents' worth by IICV · · Score: 1

      Meh, screw you guys. I had to learn the rudiments of not only Ruby, but the huge and ridiculously magical framework that is Rails in about two weeks for a class. I had to learn Haskell well enough in three weeks to write a compiler from a silly little toy programming language to a stack-based Forth-like virtual machine. Hell, I had to learn Forth well enough to write a compiler for it, while figuring out Haskell! I had to learn fucking emacs because vim wasn't installed on the lab computers and I couldn't install it myself.

      Learning a new programming language is easy. Learning a new language paradigm is harder, but you only have to do it four or five times.

      Learning how to program, now that was hard. Once you've done that, the rest is easy. People who only know one language are like carpenters who only know how to use a hammer - they miss the point of their art. A carpenter is not a guy who uses a hammer, he's a guy who makes stuff with wood. A programmer is not a person who uses a programming language, she's a person who makes stuff with language.

    19. Re:My own two cents' worth by raybob · · Score: 1

      True about OO being an organizing method for code, but said in a way that seems to be from outside the OO point of view. For instance, OO also enables code reuse and the construction of useful frameworks, for instance having supported the organic growth of the Java classlibs, frameworks, etc..

      Also, along with OO is the event-driven paradigm, which alot of geezers (and I'm a geezer, too) have a hard time with.

    20. Re:My own two cents' worth by Abcd1234 · · Score: 1

      Learn C, Smalltalk, and Lisp. Then you can use all of the above, as well, will have a breadth of knowledge in the major programming paradigms, and as a bonus, you can avoid the hideous monstrosity that is C++. *shudder*

    21. Re:My own two cents' worth by Anonymous Coward · · Score: 0

      Plus it's fun to see the look on that java developers face when he has to shift on an unsigned type. bwaahaaaaa

    22. Re:My own two cents' worth by TheRaven64 · · Score: 1

      Learn C++. Once you've done that, you can program in C, C#, Objective-C, php, perl, Java, Python, VB and a lot of other languages after about a day of learning syntax.

      Ugh, please don't. C++ uses a Simula-style object model. Java and Objective-C use a Smalltalk-style object model, Python and PHP are a mess, no idea about Perl or C#. If you try to write Simula-style code in a Smalltalk-like language, you will end up with something painful to read. I've seen it done, and had to try to fix it. If you try to write Smalltalk-like code in a Simula-like language, the result isn't nearly as bad.

      --
      I am TheRaven on Soylent News
    23. Re:My own two cents' worth by DrCode · · Score: 1

      Most 'old' programmers were programming in C++, which has been in common use for 20 years. Going from that to Java is not that big a stretch. Around 1997, I got hired at a startup to write a parser in Java (...yes sounds strange), and had little trouble picking it up from scratch. A few years later, I couldn't get an interview with any companies looking for Java developers because I only had the one year of experience.

    24. Re:My own two cents' worth by Anonymous Coward · · Score: 0

      Yeah, I hate those Ruby assholes sometimes. They're able to whip out simple apps in no time but then someone needs to scale it or needs it to run on a different platform, etc etc. That's when they freeze up or quit and leave me to fix the mess.

    25. Re:My own two cents' worth by haruharaharu · · Score: 1

      Frameworks != languages. My post only covered the basics of the language. You'll indeed need additional time to get familiar with the frameworks involved. But it's still not hard. If you're actually experienced, reading one O'Riley book will do.

      When people talk about Java, they mean language + some framework. It takes time to come up to speed on JSF and swing, et al.

      --
      Reboot macht Frei.
    26. Re:My own two cents' worth by Anonymous Coward · · Score: 0

      The programmers that will be the most valuable as time moves forward are the ones that you don't have to train on new technologies and languages, because they don't consider learning them to be a second job. I personally love learning new technologies, and consider it a matter of personal as well as professional pride to keep my skills current.

  7. Career path by jdgeorge · · Score: 3, Insightful

    As others have already noted, the career path of technical people often moves beyond "just programming" at some point. By the time folks have reached 40, they've (hopefully) got a good sense of how to make good decisions about what products and features to develop and how, not just how to write efficient code.

    While some of the technical leaders in my area do write some code, the bulk of what they are needed for is making decisions about what we ought to be doing, and providing guidance for the younger programmers or ensuring quality communication with other lead developers.

    1. Re:Career path by Anonymous Coward · · Score: 0

      By the time folks have reached 40, they've (hopefully) got a good sense of how to make good decisions about what products and features to develop and how, not just how to write efficient code.

      The knowledge useful for choosing what product or features to develop has pretty much fuck-all to do with knowing how to do code well or architect a program. The person in charge at the design level and the person in charge at the administrative level just need a rough estimate of how much it'll cost to develop particular software or features.
      BR You rarely see mechanics being put in charge of the make-up of a car companies' offerings, or what features to add to specifics vehicles.

    2. Re:Career path by ClosedSource · · Score: 1

      Look at the number of leaders or managers vs. the number of developers. Clearly the majority of young developers aren't going to "grow up" to be leaders because there isn't room for them.

      The handwriting is on the wall - being a developer isn't a viable long-term career. When you're thirty start to plan your new career so you'll be ready before the trap-door opens.

    3. Re:Career path by scamper_22 · · Score: 1

      This is natural. As it is in many industries.

      However, one key facet of software IS the lack of such technical leaders. Sure, there are some if you work for some of the larger names like Microsoft or Cisco.
      But in general, there is not. Even in these companies the attitude is there in some departments that experience is nothing. The idea of throwing people at projects...

      Other fields have true professions where this is accounted for. Lawyers have associates and part of their billing actually includes the reality of training the new associate.
      Ditto for other professions.

      Software unfortunately, has not developed in such a manner... for a few reasons.

      1. hyper innovation - since there are no barriers to entry in the software field, we've had innovation up the ying yang. So much knowledge is temporary that there is no point in formally learning anything.

      2. the supersmart - This is related to 1. We all recognize that a great programmer is about 1000x times more productive that a poor one. The field was lucky to have very smart people going into it. A smart person can pick up things insanely quick. Doesn't matter what profession they go into. This made hyper innovation possible as you didnt really need to train people when you have the best and brightest going into it. Contrast that to now... the talented under 30s are rare and few and far between. The best and brightest know it is a bad field and are staying away...preferring law, medicine, finance... the more usual protected professions.

      3. People don't get software. I've always said, there is no implementation phase in software. The compilers take care of it. It is 100% design. Just high-level and low-level design. People that don't get this tend to veer off thinking that software is dummy work. The equivalent of construction work. The real work is in product management and other documents. The source code is the blue print. Related to 2.... they will find out how wrong this is as the 'super smart' no longer enter the field. Or they will just go to India and China and burnout all their super smart people... eventually it will end. Right now, I'm seeing a future (present in some companies) of bunch of C student business like product managers with c student programmers and nothing gets done.

      4. Software is largely not owned by its workers. Doctors are independent. Lawyers independent. The big finance/accounting firms are largely partnerships...
      They know how to run their field. Software is largely a business product and as such suffers from this. Some companies better than others. Both Microsoft and Google give a large degree of autonomy to software. In the end though, they are still just things for business to use.

      In any case, there are more reasons, and I think these problems are self-correcting. The poorly run companies will die out. Unable to keep up with change. The companies that hold onto and value and build talent will thrive.

    4. Re:Career path by jdgeorge · · Score: 1

      By the time folks have reached 40, they've (hopefully) got a good sense of how to make good decisions about what products and features to develop and how, not just how to write efficient code.

      The knowledge useful for choosing what product or features to develop has pretty much fuck-all to do with knowing how to do code well or architect a program. The person in charge at the design level and the person in charge at the administrative level just need a rough estimate of how much it'll cost to develop particular software or features.
      BR You rarely see mechanics being put in charge of the make-up of a car companies' offerings, or what features to add to specifics vehicles.

      Hmmm. Engineers design cars, Mechanics (hopefully) repair them.

      The current president and CEO of Ford Motor Company is an example of an engineer whose career path led him to do exactly what you imply he could not.

    5. Re:Career path by butlerm · · Score: 1

      Software is largely not owned by its workers. Doctors are independent. Lawyers independent. The big finance/accounting firms are largely partnerships...

      That is not an apples to apples comparison. Software doesn't have to be owned by its workers, but it often helps to be developed by independent firms where programmers (hopefully) have a broader variety of experience.

      Unfortunately, if software development was billed out at $250 an hour, the way a lot of legal work is, nothing would ever get done. Unlike attorneys, most of whom we could do without, software development at rates like that would kill the economy.

      Of course, most companies can't handle the idea of paying more to experienced software consulting firms than they pay for apprentice plumbing or car repair work. I have been an independent contractor for virtually all my working life, and the idea among clients that a consulting agency should charge more than 10% markup on the per hour cost of an a full time programmer of average ability (let alone an entry level code monkey) is pretty rare. If you do come on site, all the employees that you are not actually making much more than tend to resent (if not ostracize) you based on poor assumptions of what your billing rate translates to in any case.

      One thing that would help would be to end the practice of granting non-taxable benefits that don't actually show up on the W-2 at the end of the year, and require companies to list employees actual compensation costs, all benefits and taxes included - pensions, health care, employers share of social security, workers comp, etc. There are a lot of employees (especially in government and unionized jobs) who are compensated nearly twice as much as what is indicated on their W-2.

  8. Programming has Changed by happy_place · · Score: 0

    The nature of programming has changed. When 40+ year olds were going to college or studying, OOP was in its infancy, and even functional programming was more about clever algorithms on limited hardware, where optimization mattered, rather than programming interfaces and patching together APIs with a zillion features, connecting with some database somewhere else, etc.

    --
    http://www.beanleafpress.com
    1. Re:Programming has Changed by Anonymous Coward · · Score: 2, Insightful

      No really. A good programmer should be about to apt to any language or hardware. The examples you give show the typical "young guy's" view of programming, that is "every type of programming is just like my PC and I and always use the language and tools I choose." Where I work we use dozens of languages, multitudes of hardware types, and various coding practices (real-time, safety critical, OO, etc.). Sometimes we are called on to update or upgrade systems running on obsolete hardware, using obscure languages like Jovial, and tools that are 20+ years old. Your run-of-the-mill Java Boy just out of school can't do that.

    2. Re:Programming has Changed by Ltap · · Score: 1

      Which might be a good thing. Most third-party Windows apps are a good sign of how lazy some programmers get about optimizing their code, such as an AV app that takes up 100mb of disk space, etc. Games can be discounted, because most of the space taken up is by images and AFAIK game devs compress as much as they can.

      "Oldies", or just people who keep a better eye on efficiency, tend to do much better as firmware programmers, because most embedded systems require very good code to be written for them and for it to be written well the first time.

      --
      Yet Another Tech Blog
      (but so much more, including game and movie reviews)
      http://yanteb.peasantoid.org
    3. Re:Programming has Changed by Animats · · Score: 1

      The nature of programming has changed. When 40+ year olds were going to college or studying, OOP was in its infancy, and even functional programming was more about clever algorithms on limited hardware, where optimization mattered, rather than programming interfaces and patching together APIs with a zillion features, connecting with some database somewhere else, etc.

      Yes. It's been a long time since I needed to look in Knuth's "Fundamental Algorithms" for an algorithm. All the standard algorithms have been coded now, and you can find an implementation easily. Because of this, the underlying math a programmer needs has changed. Statistics and number-crunching are more important; logic and combinatorics are less important.

    4. Re:Programming has Changed by Cajun+Hell · · Score: 2, Insightful

      When 40+ year olds were going to college or studying, OOP was in its infancy

      Sure, but what do you think 40+ year old programmers have been doing for the last 20 years? We might not have been taught OOP but we've been using it since the guys who were taught it, were in diapers.

      --
      "Believe me!" -- Donald Trump
    5. Re:Programming has Changed by ClosedSource · · Score: 1

      I think it's more accurate to say that programming is a dying art being replaced by software integration.

    6. Re:Programming has Changed by TheRaven64 · · Score: 1

      I'd agree that you don't need to look at Knuth much anymore, but not because his algorithms are implemented so much as because they're irrelevant. Knuth talks a lot about algorithmic complexity, but these days the best and worst algorithms that you can choose from are in the same complexity class and if you care about performance then things like locality of reference for efficient cache usage and avoiding lock contention in concurrency are important. Knuth will give you the theory of hash tables, for example, but he won't tell you about hopscotch hashing. Pick a slightly newer algorithms book and it will tell you how wonderful skip lists are - and not mention that they have terrible cache performance on the CPUs that became popular after the book was published.

      If performance isn't critical, then there isn't much difference between a decent red-black tree and whatever your standard library gives you for ordered collections of generic objects. If performance is critical, you are better off reading recent research papers than any textbook, because the architectures change enough over a decade that the performance characteristics of algorithms change.

      I made some of my PhD supervisor's code around 50% faster by undoing a lot of his optimisations. They made sense on the PDP-11 where he'd learned them, but on modern hardware they were preventing the compiler from generating good code.

      --
      I am TheRaven on Soylent News
  9. ageism by spineboy · · Score: 3, Interesting

    And it's present in many industries/areas. No one wants anyone over 40 for rock, screen writers are ignored if they're over 40, since "They don't know what it's like to be a kid."
    The list goes on.

    In programming, I think it's foolish. People are getting caught up on the techniques, and not the theories. Unfortunately, techniques become quickly dated, and irrelevant, while theory always will be useful

    --
    ..........FULL STOP.
    1. Re:ageism by Monkeedude1212 · · Score: 1

      Problem is that there are some blurs between what is theory and what is technique - for example, would you consider object oriented programming a theory or a technique? It's a little bit of both. C# will become dated, so I'm not going to spend my life just in that field, but how long until Object Oriented is replaced by something even more versatile? Or when it evolves past inheritance into something more fluid rather than structured? As computers get more powerful more implicit styles can be adapted, more cross referencing and multiple inheritances.

      I have very little doubt that -EVERYTHING- I learned in school will be out-dated by the time I am 40. 20 years from now, programming will be different. Like 20 years ago compared to today, only more exagerated.

    2. Re:ageism by Locke2005 · · Score: 1

      No one wants anyone over 40 for rock... Apparently the Rolling Stones and The Who didn't get the memo.

      --
      I've abandoned my search for truth; now I'm just looking for some useful delusions.
    3. Re:ageism by mcgrew · · Score: 1

      No one wants anyone over 40 for rock, screen writers are ignored if they're over 40, since "They don't know what it's like to be a kid."

      You would have to be pretty damned stupid to think that a geezer was never a kid.

      In programming, I think it's foolish.

      Not just in programming, in any endeavor.

    4. Re:ageism by Lord+Ender · · Score: 1

      In my experience, there is lots of ageism, but in the other direction.

      How many job postings are there for Junior IT or developer positions? Almost none. And for "Senior" positions? Almost all of them require many years of experience.

      That's discrimination against the young.

      --
      A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
    5. Re:ageism by Dragoness+Eclectic · · Score: 1

      No one wants anyone over 40 for rock

      Those guys who played the half-time show at the Superbowl beg to differ...

      --
      ---dragoness
    6. Re:ageism by mattsucks · · Score: 1

      And it's present in many industries/areas. No one wants anyone over 40 for rock, screen writers are ignored if they're over 40, since "They don't know what it's like to be a kid."

      Great. Just great. I'm a 45-yo software enginneer/programmer/musician/playwright. I'm so fucked I might as well just give up now and move back to the farm.

      </s>

    7. Re:ageism by elrous0 · · Score: 1

      They got grandfathered in.

      Literally

      --
      SJW: Someone who has run out of real oppression, and has to fake it.
    8. Re:ageism by Anonymous Coward · · Score: 0

      It's often unnecessary for a company to publicly post openings for entry-level positions. They can fill those positions with a handful of warm bodies from a couple of college "career days", through college placement offices, or the occasional direct offers to former student interns. Plenty of young & inexperienced people are being sought and hired - just not so much through monster.com, headhunters, or the local classified ads.

      - T

    9. Re:ageism by thetoadwarrior · · Score: 1

      Some 40+ people must know what being a kid is like since they're writing a lot of the shit pop songs we have to put up with.

    10. Re:ageism by thetoadwarrior · · Score: 1

      Someone needs to tell AC/DC that the elderly dancing around in a school boy's uniform (especially with his shirt off) is not something anyone wants to see.

  10. It is age discrimination by royallthefourth · · Score: 3, Insightful

    The summary says that it's not merely age discrimination, then goes on to say that they hire younger workers because they are cheaper, without bothering to account for experience.
    That is age discrimination.

    What a horrible, stupid summary.

    1. Re:It is age discrimination by alan_dershowitz · · Score: 1

      If this were a thread about H1B, people would be screaming about how Americans won't work AT THAT PRICE POINT. Devil's advocate, why won't older workers work at that price point? One place I've worked at hired a number of older workers who had made career changes late in life, and came in older but not really experienced. If I looked at our hiring practices it was obvious that they were trying to get a diverse workforce (nothing inherently wrong with that) so it would be really hard to say that we were being discriminatory.

      It seems like in a bad economy the _very_ experienced software designers and architects (often older) get screwed because nobody wants to pay that much and are cutting back on the really far reaching products that need that level of talent. That's where I think we are right now.

    2. Re:It is age discrimination by stefanlasiewski · · Score: 1

      Devil's advocate, why won't older workers work at that price point?

      Because there is often another employer willing to hire at a higher price point.

      I hear many people complaining about H1B workers, but I have yet to run into a conflict myself after 13 years in this industry (I'm also not over 40).

      I could be wrong, but H1B workers seem to work in many of the low-level and entry positions. Workers over age 40 often aren't applying for those positions.

      --
      "Can of worms? The can is open... the worms are everywhere."
    3. Re:It is age discrimination by russotto · · Score: 1

      I could be wrong, but H1B workers seem to work in many of the low-level and entry positions. Workers over age 40 often aren't applying for those positions.

      Employers often think quantity makes up for quality when it comes to H1Bs and outsourced programmers. They think hiring a whole bunch of dirt-cheap programmers rather than a few more expensive programmers will work just as well, and cheaper. So the older workers won't be applying for the positions taken by the H1Bs, but they would have been be applying for the positions that those positions displaced.

    4. Re:It is age discrimination by Dumnezeu · · Score: 1

      How about this: older workers have families to feed and they're more experienced.

      --
      Yes, it's sarcasm. Deal with it!
    5. Re:It is age discrimination by rve · · Score: 1

      The summary says that it's not merely age discrimination, then goes on to say that they hire younger workers because they are cheaper, without bothering to account for experience.

      I think the whole point is that what counts is experience in a certain technology that will be used in a project, say .NET. The 45 and the 25 year old programmer will both have a maximum of maybe 7 years of experience in it. The 20 years of Delphi and dBase experience the 45 year old programmer has in addition is about as relevant to the project as his 25 years of experience in driving a motor cycle, but it does double the hourly wage he's asking.

  11. All the more reason to get out of IT by Anonymous Coward · · Score: 0

    I graduated with a degree in CS and working in IT for 7 days. It didn't take long to see the handwriting on the wall. Left and went back to school for pharmacy. A few years later and I can get hired on anywhere in an instant.

    IT is a dead-end.

    1. Re:All the more reason to get out of IT by Anonymous Coward · · Score: 0

      Of all the careers you could've picked as an example, you chose the one that consists of reading off a screen, and will be replaced, ironically, by a piece of software?

  12. KMA whipper snappers by Anonymous Coward · · Score: 1, Insightful

    I'm in my mid-40s and my buddy at work is in his 50s. We run circles around little whipper snappers from R&D and standards to best practices, hands down programming, etc. To actually find someone young that has a real CompSci degree (MBA and MIS doesn't count), real experience or even a fundamental understanding of OOP, RDBMS design, security, static code analysis, etc. is far and few between. Keep on hiring cheap labour (Ranjit and Chad from Tech & Talk) and we'll keep on debugging and fixing their code!

  13. jaded by convolvatron · · Score: 5, Insightful

    the problem with having older programmers like myself is that they are fully tired of being jerked around
    by incompetent management. if you've worked in 20 shops, and run a few yourself, you're alot less
    likely to happily pull an all nighter to try to get the release out the door. you understand
    that this all could have been taken care of months ago, and you went to some pains to point that
    out then.

    the other kind of older programmer has just given up. they know better, but they understand
    that bitching isn't going to solve anything and they need the health insurance. they look alot
    less capable then they are because they just agree with everything and try to get out the door
    by 5.

    younger programmers dont know any better, they will believe whatever you say

    1. Re:jaded by pilgrim23 · · Score: 1

      I fit catagory #2 I did give up and I am proud to say it. Microsoft was pretty bad about this for years; Hire out of school, 18 months later a burned out and now cynical programmer is looking on Craig's List for a job. After a time Microsoft could not hire enough US canon fodder and began shopping for victims in Bangalore. -- Being a Wally can actually be a good thing

      --
      - Minutus cantorum, minutus balorum, minutus carborata descendum pantorum.
    2. Re:jaded by Sir_Lewk · · Score: 1

      If you are 60 years old, had haved worked in 20 different shops, then you have averaged something like one new shop every 2 years. Perhaps it's not my place to say it, but there might be something else wrong here...

      --
      "linux is just DOS with a UNIX like syntax" -- Galactic Dominator (944134)
    3. Re:jaded by convolvatron · · Score: 1

      alot of contract gigs last 6 mo. i've done 9, 6, and 4 year stints...and yes, a couple of 2s

    4. Re:jaded by Richard+Steiner · · Score: 2, Insightful

      Ah, but which way do you go?

      If you move from job to job on a regular basis, you're seen as an opportunist who won't stick around for long.

      If you stay in one place too long, you're seen as being stuck in a rut and not growing your skillset (nevermind what the truth might actually be).

      I personally prefer to stick with a given company long enough to learn the ropes in some detail, and I would have actually preferred to stay with my previous two employers until retirement (the work was interesting enough), but corporate layoffs have a way of changing an individual's career path. :-)

      --
      Mainframe/UNIX Bit Twiddler and long time Windows/Linux Hobbyist.
      The Theorem Theorem: If If, Then Then.
    5. Re:jaded by jellomizer · · Score: 0

      You know being jaded may be the case. As an IT Manager myself I have rejected a lot of older developers not because of skill sets but because of that jaded attitude. I don't want to spend my work day arguing with a developer just because he thinks he knows better. Even though he may not fully understand the skill sets of the larger team trying to create an architecture where everyone can maintain. Sometimes you need to do things sub-optimal for better overall results. Yes lets not go with an Object Oriented Model for this case because of the size of the application it just doesn't fit and the support people will take a lot time trying to fix a problem vs. a procedural approach (or a Light OO) which changes can be found quicker and easier from other people.
      Or having someone who supposed to work under you trying to manage you job, just because he has more experience. If you are going for a job you better make yourself a team player where your experience is helpful for the process not an ego boost to yourself where you need to hinder the process so you can be right.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    6. Re:jaded by gbjbaanb · · Score: 2, Insightful

      You know being jaded may be the case. As an IT Manager myself I have rejected a lot of older developers not because of skill sets but because of that jaded attitude

      Firstly how do you know that a particular programmer has that jaded attitude beforee you've hired him? Secondly, have you thought that if you're having this problem that its because you're not effectively managing the guys (which is, after all, your job). Thirdly, have you considered that they might be right? (no, didn't think so)

      I find that the older coders are the ones who go with the lighter development processes becuase they've seen the 'Architectures' that are created in the past and will warn you against them. Sub-optimal? Often not the case. Its usually the younger guys who want to rewrite everything, who want to create a massive abstraction base that'l be 'so much easier to maintain in the future' (lol, seen that a few times. No, I've never seen them work either. Hmm, perhaps that's why the young guys like to rewrite so often).

      And so on, sure the older guys may complain (ie offer you the advice of their experience) and yo u can quite happily ignore them, tell them to shut up and get with the program for something that they know will not go right. Try taking their experience sometime and working with it - you'll end up with happy workers, and better product. ...where your experience is helpful for the process not an ego boost to yourself where you need to hinder the process so you can be right.

      sounds like a lot of managers I've known :)

    7. Re:jaded by hondo77 · · Score: 1

      the other kind of older programmer has just given up. they know better, but they understand that bitching isn't going to solve anything and they need the health insurance. they look alot less capable then they are because they just agree with everything and try to get out the door by 5.

      Stop following me around!

      --
      I live ze unknown. I love ze unknown. I am ze unknown.
    8. Re:jaded by Lazy+Jones · · Score: 2, Insightful

      If you stay in one place too long, you're seen as being stuck in a rut and not growing your skillset (nevermind what the truth might actually be).

      That mindset is probably not as prevalent as the opinions about job-hoppers you described ... It can also be countered by simply devoting more space in your CV to the skills learned/applied and work done during that time. But one thing I can guarantee: no employer wants employees that resign simply because they are concerned with the attractiveness of their CV above everything else (or any other things that are far beyond the employer's sphere of influence).

      --
      "I love my job, but I hate talking to people like you" (Freddie Mercury)
    9. Re:jaded by Anonymous Coward · · Score: 0

      "a lot" is two words.

    10. Re:jaded by Anonymous Coward · · Score: 0

      It's called an interview. They're typically used to 'check out' an individual prior to hiring them. If they're jaded during the interview, I'd see no reason to believe they wouldn't be in the workplace.

    11. Re:jaded by Kjella · · Score: 2, Informative

      But one thing I can guarantee: no employer wants employees that resign simply because they are concerned with the attractiveness of their CV above everything else (or any other things that are far beyond the employer's sphere of influence).

      Actually, I implicitly said so in an interview I was hired in recently. I've been working with a specific product for over four years, and I have gained certain general skills in reporting, databases and management information systems but those skills are topping out and by staying longer I'd become a product guru which would severely limit my work opportunities to that product. The CFO of the new company actually commented that he could understand after "being with a company for so long" because in the business I'm going the median turnaround is 2-3 years.

      Besides, it's well known that you should not badmouth your employer in any way - I don't consider the above as doing so - and despite everyone asking they know that "I'm seeking new opportunities" it can mean everything from "I'm seeking new opportunities" to "I want to get paid more" or "My old job was a hellhole" or "You're a step in my career ladder". It's one of those questions where I doubt you can earn anything at all, you can just disqualify yourself.

      Personally, I'm starting to see more and more why employers do other kinds of testing than the interview. The interview is extremely predictable, for example in almost every interview you get asked "What are your weak sides?" which can be slightly hidden as "Where do you see improvement potential in yourself?" or whatever. If you immediately have a canned answer, it's bogus. If you pretend to don't have any, you're arrogant and lying. And you don't want to come across as lacking confidence or important work skills.

      I usually pick some of my character traits that are dualistic, like say "too much focus on detail" which of course implies that I might miss the big picture but also that I'm very thorough and reliable in what I do. "By nature a little introvert" while doing my best to be confident, volunteer information and show that I'm handling it well, at the same time building their confidence in that I can the things I say I can. You can't at the same time say that and have them pull answers out of you with a plier, then it won't work.

      Interviews are a sales pitch from both sides. I know, I've been asked to perform a few interviews now this week and been getting a little interviewer coaching from the other sides of the table and it's also about setting our company in the most positive light possible. I think a lot of slashdotters would do better if they thought of it that way, it's not the "let's give a perfectly honest picture of each other and see how we match up". It's the glossed picture and only afterwards do you find out how you both look without the makeup.

      --
      Live today, because you never know what tomorrow brings
    12. Re:jaded by CAIMLAS · · Score: 1

      I've noticed an attitude in many people which might be falsely construed as "jaded", "biased", "angry", "hostile", "unfriendly" - you name it. My experience is that the observers are just missing the vapid, bubbly personality that a younger person is more likely to put forward to try to impress with.

      An older person knows better: they know such tricks work short term, but do nothing in the long term. They know real people - ones with knowledge and (importantly!) life experience are not typically so doe-eyed and bushy tailed.

      An older person hopefully knows, likely through mistakes, that you've got to be true to yourself. This isn't to the preclusion of a pleasant personality, mind you. But I honestly would not trust an "older" person who has not become at least a little bit jaded in their lives - and I'd advise others to do the same. If someone hasn't become biased, jaded, or cynical to some degree, I'd say the likelihood is high that they've done more stepping on others than they've been stepped on, and should be best avoided.

      --
      ~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
    13. Re:jaded by jellomizer · · Score: 1

      No... Not really... This is what I do in the interview... I look at their resume and find any gaps in their skill sets that I know of. I give them an example that my advantage will get me a better answer. They will give me an answer based on their experience, (which initially helps me see if he can think outside the box) then I give him the more efficient answer and see how they respond to it. Now if they get defensive and argue to me that their less efficient is better or just say that is an interesting method I need to remember that. Really tells me a lot about the person... No matter the age. I also like to give them a question that uses their skill sets and I propose a less efficent method and see how they respond to that... A Yes man will just always go with me, someone who is good will politely explain their view. It isn't bubbly but a professionalism. And realization of the following...
      Us hiring them is a favor to them not us. (especially in a slow economy, it is an employers market)
      Hiring a Bad employee is worse then not hiring an Excellent one. (So error on letting someone good miss just as long as you don't get the bad one)

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
  14. Forget age, by Anonymous Coward · · Score: 0

    TFA is written by a girl!

  15. No really by Anonymous Coward · · Score: 2, Interesting

    The problem is not about Age: is about Money. You having X years of experience you want X amount of money. Managers think that they can replace that with somebody cheaper (Why you can get somebody that have experience and can produce good code better than 3 when we can get 10 from India making 15,000 a year and no benefits)

    Sorry Boys and Girls we ALL are in the same boat.

    P.S In the defense of Indian programmers they are in the same bad position (I think even worst than ours). Having X amount of years of experience = job moved to China. So 14,000 is OK with me and you do not have any recourse.
    Please remember that is not the corporations where the problem lies. Is the rich people that benefit from the corporations (hey they have a very expensive life )

    Cheers

    Caitlin

    1. Re:No really by Anonymous Coward · · Score: 1, Informative

      Bull.
      It is not about Money.
      I was interviewed last week for a Senior Programming position. I'm 56 and have been programming since 1972. The job was mainly Java & Web Design. No probs done lots of that, got the T shirt.
      I was rejected because,
        1) I had no ambition (why wasn't I a manager)
        2) I was over qualified for the job

      I don't want to be a friggin manager. I was once and total crap at it thank you very much. At 56, you should know your limitations. I think I know mine.

      Over qualified? Do you want the job done or do you want the job done properly. And no, I was not asking for an inflated salary. Well within the range quoted in the advert.

      Oh well, back to working on the next version of a Linux App and Jobseekers allowance.

    2. Re:No really by bakawolf · · Score: 1

      My guess is either A) You're still asking for more than they want to pay. or B) Why are you asking for so much less than you should be worth? first one is obvious, second one raises a few red flags.

    3. Re:No really by slick7 · · Score: 2, Insightful

      The issue is not about money or talent.
      Failure of management (upper, middle or first line) to recognize ability coupled with a desire to streamline costs can do more harm than good.
      I have seen cronyism, nepotism, corruption, theft, drunkenness, piss poor attitudes by both young and experienced workers.
      I have seen managers that were aware of the above state that "they had no idea", and managers who took advantage of the situation by using the above information as leverage to ensure their own agendas were supported rather than corporate agendas.

      It is truly sad that technological advances are crippled by flatlander mentalities.

      --
      The mind conceives, the body achieves, the spirit manifests.
    4. Re:No really by ClosedSource · · Score: 1

      Anyone who uses both criteria A and B is a fool. You'll just end up with the random guy who guessed your number.

    5. Re:No really by phantomfive · · Score: 1

      I'm going to go out on a limb and say you got rejected because you sound like a cranky old man. I can understand being frustrated at not getting a job, but really haven't you been rejected by so many job offers by now that it's something you just take in stride? I sure have. Take the Big Lebowski as your guide, and don't let anything ruffle you. Then people won't see you as a cranky old man.

      --
      Qxe4
    6. Re:No really by Maxo-Texas · · Score: 1

      No ... because if the older employee asks for the lower salary then they are not hired because they are "over qualified".

      Listen, look at the job ads. Sometimes the companies are actually stupid enough to say "looking for a young, dynamic, blah blah blah". If not, they'll use code like, "must work to a deadline", "cutting edge technology shop", "fun casual atmosphere" which stands for "young people come here- old people go away".

      HP is currently only hiring people who graduated college in the last 2 or 3 years. The rational is "because then the experience is current!" but the real reason is age discrimination. Indian companies in america are extremely insistent on getting your high school graduation date (not your college graduation date) on your resume. it's a *requirement* to submit a resume for some of the larger companies.

      Now--- what possible value is knowing a person's high school graduation date????

      The only possible valid response to a requirement like that is to lie or sue.

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    7. Re:No really by Anonymous Coward · · Score: 0

      Which "a Linux App" is that?

  16. Not so simple by Anonymous Coward · · Score: 0

    Not all programmers get promoted. It's a pyramid scheme. Most will get dumped to find work elsewhere, losing seniority in the process and quite possibly having to find work in a different field.

    Upper management/nonprogrammers haven't a clue about the valuable experience the older programmers have. Management follows the younger programmers as they tilt at windmills.

    1. Re:Not so simple by Marxist+Hacker+42 · · Score: 1

      It took me 15 years to reach a senior programmer position- now they're telling me next year, at age 40, it's time to quit the industry altogether and do something else?

      --
      SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
    2. Re:Not so simple by MikeySquid · · Score: 2, Insightful

      Simpler than you think.

      Those other older programmers who didn't get promoted to management are the biggest threat to the security of the ones who did.
      It's much better for the new managers to have a slew of 20 somethings around who don't really know how the world works yet than a few older jockeys who could take his place fairly easily. The new managers damn well know the value of those other older programmers and that's why they get replaced.

      It's very simple.

    3. Re:Not so simple by TapeCutter · · Score: 1

      Nah, I'm 50 and work in an inhouse shop of ~20, MOST of my co-workers are over 40 and almost half are OLDER than me. We don't hire people with less than 10yrs experience. The company is an Aussie subsiduary of a large Japanese multinational, the Japanese traditionally have a healthy respect for experience.

      --
      And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
    4. Re:Not so simple by Compuser84 · · Score: 1

      Thank you, your comment has been duly noted in your personnel file. You sir, win one internets. I'm taking your statement and paraphrasing for my workplace. :-)

    5. Re:Not so simple by Nefarious+Wheel · · Score: 1

      It took me 15 years to reach a senior programmer position- now they're telling me next year, at age 40, it's time to quit the industry altogether and do something else?

      I was a senior programmer twenty years ago. Now I work in marketing. Please, someone! (sob) Let me out!

      Ok, get past teh lulz and I have to admit it's kind of nice writing about computer stuff without having to chase the bugs. I'm too old to work 70 hour weeks for the sheer fascination of building code. And to tell the truth, I'm not as fascinated about it as I used to be. I prefer bigger building blocks now.

      The real truth is, most of my work is isolated from people by the imposition of two TFT screens between us, and they have no clue about my age unless I drop one. When they ask about me privately, I tell them in real life I'm a mix of Staffordshire Terrier and Border Collie.

      On the Internet, nobody really knows.

      --
      Do not mock my vision of impractical footwear
    6. Re:Not so simple by Anonymous Coward · · Score: 0

      Plus, the older, more experienced programmers won't play kiss ass, while the younger, less experienced are eager to if they think it will help them move up.

  17. Kids Today by handy_vandal · · Score: 5, Funny

    Kids today have it easy -- context sensitive development environments, online documentation, etc. etc.

    Why, when I was your age, we had to chisel bluestone megaliths using only hand tools, and then haul those four-ton stones into a circular pattern, just to calculate date() ...!

    --
    -kgj
    1. Re:Kids Today by Anonymous Coward · · Score: 0

      When I was your age, we didn't even have parenetheses! And we had to talk in all caps!

    2. Re:Kids Today by hoggoth · · Score: 1

      > When I was your age, we didn't even have parenetheses! And we had to talk in all caps!

      Luckily, by the time I was your age we had open parenthesis. We still didn't have close parenthesis so that was tricky...

      --
      - For the complete works of Shakespeare: cat /dev/random (may take some time)
    3. Re:Kids Today by handy_vandal · · Score: 2, Insightful

      We had to improvise close parenthesis by taking an opening parenthesis and then standing on our heads.

      --
      -kgj
    4. Re:Kids Today by Anonymous Coward · · Score: 0

      ...Why, when I was your age, we had to chisel bluestone megaliths using only hand tools, and then haul those four-ton stones into a circular pattern, just to calculate date() ...!

      So your responsible for the Y2KBC problem!

    5. Re:Kids Today by kindbud · · Score: 1

      Chisels?! Lucky!

      --
      Edith Keeler Must Die
    6. Re:Kids Today by mcgrew · · Score: 1

      Yeah, and you geezers were too short sighted and cheap to carry your date values in more than one byte, and the Y1K problem wiped out your civilization! Way to go, grandpa.

    7. Re:Kids Today by rastos1 · · Score: 1

      Why, when I was your age, we had to chisel bluestone megaliths using only hand tools, and then haul those four-ton stones into a circular pattern, just to calculate date() ...!

      Did it involve any virgins too?

    8. Re:Kids Today by Anonymous Coward · · Score: 0

      Hey... you hitting a little below the belt for some of us. Cause that's not too far from the truth.

  18. Experience by copponex · · Score: 5, Insightful

    Across every industry I've been involved in, a good piece of advice from an old business mentor has held true:

    When you pay an expert $100 an hour, you're not paying them for the hour. You're paying them for the years of experience they have plus an hour of their time.

    This also dovetailed well with what a mechanic told me when I was trying to lowball him: "When you pay peanuts, all you get is monkey business."

    1. Re:Experience by Pojut · · Score: 1

      When you pay an expert $100 an hour, you're not paying them for the hour. You're paying them for the years of experience they have plus an hour of their time. This also dovetailed well with what a mechanic told me when I was trying to lowball him: "When you pay peanuts, all you get is monkey business."

      This is very true. We used to tell the new guys at the shop that anyone can be a part swapper...but diagnosing an issue and determining the best solution (and implementing it) is a whole other ball game. I was young when I worked as an auto tech (18-22, had to quit due to injury) but I had been working on cars since I was 10. I wasn't paid to do the work, I was paid for my knowledge about how to do the work properly (being promoted to shop foreman at the age of 20 with nine techs working under me, some of them in the profession longer than I'd been alive, is proof of that.)

      As you said in your post, this applies to just about every skill-based job out there.

    2. Re:Experience by emurphy42 · · Score: 1

      Old joke: Plumber charges $100, spends 5 minutes tapping at pipes, problem fixed. Customer demands itemized bill. Plumber provides the following:

      • $5 for tapping at pipes
      • $95 for knowing where to tap

      This is so very, very true of my work as well, only instead of pipes I work with, er, tubes.

    3. Re:Experience by misexistentialist · · Score: 1

      Except that most people could tap all the pipes in their house to produce the same result, or take a few minutes to google proper tap positioning, making such "experience" of no value. (I admit that tubes are more complicated)

    4. Re:Experience by smellsofbikes · · Score: 1
      I can't find the artist, but I think it was Duchamp, who was commissioned for a piece of artwork that he finished, and the purchaser protested at the high price. It went to trial, and the judge looked at the painting and asked Duchamp if the few hours it had taken him to paint that was worth the hundreds of thousands of dollars he was charging, to which he replied that the hundreds of thousands of dollars were for a lifetime of practice and learning, not for the hours for that specific painting.

      And *that* was pretty strongly influenced by Da Vinci, who, on being asked to submit a design for a massive painting for the Vatican but lacking time to put together a portfolio or sample, drew a perfect freehand circle and submitted that, winning the job.

      --
      Nostalgia's not what it used to be.
    5. Re:Experience by mcgrew · · Score: 1

      Reminds me of a very old story from the earliest of computer days (probably before I was born). The computer stopped working, so the company called in a repairman. He took one look at it, pulled out a small hammer, tapped it and it started back up. He charged $500 for it.

      "What!?!" exclaimed the angered manager. "Five hundred bucks to tap it with a hammer? I want an itemized bill!"

      So he got his itemized bill.

      Tapping computer with hammer: $1
      Knowing where to tap: $499

    6. Re:Experience by Changa_MC · · Score: 1

      So, you're saying it would take you less than 10 hours to check all the plumbing in your house? Or is it that your time is worth less than $10 an hour?

      Because that dude who fixed it in 1 minute gave me back my weekend, which is worth $100 in my book.

      --
      Changa hates change.
    7. Re:Experience by malkavian · · Score: 1

      Alas, that works well when people "play by the rules".
      What you're paying for is their time, plus what experience they say they they have .
      I've run a lot of interviews in my time, and the amount of pure charlatans you get who claim to know all about the latest tech, and be experts in it, is frankly worrying. Unless you have years in the business, plus a strong technical background, you'd believe them. Even when absolutely caught out they still keep speaking with that unshakable confidence and assertion that they're right.
      One guy that really sticks in the mind that came to interview claimed on the CV that he was an MVP, had years of experience, and checking the CV against the passport (which we do, for validating that someone is who they say they are), his professional programming career at a large financial allegedly started when he was 13. He blatantly kept on saying that this was correct, and he was just a prodigy. When asked if he knew of a spurious development paradigm (one we'd made up for interviews to see how people responded), he claimed years. When told it was spurious (yes, we'd checked to definitely confirm there was no such thing before using it as an interview strategy) he blithely kept on saying how he used it to better his skills.
      He didn't know the detail of the basics, let alone the more advanced techniques the role was being posted for, but the sheer confidence he put forth, along with a whole stream of technical sounding buzzwords (and some that were pure bullshit, but still sounded technical) would have got him hired at a whole raft of places I know that have a PHB or a clueless HR department who put ticks in boxes, and then ask people not qualified to make the choice to pick the next candidate for a technical role.
      Yes, he's an extreme example, but there are an awful lot out there who play buzzword bingo to get a job with no real knowledge of what they're doing. Sadly, a lot of them make it into positions and play politics from there to pass the blame round teams, and screw up products by ineptitude.
      I really don't mind paying the top dollar for the good people, but sheesh.. Half the problem out there is that unless you know enough to do the job yourself, it's all too easy to get hoodwinked by someone claiming to know what they're doing more than you do.. Most management don't know that, and HR departments certainly don't..

    8. Re:Experience by Anonymous Coward · · Score: 0

      And *that* was pretty strongly influenced by Da Vinci, who, on being asked to submit a design for a massive painting for the Vatican but lacking time to put together a portfolio or sample, drew a perfect freehand circle and submitted that, winning the job.

      Amazingly Giotto did the exact same thing. Oh and Michelangelo too!

    9. Re:Experience by Anonymous Coward · · Score: 0

      While your witticisms are true in some contexts, it's less true more and more often.

    10. Re:Experience by martin-boundary · · Score: 1

      That's because photocopiers didn't exist in those days, so they had to duplicate the work...

  19. I don't think experience is always better in CS by Anonymous Coward · · Score: 0

    Yes, fresh inexperienced developers aren't always gonna do things the best way but I've seen a fair amount of dogmatic older developers who insist on using old archaic non-type safe methods and languages just because "that's the way they've done it for 20 years". Sometimes is takes fresh minds to mix up the status quo and provide better solutions using newer and better technologies.

    So suck it up, Grandpa.

    1. Re:I don't think experience is always better in CS by Anonymous Coward · · Score: 0

      Show me a better Principle and earn your pay rise Sonny.

    2. Re:I don't think experience is always better in CS by Anonymous Coward · · Score: 0

      Hmmm. Most of the trendy new languages seem to be non-typesafe. I think you are showing your age.

    3. Re:I don't think experience is always better in CS by ClosedSource · · Score: 1

      Well, I don't think it's really age related, there are mistakes at every age. Look how dogmatic some people can be about Agile methods.

  20. Re:It is age discrimination - Yes, It is by hillbluffer · · Score: 2, Interesting

    I was once "fired" because I was the "old hand" in a department that had a sudden influx of developers over ten years junior to me. Yes, I sued and won based on age discrimination. From my standpoint, managers hire younger workers because they'll work longer hours for less pay, and are less likely to have the "encumbrace" of families to keep them from working OT, or that call them away because someone's home sick, or has to be run to an appointment. Also, the boss usually prefers people his own age who'll go drinking at Bennigans every night with him.

  21. Carousel is a lie!! by lord_mike · · Score: 1

    Lifeclocks are a lie! You can't renew! There is no sanctuary!

    1. Re:Carousel is a lie!! by NormalVisual · · Score: 1

      Mine's been black for years. I laugh at you, Sandman....

      --
      Please stand clear of the doors, por favor mantenganse alejado de las puertas
  22. This is news?? by filesiteguy · · Score: 1

    I am 40 years old.

    I was a programmer.

    I'm now a manager of programmers and analysts.

    Though there are still a few people my age and older doing programming, most move on to either management or line-operation positions. That is how it seems to have always been. Yeah, I can still code and even review my staff's work on occasion, I find it more worthwhile to direct the team.

    Could I get a new job in programming? Probably not. When I hire, I tend to look for recent college grads who can be molded (warped?) in my methods and processes. My manager (who's 67) thinks the same way.

  23. Complete bullshit by Wee · · Score: 1

    The article is utter crap. People look for experience first. In fact, I'd say new college grads are discriminated against.

    -B

    --

    Ash and Hickory, straight-grained and true, make excellent bludgeons, dandy for the cudgeling of vegetarians.

    1. Re:Complete bullshit by hibiki_r · · Score: 1

      New college grads have it way harder than someone with 2-3 years of experience, but you might be surprised at how hard getting hired can get when you have 30 years worth. It's easy to be labeled as overqualified.

      The group that has it easier depends on the business cycle. In the late 90s, it was great to be experienced. In the early 2000s, a CS degree got a good job to pretty much anyone. Today, neither of both ends is especially appealing.

    2. Re:Complete bullshit by Anonymous Coward · · Score: 0

      Not to mention the difficulty of getting a job that pays enough to live on coming out of college. Everyone assumes they are doing you a favor, so you should be happy to work for those peanuts they are throwing you. Without savings or access to unemployment and the looming debts behind you, you end up grabbing whatever crap job you can find and praying you can stick with it long enough to have a resume that won't go straight into the trash. Of course you work 16 hours a day if needed; what alternative do you have?

      Not to mention having to deal with all these old people convinced you are stealing their jobs, refusing to acknowledge the skills you do have even when you acknowledge those you don't (remember, "kids these days" might well have been programming for 10 years by the time they graduate from college) and expecting that you will happily adopt whatever counter-productive habits they consider gospel.

      If I had a penny for I've disagreed with something and asked for the reasons behind the decision and get told instead, "I've worked in industry for 20 years!" or "I knew Alan Kay!" I wouldn't need to be a code monkey anymore. Instead, I paid my dues, and now get paid twice as much to do the same things I was doing then.

  24. Youthful arrogance.... by realsilly · · Score: 4, Insightful

    Is the younger generation of programmers really that arrogant to think that older programmers don't know and learn new languages and coding trends? it is my experience that the best coders out there are those over 40. Not only are they on top of technologies that are current, but they understand why those technologies came to be and what they helped to improve. Many of them learned on the job, in a budding industry.

    Just a few days ago there was a post right here on Slashdot asking how easy it was to cheat in CS. Based on the forum discussions, a significant number of students today get programming degrees and can't produce a lick of decent code.

    This is NOT to say that there is not an abundance of exceptional young talent, there is, and they deserve good work and decent pay, but this is in defense of those who helped pave the way.

    --
    Life takes interesting turns, but the most interest is when you're off the beaten path.
    1. Re:Youthful arrogance.... by Anonymous Coward · · Score: 0

      No, some programmers definitely do continue to improve their skills and learn new techniques and languages, but some don't. If they're around here they probably fall into the first group but there's a ton of "programmers" that fall into the second that you'll never hear from around here precisely because of their lack of continued learning and actual interest in the subject/skill. you're applying one point to another with absolutely no support despite the words you've put next to each other.

    2. Re:Youthful arrogance.... by Ramley · · Score: 1

      Is the younger generation of programmers really that arrogant to think that older programmers don't know and learn new languages and coding trends? it is my experience that the best coders out there are those over 40. Not only are they on top of technologies that are current, but they understand why those technologies came to be and what they helped to improve. Many of them learned on the job, in a budding industry.

      How nice to hear! Thank you for that. I think one of my greater fears in life (career-wise) is to be perceived as an old man in a young man's profession.

      I am a 45 year _old_ programmer who was classically trained in CS on a Vax-11780. Along the way in my career, I played with and learned Apple II's, IBM PC's, (original) Macintosh, and so on. I had also operated and played with BBS's and Email protocols, (FidoNet, UUCP), Dialup (Tribelink's, Portmasters), HTML, and then on to Web scripting languages, SQL, and deeply into Linux and the open source world.

      I had learned all of this on my own, as needed, when many of these technologies were new -- and it could be difficult to find someone who can support them. Learning them was the only way to really understand how to make them work for my organizations, and work reliably.

      It seems that my whole life I have been "upgrading" and continuously learning new technologies. It's a very natural part of my day, anymore. So far, I have been lucky, as the perception people have of me doesn't seem to be "he's over the hill". Although I can't say I don't see that day coming.

    3. Re:Youthful arrogance.... by mcgrew · · Score: 1

      Is the younger generation of programmers really that arrogant to think that older programmers don't know and learn new languages and coding trends?

      You don't remember what it's like to be 25? ALL young people are that arrogant, and think that their elders are stupid.

    4. Re:Youthful arrogance.... by MoriT · · Score: 1

      Nope, but if a language has only been around for 10 years than someone with 40 years experience has no more experience with that particular language than I do, and possibly have less. If what the hiring manager is looking for is experience with a particular technology, there is no reason to pay more for someone with many years of, at best, marginally related experience. Many coding jobs involve significant spin-up time in the particular technologies, domain and tools being used, which diminishes the value of previous experience. However, this is not reflected in the premium arrogant older programmers expect to be paid.

    5. Re:Youthful arrogance.... by phantomfive · · Score: 1

      Just a few days ago there was a post right here on Slashdot asking how easy it was to cheat in CS. Based on the forum discussions, a significant number of students today get programming degrees and can't produce a lick of decent code.

      Based on interviews I've done, that is 100% true. One memorable interviewee couldn't write a program to swap two variables. True story.

      --
      Qxe4
    6. Re:Youthful arrogance.... by Lars512 · · Score: 1

      Just a few days ago there was a post right here on Slashdot asking how easy it was to cheat in CS. Based on the forum discussions, a significant number of students today get programming degrees and can't produce a lick of decent code.

      This has certainly been my experience. I don't know how they graduate, but they do, just, every time. I never heard of someone who didn't graduate because they couldn't code. Somehow they fumble their way through every project and still pass. I'd say maybe 30% of graduates of the degree I'm thinking of could not write a small program correctly in their language of their choice in any reasonable time. That said, employers aren't hiring people who just pass fresh out of uni, so it's not really a problem for the job market. There are also plenty of good, even excellent, programmers who come out of the degree. I'd much prefer to tighten things up though, so the degree itself was worth more.

    7. Re:Youthful arrogance.... by MoriT · · Score: 1

      While their elders think the inverse.

    8. Re:Youthful arrogance.... by SpinyNorman · · Score: 2, Insightful

      For simple projects that's true - where the application itself is straightforward and you just need people conversant in the tools you need to use to build it. That's not why you hire highly experienced people. No technology really takes more that 5 years to thoroughly master (although some complex domains may do).

      Where you DO need experienced people is where the application is significantly complex or critical, where what the experience buys you is expertise in software architecture, and design. There are many obvious high-profile jobs like this - compiler design, radar systems, speech recognition, etc, but also many much more mundane ones... complex multi-threaded realtime software at the core of communications systems, industrial control systems, etc.

      For these types of projects what you really need is years of experience in designing big complex systems. Being a hotshot in C++ or Java or the technology du jour (however many/few years it took you to get there) doesn't help at all if the scope and complexity of the project is just way over your head. This doesn't just apply to massive software projects - there are plently of complex one-man projects where someone without significant design experience is going to be struggling, making mistakes, and making slow progress (and ending up with a bunch of unmaintainable code that reflects the struggles) as opposed to a more senior person who'll design it right and in a fraction of the time because the job was well below his experience level rather than above it.

    9. Re:Youthful arrogance.... by Anonymous Coward · · Score: 0

      It's not the younger programmers, it's the younger managers. They read slashdot too, because in the 21st century, being a nerd is cool. Or at least acting like one. Actual knowledge is not required.

    10. Re:Youthful arrogance.... by mcgrew · · Score: 1

      The elders think the youngsters are inexperienced, and they're right. Youth doesn't appreciate experience.

    11. Re:Youthful arrogance.... by Bill+Dog · · Score: 1

      You don't remember what it's like to be 25? ALL young people are that arrogant, and think that their elders are stupid.

      No, only those who are or will become politically Leftist think they know everything better. I.e. people with chronic poor judgment. Others of us had the frame of mind at 25 to revere the older devs and their seemingly bottomless depths of knowledge.

      --
      Attention zealots and haters: 00100 00100
  25. Young programmers keep me employed! by Anonymous Coward · · Score: 5, Informative

    I'm 59, and have been programming professionally since I was 20. The two best things for my employment are:
          1) Young, inexperienced programmers.
          2) "Experienced" Indian programmers.

    Why is that? Because they both fuck up constantly, and thus give me lots to fix.

    Young and inexperienced programmers are a delight to work with. It's great to see them come into a project all cocksure, only to be crushed by the demands of the real world. They'll spent countless hours putting together shitty software, which will always fail. Then management calls me in, and I fix their code. Mostly this means rewriting it all from scratch. Regardless, I make about four times what they do. Then again, I deliver working code.

    "Experienced" Indian programmers and "software architects" are the next best thing. They're like the young and inexperienced programmers, but their fuckups are much, much bigger. That means the customer's desperation is much greater, and I can make more money. What's best about these guys is that they often haven't produced even a line of code. They just spew out UML diagram after UML diagram. I look at the diagrams, talk to the users, and it becomes obvious what should be done. I sit down, implement the software, satisfy the customer, and collect my money.

    1. Re:Young programmers keep me employed! by SenseiLeNoir · · Score: 1, Insightful

      That was a bit racist, don't you think?

      I am an "Indian" (actually Sri Lankan) Developer, who started programming when I was 7, on a Sinclair ZX Spectrum (not just Basic, but loads of yummy Z80 Assembly). I was brought up in the UK.

      My Father-in-law is also a Sri Lankan Developer, who was brought up in Sri Lanka, yet has worked in USA, Singapore, and UK on lucrative contracts.

      When we say that we are EXPERIENCED Developers, you can count on that. We earn craploads of money, fixing the bugs created by other so called "senior developers", who then get pushed into PHB/Management roles, still earning less than us.

      So stop being a bigot, and prejudiced.

      --
      Have a nice day!
    2. Re:Young programmers keep me employed! by Anonymous Coward · · Score: 3, Informative

      No "bigotry" or "racism" was intended. It's just the sad reality that I have to fix a whole lot of code and "architecture" coming out of Pune, Bangalore, Mumbai and Hyderabad.

      I rarely have to make anywhere near as many changes to code coming from Eastern Europe or Brazil, for instance. They manage to generally do a pretty good job. On the other hand, almost all the code I've ever seen out of India has been pure shit.

      You need to stop being so sensitive about reality.

    3. Re:Young programmers keep me employed! by Mongoose+Disciple · · Score: 4, Insightful

      Eh... I don't think the GP's post was quite as unfair as you think.

      Don't get me wrong, I've worked with some amazingly brilliant and hardworking Indian developers, but at the same time, it really isn't a rare thing to see an outsourcing firm sell an experienced dev team that really really isn't. Often they will have one legitimately solid guy come, meet the company, and sketch out the initial design, and then you'll never see that guy again. Some variant of that's happened with every outsourced project that I've been involved with across a decent handful of companies and industries.

      It's a shame that unscrupulous outsourcing companies are giving a whole country full of developers (incidentally, I'd argue that's nationalist and not racist, but maybe that's splitting hairs) a bad name, but most managers making the decisions don't know enough to tell the difference between the two.

    4. Re:Young programmers keep me employed! by Anonymous Coward · · Score: 0

      shut up

    5. Re:Young programmers keep me employed! by SenseiLeNoir · · Score: 2, Insightful

      Ahhh, so you mean a programmer from a "code factory" based in India? And you are talking about code coming FROM such a coding factory?

      Fair enough, your post implied that you meant "Indian Origin" programmers, which is way too broad a statement, hence my call on racism.

      I do agree that those "coding houses" can be problematic, I myself, when working for LogicaCMG, had to fix code from the Bangalore Office.

      Most often the case usually was that the "Engineers" had a chip on their shoulders for getting employment in a "large company", etc, and thought they didn't have to *learn* anymore.

      --
      Have a nice day!
    6. Re:Young programmers keep me employed! by Homr+Zodyssey · · Score: 2, Informative

      It's like you're describing my life -- only 25 years in the future. I'm 34, and seeing the same thing.

      The part that I'm finding frustrating is the boss that says, "I really think will be a valuable asset, they just need a little mentoring." So, I spend my day mentoring that person instead of getting my work done. "Mentoring" means first giving them a hint about how to do something. Then 30 minutes later telling them exactly how to do it. Then an hour later, sitting at their PC and typing the code in for them.

      Ironically, I'm also having the opposite problem. We have a 50-ish "Architect" who uses his "experience" as an excuse to be a curmudgeon, and tries to somehow turn ignorance into a virtue. "I've been programming for 20 years and I've never needed a NOLOCK statement.", "In all my years of programming, I've never heard of anyone using a code formatter.", "That design document don't tell me nothing, and that should tell you something."

    7. Re:Young programmers keep me employed! by mikael · · Score: 1

      I've interviewed with companies like that - they give you a technical interview over the phone, reassure you that they are looking for experienced software engineers, arrange a face-to-face interview, give you another technical interview at the office, confirm that you have all the skills that they are looking for, then say, "What if we didn't offer you a backroom software development role, but gave you a customer-facing role instead?"

      --
      Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
    8. Re:Young programmers keep me employed! by TerranFury · · Score: 1

      Is it possible that this is the inevitable result of hypercompetition?

      It is, from everything I can tell, hell to be in the Indian job (or education) market. There are simply so many applicants for jobs, or for places in school, that a great deal of "certification" or "education" is really just about failing as many people as possible to bring the numbers down to a level that doesn't completely overwhelm the HR/admissions people.

      (It's a reason why so many Indians leave India for other job markets.)

      So you find an emphasis on the part of those doing the choosing-of-people on impossible exams and rote learning; and you find an emphasis on the part of the test-takers on blind memorization and cramming (because creativity isn't rewarded: You can grade 80 people for creativity, not 5000. Then you get what you measure.).

      It has been argued that there is a degree of competition which is actually harmful to markets -- one in which companies (or individuals) perceive that they have no breathing room for risk-taking or creativity. In industry, this means slashed R&D budgets and technological stagnation; in job markets perhaps it creates the situation you describe of copy&paste "programmers."

    9. Re:Young programmers keep me employed! by Aanalin · · Score: 2, Insightful

      just adding that.. most indian programmer that worth it would, like you, move out to earn the big bucks in USA,UK etc.. The problem are the one that stay in the coding factory because they won't cut it that get the well deserved reputation, and company still outsource their crap there.

    10. Re:Young programmers keep me employed! by fahrbot-bot · · Score: 3, Informative

      Young and inexperienced programmers are a delight to work with. It's great to see them come into a project all cocksure, only to be crushed by the demands of the real world.

      Actual example. We had a fresh-from-college junior programmer and my manager asked if a particular (Perl) assignment would be appropriate for him. I wasn't sure, so offered to do the work myself in parallel with the new guy and mentor him on it.

      It took the new guy two weeks, with help from me - answering questions, giving advise and hints. When done he wondered when we would be promoted to senior programmer. I replied most likely when he didn't another senior programmer to help him so much and when he could be more productive.

      He asked how long it took me to do the parallel assignment. I replied, truthfully, "two hours" - which is why I had the answers to all his questions so readily.

      --
      It must have been something you assimilated. . . .
    11. Re:Young programmers keep me employed! by Fareq · · Score: 1

      You know, I don't think I'd like working with you.

      You are way too focused on being "the best" programmer, and not on trying to make the best product.

      You probably think I'm young and inexperienced... Compared to you I am... my 12 years' professional experience pales in comparison to your almost 40.

      But I love working with young, inexperienced intelligent programmers. It is such an opportunity to help them grow. (It's hard. Sometimes they take a long time to "get it" and its really frustrating, because there are deadlines and stuff).

      Now, as for "experienced" outsource types (regardless of where they came from)... Sometimes you are so completely right. But still, what kind of a developer are you that is all eager to watch things go down in flames? I'd hate being on your "team"

    12. Re:Young programmers keep me employed! by Anonymous Coward · · Score: 2, Funny

      We're a Java/Solaris/Oracle shop, and had something similar happen late last year.

      HR hired us a guy to do some web development. He claimed to be a Ruby-on-Rails ninja (his words...), and had done some Java in the past, but hadn't used it recently. Thinking he was a somewhat decent developer even if slightly out of date with his Java knowledge, we let him take a sizable project on. We explicitly told him to use Java and Oracle.

      Two weeks later, he says he's finished. We were pretty happy at first, since we were expecting it to take him three or maybe four weeks. Then he shows us his code. It's a fucking RoR web app, backed by MySQL.

      Our manager, who used to be a Java developer, asked him, "What sort of fucked up Java is this?" when he saw the Ruby code. Then when the developer revealed to our manager that he'd used MySQL, our manager totally flipped out. He absolutely hates MySQL, because it is a totally inferior RDBMS, and we'd plainly instructed this developer to use Oracle.

      It turns out that the web app didn't even work worth a shit. We basically threw it away.

      Now we're one less developer, our corporate firewall blocks most obvious MySQL-related web sites, and our manager throws out any resumes that list RoR experience.

    13. Re:Young programmers keep me employed! by profplump · · Score: 1

      Racism != nationalism

    14. Re:Young programmers keep me employed! by Fantom42 · · Score: 1

      I'm 59, and have been programming professionally since I was 20. The two best things for my employment are:
                  1) Young, inexperienced programmers.
                  2) "Experienced" Indian programmers.

      Why is that? Because they both fuck up constantly, and thus give me lots to fix.

      It could be possible your observations have a selection bias.

    15. Re:Young programmers keep me employed! by MagikSlinger · · Score: 1

      That was a bit racist, don't you think?

      I am an "Indian" (actually Sri Lankan) Developer, who started programming when I was 7, on a Sinclair ZX Spectrum (not just Basic, but loads of yummy Z80 Assembly). I was brought up in the UK.

      I too am Indian (half actually), and brought up in Canada, but I still agree with the original poster. From what I can tell, the best & brightest Indian programmers actually earn the same salaries we do--in India! For outsourcing, they look for cheap and fast, and you get what you pay for. Unfortunately, because everyone went to India to do this, India == low quality. You'd have the same problem if you did the same thing in Ireland, but everyone would blame the Irish.

      The problem is cheap outsourcing, and because a lot of them were Indian in the 90s, that's the characteristic that sticks in their minds now. In the 2000's, it is the Philipines and mainland China that are providing the next round of cheap IT labour. So far, I have found them to be a very mixed bag. There are some very, very smart and capable people in that group, but others that leave me amazed they were hired.

      --
      The bitter lessons of a veteran coder: http://bitterprogrammer.blogspot.com
    16. Re:Young programmers keep me employed! by Anonymous Coward · · Score: 0

      From his post, I'd guess he's a consultant like me, and what I often do is very close to what he described. I sometimes refer to my work as "software janitor".

      I suspect his description is worded with a dash of humor. He's probably not actually hard to work with, nor truly disdainful of inexperienced coders, nor is he really hoping for disasters - he's just become accustomed (or resigned) to it. If you've ever dated or been very close friends with a nurse, especially an ER nurse, you would likely have been exposed to some dark humor about much more serious things, even severe injuries. That doesn't mean the nurse and her colleagues are despicable people, just that they've become a bit thick-skinned and the humor helps them deal with tough situations. It's even easier to joke about software failures since (usually) nobody's life or well-being is endangered.

      And in my experience, having a sense of humor about all this really helps getting through working with yet another jumble of code programmed by people who couldn't possibly have understood the problems they were supposed to solve, and sometimes not even the languages/platforms/libraries involved. It really is that bad sometimes.

      - T

    17. Re:Young programmers keep me employed! by Anonymous Coward · · Score: 0

      I think it's about as racist as mentioning Nigerians in relation to 419 scams.

    18. Re:Young programmers keep me employed! by TheRaven64 · · Score: 1

      Competition isn't the problem, competition with no customer knowledge is. It's the same fate that every market experiences if the customer can't determine quality before making the purchase. When you, as a US or EU-based company, compares Indian or Chinese outsourcing firms, how much information do you really have? Beyond the amount that they charge, very little unless you've already built a relationship with them (and how do you start doing that?). If you're hiring someone to work in your office, then you hire people one at a time and you can spend a few hours before you hire each one making them solve problems and checking that they really do know the things that you need them to know. If you're hiring an external company, you are just comparing $n with $m, and if it's no good then the next company you try might end up being run by entirely the same people (can you tell two Indians apart over a crappy telephone connection or over email? If you can, can you tell that two subsistence-wage earning front men are working for the same person?)

      The problem is not that there are no competent Indian programmers, the problem is that there are a lot more useless programmers than competent programmers of any nationality or ethnicity. When they're half a world away, it's very hard to tell them apart in advance.

      --
      I am TheRaven on Soylent News
    19. Re:Young programmers keep me employed! by KingMotley · · Score: 1

      Sorry, I have to agree with the grand parent's post. Those are quite literally my biggest sources of income as well.

      It is only racist (Although, I think you mean nationalist) if it's not based on statistics, or is unfairly biased. It's more likely caused my advertising, or nationalist culture than anything having to do with genetics. I'm sure someone of another race raised in india would be just as likely to cause the complete failures I've seen as well.

    20. Re:Young programmers keep me employed! by Maxo-Texas · · Score: 1

      The biggest problem I see developing is the inability to say "no" to management.

      It has probably cost us at least $600,000 over the last year. And the resulting "work" is being quietly shifted lower and lower on the status reports and no one talks about it any more.

      This was after three groups of experienced company programmers had told the executives three different times that the project was 2 million dollars in hardware and 2400, 3800 and 4000 hours of work. The latest executive said, "no, you just don't understand, we can use existing hardware, drop disaster recovery, and get it done in 600 hours". The indians said yes... then extended it to about 1100 hours. And finally produced a working model which will never be used. (a big reason being that the executive did a double backflip and both wanted to go without disaster recovery yet have continuous availability if there was a disaster).

      There are many other things we could have used the money for.

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    21. Re:Young programmers keep me employed! by TheRaven64 · · Score: 1

      I suspect that the reason that there is so much terrible code in the world is that you are in a minority. We instituted a code review system for new programmers in an open source project that I run a year or so ago. Everybody hates it (especially the good programmers, who don't like being told that their code isn't perfect), but it's really useful for the new programmers. They submit a diff, and we put it in the system for review. Then we go through it and, for most people, find something wrong every few lines. These all get annotated and they submit a new version of the diff. For most new developers, it takes 2-4 rounds through the system before we have something we want to commit. For the people who are going to be really good, it takes a few more because they insist on a few extra rounds to make sure their code is as close to perfect as possible.

      Two of our most active developers at the moment started off with this system. Now they have commit access and their code only gets reviewed after it's been checked in. I can still find things to bitch about and things I have to fix but, for the most part, they're contributing code that I'd be happy to maintain.

      It's not as good as the code that our more experience developers write, but it took far less time for the more experienced developers to get them to this level and occasionally fix their bugs than it would have done for the more experienced developers to write all of the code that they did. With revision control systems, you can see the history of the code, and I don't think any of us now writes code that is as bad as the stuff some of our (now) competent people were writing 15 years ago.

      Or, in short, if you're not willing and able to teach, you'd better be willing to do the work of all of the programmers you won't help.

      --
      I am TheRaven on Soylent News
    22. Re:Young programmers keep me employed! by Anonymous Coward · · Score: 0

      On the other side of things I'm 25 and am the youngest programmer in the office by a good number of years. I suspect it's probably due to the area I work in being relatively specialized(computational modelling of chemical processes), which requires good knowledge of programming, chemistry\engineering and mathematics pretty much everything is done in C / Fortran (yes people still use Fortran). Doesn't really encourage younger people to join. I probably wouldn't of gone for the job If I hadn't been sponsored by them to do my thesis.

      I've found it incredibly valuable sharing an office with people who have 15+ years experience writing C, I hit a problem I normally get help faster then I can google it.

      The only negative I see is that many people seem very set in their ways, eg development environment most people use is very dated (think early to mid 90's propreitary unix, style setups). We use an inhouse version control system that was written in the mid 90's by one of the guys here and most guys seem ambivilent at best to moving towards something more standard.

      So anyway I think as you get towards more specialized areas of programming you will see the average age of the office increase as experience and skills do count for something.

    23. Re:Young programmers keep me employed! by indil · · Score: 1

      It might have been as bad as it sounds, but I can also imagine it actually requiring two weeks for a new person to do the work you could do in a few hours. Depending on the complexity of your product/environment and the quality of your code, what could take you a few hours could take someone else weeks to dig into, investigate, and get working. The two weeks it took the junior might reflect the shitty code that's already been written (possibly by you), not their programming skills.

    24. Re:Young programmers keep me employed! by Doomdark · · Score: 1
      Amen. I am not quite 59 (still 3x years young). But I hear what you are saying... and while being a "code sanitation engineer" is a dirty job, it pays nicely. My compensation is "only" at most 3x entry-level (considering stock grants etc), but I am worth every penny, and being able to change job at will.

      The only thing I would add is that there are combinations of two stereotypes you mention, but I guess that goes without saying -- there are people with lengthy alleged experience, who yet manage to mostly draw block diagrams, do some buzzword bingo, and crush when eventually being forced to try to implement something functional.

      Most enjoyable actual good co-workers are... actually, there is no single pattern. Talented well-rounded young ones are joy to work with; ditto for mid-career, late career. About the only common theme is that they tend to be much less assuming, down-to-earth individuals. Could it be that they know their worth, without having to try so hard to prove it?

      --
      I like paying taxes. With them I buy civilization -- Oliver Wendell Holmes
    25. Re:Young programmers keep me employed! by mikael · · Score: 1

      It's called "bid and be damned" . Your company makes an outlandishly low bid that will win the contract, then they perform the "Dutch windmill" approach to sub-contracting out the work - each company just picks out the work they want to do and outsources the remaining work.

      --
      Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
    26. Re:Young programmers keep me employed! by CodeBuster · · Score: 1

      Query: are you an independent contractor or an employee?

    27. Re:Young programmers keep me employed! by Anonymous Coward · · Score: 0

      That's a lot like home improvement. You only see the really sharp ones when they're spec'ing the job. Then you come home to find plaid siding, and an extra driveway. You wanted a new roof. The Sharp One's phone is busy.

    28. Re:Young programmers keep me employed! by Lock+Limit+Down · · Score: 1

      One easy way to utterly destroy new programmers is to simply "tell" them that such a thing called "multithreading" exists. They'll get real excited and start using it in their next project which will take 3x longer than expected and have to be re-written from scratch. The bugs in such a system go on, and on, and on until the project is dead or rewritten by someone who knows what they are doing.

      Another funny thing is, when you start hearing Java programmers talking about "layers" and "timers" and "message queues" and "beans" you need to put some distance between that project and yourself as that sucker is DOOMED. I worked on a system like this that took a year just to read and write from a database using a terrible Frankenstein thing called "Hibernate". Hibernate is what those programmers did while they were on unemployment after the project failed. Another one at my current company flopped horribly after a year of development and the equivalent was written using Perl and Catalyst in a few weeks.

    29. Re:Young programmers keep me employed! by fahrbot-bot · · Score: 1

      The two weeks it took the junior might reflect the shitty code that's already been written (possibly by you), not their programming skills.

      True, but not in this case. I have 25+ years of code (and experience) from which I can pull and reuse. In the end, my code was used for production as it was the more complete, functional and bullet proof (so to speak). In addition, the younger programmer had weak, or under-developed problem-solving skills - which have gotten better over time, but he still leaves foot prints in the rice paper.

      --
      It must have been something you assimilated. . . .
    30. Re:Young programmers keep me employed! by Anonymous Coward · · Score: 0

      Could you please say a little bit more about that Perl assignment? I'm just curious, since it normally takes me a lot of time to do what I think to be the easiest stuff, so I want to know what kind of things should only take two hours.

      (If anyone else cares to join in, that would be great :).

    31. Re:Young programmers keep me employed! by Anonymous Coward · · Score: 0

      In my experience, programmers from India have a completely different take on software requirements than most people do stateside. Unfortunately, it's more a failing of the old, cranky, arrogant American software engineers and analysts who write crappy, open-ended requirements in the States than it is any fault of theirs. It's currently a case of "well, it meets the requirements" and "Yeah, it does, but it doesn't do exactly what I want it to do."

      Rue the day when someone stateside figures out how to write good, precise requirements for programmers in Bangalore that can overcome this small issue of misunderstanding, because that's when the entire American software industry will be laid waste.

    32. Re:Young programmers keep me employed! by Anonymous Coward · · Score: 0

      I agree. Many Indians come to the US by a "broker" (They call them "employers", but lets face it these outsourcing firms are brokers). These brokers then take most of their money (in many cases 70-80% of it). The programmers end up making very little money and these "brokers" (there can be many of them) take the majority of the cut. They start off by saying "ok, we took your resume and lied a bit, you have 6yrs experience in xyz language. Here is a book, learn the language in 2 weeks". They end up paying these brokers for years (they get the majority cut of their salary), living under poor living conditions. I've seen 10 people in one apartment with nothing close to furniture in site. They all sleep on the floor. They don't have to pay rent (which is one of the excuses to take most of their salary) and they end up having to pay money back for their US Visa, which is a few grand. Imagine you make 100 k/yr (what the client company pays for your skills) and then you have two to four brokers that each take a cut of your paycheck. In the end you make as much (or less than) a dish washer in a restaurant and you still need to send money back home to your family.

      I've met some really great programmers from India (they value science and education there in general) - so they have a lot of very qualified people who can code really well. These outsourcing companies make them look bad.

      The problem is with these employers that exploit these people and then do just about anything so that those people can work in the wrong job. These people are then forced into uncomfortable positions when they honestly don't know things because they simply don't have the experience in that technology.

      Personally, I think it should be outlawed what these "brokers" do. If you'd tax the hell out of them then the living conditions would just get worse for the people that come here.

  26. Age Test by Sponge+Bath · · Score: 5, Funny

    If you read this article and are thinking about your career, then you are young. If you are thinking about a naked Jennifer Agutter, then you are old.

    1. Re:Age Test by Locke2005 · · Score: 1

      Jennifer who?!?

      --
      I've abandoned my search for truth; now I'm just looking for some useful delusions.
    2. Re:Age Test by tuzo · · Score: 1

      No mod points, but that is classic!!!

    3. Re:Age Test by elrous0 · · Score: 1

      What am I if I was thinking about the shiny robot?

      --
      SJW: Someone who has run out of real oppression, and has to fake it.
    4. Re:Age Test by Anonymous Coward · · Score: 0

      If you read this article and are thinking about your career, then you are young. If you are thinking about a naked Jennifer Agutter, then you are old.

      wow, she was bonerific back in the day

    5. Re:Age Test by dynamator · · Score: 1

      Ah yes - about 10 thrilling seconds of Jenny. That was the first bit of screen nudity I saw in a movie theater. Even better, it was my first industry screening at MGM. I still have the souvenir copy of American Cinematographer with the lifeclock on the cover. Logan's Run is one of the few films that might actually benefit from a remake. The book is amazing - people were only allowed to live to 21. In the words of Tom Lehrer - "When Mozart was my age, he had been dead for two years"

    6. Re:Age Test by Anonymous Coward · · Score: 0

      mmmm
      Love that cute little nose!

    7. Re:Age Test by Anonymous Coward · · Score: 0

      To quote Michael York during the commentary (during the scene when she nimbly skips across screen), "Oh, jenny, jenny, ... jenny"

    8. Re:Age Test by MoriT · · Score: 1

      Apparently only straight men and lesbians with a thing for accents are old. Good to know!

    9. Re:Age Test by Anonymous Coward · · Score: 0

      If you are thinking about a naked Jennifer Agutter, then you are old.

      I'm old, there's no doubt, but I'm not old enough to fantasize about 57 year old women, yet.

    10. Re:Age Test by PPH · · Score: 1

      Bender, is that you?

      --
      Have gnu, will travel.
    11. Re:Age Test by Anonymous Coward · · Score: 0

      hmm. I've never heard of Jennifer Agutter. Does that make me young? :) I hope so. I started programming in Algol 68, then IBM 1130 Assembler and FORTRAN IV, then APL and Pascal, a bit of shell, a while in management and consulting and startups, then started with PHP in 1995 or 1996. Now I work mostly in PHP and Bash, and I'm teaching myself Erlang. I was there when my Uni went from 110 baud KSR33s to 300 baud Decwriter terminals - woot!

  27. Experience VS Value by DorkRawk · · Score: 1

    Let's face it, a lot of the code being written doesn't require 20ish years of programming experience to do correctly. Obviously, there are exceptions, but more often than not there are other aspects of software development that benefit more from that much time in the industry than simply doing all the code monkey work. If you're being paid the type of salary you should be paid after being in the industry that long, employers are going to want to get something out of you that they can't get out of someone with much less experience.

    So, if you want to be writing code at 40, be able to write code that (most) people who are 20 or 30 aren't able to or be willing to work for the same salary you did at 20 or 30. It's really as simple as that.

    1. Re:Experience VS Value by hey · · Score: 1

      Inflation adjusted hopefully.

    2. Re:Experience VS Value by drdrgivemethenews · · Score: 1

      The code I wrote 10 years out of grad school is a heck of a lot better than the code I wrote in grad school. Observation of others supports the point, which is that you may not be fully mature as a programmer until you're 35.

      Contrary to myth, there _are_ good managers out there. They know what code you've touched, and they know how many bugs in that code have come back to bite them.

      I knew a guy that would fix 10 to 15 bugs a day. Phenomenal. Except most of them were in code he'd submitted as other bug fixes. The bad managers loved him. The good ones didn't trust him.

      There's no simple answer to this problem. I wouldn't repeat this, on the grounds that it's obvious, but most commenters here seem to forget.

    3. Re:Experience VS Value by jeff4747 · · Score: 1

      It's not that the old farts and the young pups are writing the same code.

      The old farts write that same code in 1/4 the time. Because they've already written it several times before on different projects.

    4. Re:Experience VS Value by ClosedSource · · Score: 2, Informative

      They won't offer the older developer a job at any price.

  28. The third way by Anonymous+Brave+Guy · · Score: 2, Insightful

    There is a third kind of older programmer: disillusioned with crappy management but still wanting to do development, they strike out on their own. They either go freelance as some sort of contractor/consultant, or found their own company and bring in other people to do the business side of things while they stay technical.

    --
    If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
  29. Re:It is age discrimination - Yes, It is by tsm_sf · · Score: 5, Insightful

    I was once young enough to work 16 hour days. Now I know better. That is the entirety of the "problem".

    --
    Literalism isn't a form of humor, it's you being irritating.
  30. Everyone over 40 isn't a COBOL programmer... by kimanaw · · Score: 1
    Not sure I understand the fixation w/ COBOL here...I'm well past 40, and have only wrangled a bit of COBOL in my 30 year career. Lots of C/C++, Java, Perl, Python, Javascript, etc., but damn little COBOL.

    As stated elsewhere, one cause is probably just burning out and moving on to something else. Or moving to the position of manager who's making those hiring decisions. Or, if you're actually good at software engineering, moving into consulting.

    ftm, if you're a great developer w/ lots of experience, you probably also have a pretty wide network. The last 16+ years of my career, CV's have been just a formality (if required at all), cuz I already knew the hiring manager.

    --
    007: "Who are you?"
    Pussy: "My name is Pussy Galore."
    007: "I must be dreaming..."
  31. by the age of 35 ... by Lazy+Jones · · Score: 3, Funny

    ... you should have finished the Perl script that does your job / earns your living. Unless you promoted yourself to management, in which case I pity you, fool.

    --
    "I love my job, but I hate talking to people like you" (Freddie Mercury)
  32. Never let 'em see the whites of your eyes. by jgrabell · · Score: 1

    I never tell my age to anyone at a job. I've seen great 50 year old developers squeezed out because a business major thinks they can't be current, "since they learned on a punch card machine".

  33. Mainframe/COBOL Pigeon Hole by Ohio+Calvinist · · Score: 1

    While an anecdote, at 2 places I have worked, there is a perception (I can't say if it is true or not) that older (particularly mainframe) programmers are unable or unwilling to transfer their skills to the client/server or web platforms, and that they are unwilling or unable to learn newer languages/design patterns. Again, I can't say in a generalizable way if this is more-or-less "true" or not, but I think the perception is harmful to the older class of workers whose technology is being phased out in a lot of enterprises (and industry sectors.) For some programmers, there is also a tendency to "self-select" for specialization based on a particular tool chain or language preference. I know I could be a Java programmer, but I am so unfamiliar with the API that I'd be fairly ineffective until I got up to speed. I don't think many workplaces tend to frequently lower performance goals for this sort of learning curve making programmers avoid developing a broad skill set and focus narrowly. IT also tends to differentiate between web programmers, mainframe gurus, DBAs, server managers, etc. causing a further territoriality and specialization. I would also argue that the rapid pace of obsolescence makes programmers particularly vulnerable to this perception (or reality). In industries where the skill set is more static, or there are minor incremental changes or a large number of legacy installations (such as in HVAC repair or general construction) there is less of a degree of specialization and rapid skill set changes.

    --
    Forgive my spelling from time to time. I'm often posting during short breaks.
    1. Re:Mainframe/COBOL Pigeon Hole by Richard+Steiner · · Score: 1

      In many cases, you don't have a choice but to specialize ... business and technical specialization is a hard requirement in order to understand programming problems in some industries.

      Of course, the moment you do that, you're pigeon-holed into that role.

      --
      Mainframe/UNIX Bit Twiddler and long time Windows/Linux Hobbyist.
      The Theorem Theorem: If If, Then Then.
  34. Pay for Missed Opportunity by mpapet · · Score: 1

    here's a trap there, too: a kind of local maxima where, for a while, being an expert in Cobol or IBM mainframes is not only easier than learning Java, but will pay more and more, as you become more and more rare.

    Why they are paying a Cobol programmer more is for two basic reasons.

    1. Not many Cobol programmers around.
    2. Paying you for the opportunity you will NOT take getting into a more modern language. They are paying you more because it will be harder for you to find work later on.

    If you are clever/lucky enough to be able to transition anyway, then more power to you. But deriving maximum benefits from timing the switch to a more modern language is not likely for average guys like me.

    --
    http://www.maxineudall.com/2010/02/should-economists-be-sued-for-malpractice.html
  35. push as hard as you like. by nimbius · · Score: 1

    and if you push them all out youll find yourself tripling indirectly their salary as you employ independent business consultants to troubleshoot some of the most malignant and complex problems in computer programming to which solutions are only gleaned once one has become seasoned and experienced with writing millions upon millions of lines of code. the triangle is civilization: fast, cheap, good.

    --
    Good people go to bed earlier.
  36. From an older worker by strangeattraction · · Score: 1

    How are any of these generalizations any different than any other industry? There is age discrimination by some in both directions. Older workers simply take tired old ideas and repackaged them as something new. Younger workers think their ideas are actually new and expend a lot of effort reinventing things they are not old enough to know already existed. The cycle is nearly complete. Cloud computing is a repackaged version of centralized mainframe computing. Actual advances in industry are much more gradual than people like to believe.

    1. Re:From an older worker by FlyingGuy · · Score: 1

      No mod points for you but a hardy handshake and a beer.

      What a lot of younger programmers don't seem to get is that nothing in the industry is truly new.

      Call it Java, Python, PHP, Ruby, JavaScript, C, C++, ASM, MASM, TASM, COBAL, FORTRAN, call it whatever the hell you like, but when you get down to it, it is nothing but loop and branch, rinse and repeat.

      Among those of us old enough to remember dumb terminals, 3101, VT100 connected to some big box off in a glass case we know cloud = mainframe just not done as well. Far too many failure points.

      --
      Hey KID! Yeah you, get the fuck off my lawn!
  37. Because we all get rich from stock options by 40! by Kenja · · Score: 1

    Right? Why's everyone laughing?

    --

    "Have you ever thought about just turning off the TV, sitting down with your kids, and hitting them?"
  38. Only "Jaded"? by coolmoose25 · · Score: 5, Funny

    The phases of programming (and lots of other things) are:

    - Disgruntled
    - Jaded
    - Bitter
    - Postal
    - Indifferent

    The Systems Development Life Cycle can be thusly described:

    - Wild Enthusiam
    - Beffudlement
    - The Disaster
    - The Search for the Guilty
    - The Punishment of the Innocent
    - The Promotion of the Uninvolved

    (yes - 45 year old programmer who is now a pointy haired bossman)

    --
    Brawndo: It's what plants crave!
  39. Good workers are promoted out of their jobs... by Yaa+101 · · Score: 1

    Good workers are promoted out of their jobs and forced into management positions, this is a problem.
    Further it still seems that coders are accounted on the number of lines they produce instead of the quality and thoroughness.
    You can see this in things like 500MB of crap that is mandatory with a driver installment of your HP scanner.

    It is very hard for managers to see the quality of coders that just want to keep growing scales inside their programming jobs, while making artificial caps on these scales and forcing people that want to grow further to do managerial work instead of what they really like to do and be good at. Often people that are forced up do their managerial work not really good because their hart is not in that.

  40. A question for all you experienced types out there by Pojut · · Score: 1

    I know a decent amount of HTML, but that's about it as far as my programming knowledge is concerned. I'm looking to get into a programming language as a hobby, with no plans to pursue it as a profession. What would you all recommend I look at? I've gotten conflicting opinions on Ruby, PHP, C#...what would you suggest (again, just as a hobby) and why? Thanks for the time.

  41. This is relevant to my intrests by SmallFurryCreature · · Score: 2, Interesting

    Approaching the age of 40 at break neck speeds, I am going to find out how true it is that there are no old coders.

    But frankly, I don't think it is going to be a huge issue unless 40 turns out to be a really magical number. I have had no problems before. Granted, junior positions are no longer open to me, but then, why would I want to?

    I have found that at least in Holland there is a real shortage of good web developers, people who can not just put up a website but maintain it and worse, debug somebody elses mess. There are tons of LAMP developers it seems, and yet companies can't find them. But you got to be able to deliver, how many of the programmers who complain they can't find a job really just aren't any good?

    In fact in an interview Backbase, an small but international developer said in "De Pers" that they were so desperate for experienced developers they had put a freeze on hiring juniors because they did not have the people to train/lead them.

    Yes, some companies might prefer to hire someone young, but these tend to be the grindhouses of the industry, were they churn out project after project with no quality for a low low price. You all know them, the companies that do government IT. If you IT department still insists you run IE6, then you got one of them.

    But there are countless more companies that do try to work for their money were experience and maturity are needed to keep the enthusiasm of the younger developers in line. There has to be someone who can actually debug a third party app if the shit hits the fan and do it without constant hand holding. There is in development and certainly web-development a lot of grunt work that is really a waste to put a senior on, but I have seen what junior's today are 'capable' of. Or rather not capable. It is the parts of a project that go beyond the "teach yourself X in 24 hours" books or even school. It is the years of experience encountering all kind of problems that turn a junior into a senior.

    A smart company therefor has both kinds, the juniors for the grind work and to bring in new ideas, the seniors to keep it all running smoothly.

    And if your company ain't smart enough for that? Move on as fast as possible.

    BUT I just re-read the summary AND the article and there is a problem. The article is about IT-workers while the summary is about programmers. I have started to notice that there is a difference to the point that developers really aren't part of IT at all. I always thought we were, but others disagree.

    So, is the article about how their are no old help-desk jockey's? And could this be because there is a job for senior dev's but not for senior printer unjammers? Just what is IT? A 60+ senior developer is a respectable position, if you are 60+ and still have to install new PC's you screwed up and a kid can do your job cheaper.

    In conclusion, I am not all that worried. Any company not willing to hire a 40+ developer with over 2 decades experience on countless successful projects, I wouldn't want to work for anyway.

    --

    MMO Quests are like orgasms:

    You may solo them, I prefer them in a group.

    1. Re:This is relevant to my intrests by ClosedSource · · Score: 1

      I think many of the comments are from people in the US (myself included). It may be quite different in Holland.

  42. lot of 50-something developers in my company by peter303 · · Score: 1

    Its in the energy industry where many of the developers have domain-knowledge degrees like geology. The management attempted offshoring a few years ago. But it was an utter failure due to the lack of domain-knowledge developers. China and India college training is too specialized.

    I've seen similar issues in vertical industries like aerospace, utilities, oil companies which are not attractive to recent college graduates. Boomer dominate. This is becoming an issue as boomers retire. But I call it "job security".

    I'd say the only drawback is you dont see people putting in more than 50-hour weeks at the most. This would be suicide for a gamer or F/X company.

    1. Re:lot of 50-something developers in my company by bmpc · · Score: 1

      The same is true in the company I work at, which develops products related to resource planning. Most managers and team leaders of my department are both managers and coders. They have a lot of valuable knowledge.

      Domain knowledge is essential because it makes you more valuable. Specially if the products are complex, since the new guy will have to receive a lot of training before he can become useful.

      If you work on generic applications or websites where you only need to know technical skills (like a Programming Language + SQL) you are easier to replace with a younger guy.

    2. Re:lot of 50-something developers in my company by mcgrew · · Score: 2, Insightful

      I'd say the only drawback is you dont see people putting in more than 50-hour weeks at the most.

      IMO working more than 40 hours a week is brain-dead stupid, unless you love your work more than you love your life. Why in the HELL would anybody sacrifice any more of their precious time than they have to? Just a couple of decades ago if your job required more than 40 hours it was referred to as a sweatshop. A hundred years ago when it was easier to exploit the poor, twelve hour seven day workweeks were the norm.

      Things are going backwards, and you dumb kids are helping it happen. STOP IT!!!

    3. Re:lot of 50-something developers in my company by jasenj1 · · Score: 2, Insightful

      Totally agree. I don't know why people can't grasp the concept that no matter how much work you do today there will be more to do tomorrow.
      I hear people all in a tizzy say, "I HAVE to get this done" and I just shake my head. Why? What will happen if you don't? A deadline will slip? They've been slipping for thousands of years. Yours slipping won't bring civilization crashing down. Use this crisis to learn to set realistic deadlines and manage expectations.

      Now I'm not advocating being slack or lazy. Put in a full day's work. Work hard. Get things done. But GO HOME! If you can't set borders on your life and personal time, your employer will happily work you 80 hours per week - and you'll still have too much to do, just like when you were only working 50 hours a week.

      I think some people just operate in perpetual crisis mode. There's something about the feeling of urgency and immediacy that drives and sustains them. Not me.

      FWIW, I'm 41, been a programmer/"software engineer" for going on 20 years, have been at my current position at a large company for 10 years. All my customers praise my performance and results. I deliver solutions that work on time - with very rare extra hours.

      I continue to enjoy the software development process: study problem, select solution platform, implement. I'm mostly a Java hack (learned Pascal & C in school), am picking up Groovy & Grails, do a fair bit of XSLT, and am getting more versed in "semantic web" technologies (RDF, OWL, Sesame). Being a coder does mean constant learning, but I'm finding the things I'm learning these days are "higher up the stack" than earlier in my career.

      As others have pointed out, the young bucks tend to have fewer obligations outside work (read family), and are more eager to make a name for themselves impressing management. I don't know that there's a way to solve that. I enjoy my job, but it is a job; I have other things to do with my life. If management chooses to discard the institutional knowledge and experience I have, that's their choice.

      That was a long rambling response, but it is a subject I am definitely familiar with and interested in.

      - Jasen.

  43. Quality vs. Quantity by AthleteMusicianNerd · · Score: 1

    "Cheaper young 'uns will work longer hours and produce more code."
    It's not necessarily useful. Some young 'uns produce pure drivel.

  44. Obligatory Logan's Run Comment by LoganPhyve · · Score: 1

    Perhaps we should raise the age for which the older IT pros are sent to carousel.

  45. And they would be wrong by SmallFurryCreature · · Score: 1

    Take them both. One is a junior, he might know his own tiny little environment, but everything else is going to suck, while the experienced guy can pick up a new language in a flash and in the meantime keep the young guy from making to many basic mistakes.

    --

    MMO Quests are like orgasms:

    You may solo them, I prefer them in a group.

  46. Y2KBC problem by handy_vandal · · Score: 1

    I tell ya, hauling a four-ton obelisk upright using rope and logs and manual labor gives new meaning to the word "rollover" ....

    --
    -kgj
  47. Ummmmmm, completely incorrect by Anonymous Coward · · Score: 0

    Companies are hiring people that haven't learned anything new in 20 years because of their "experience" given that they're willing to work for the same price offered to anybody else. Assuming the work hasn't already been sent to India/China/Russia it's all about cost because hiring managers know that they don't know how to figure out which applicant is better and they simply lean towards "experience" because they've always thought that meant something in their career paths plus it simply means older and frankly more controllable if they may have families and therefore are less likely to pick up and force them to restart again.

    1. Re:Ummmmmm, completely incorrect by ClosedSource · · Score: 2, Insightful

      I've been in the industry for over 20 years and I've never encountered a developer in all that time who hasn't "learned anything new in 20 years".

  48. Is Experience Worth Anything? by itsdrewmiller · · Score: 0

    I recently read Peopleware, where they said that in their coding war games experience had no correlation with performance. If experience costs more and has no benefit in development, why would a firm be willing to pay more for it? (Caveat: Maybe experience has beneficial effects outside of raw development.)

    1. Re:Is Experience Worth Anything? by Richard+Steiner · · Score: 1

      A lot of experience can be offset with pure talent, but I've worked with a few people who have both, and that is a formidable combination.

      Experience is most helpful in a support/troubleshooting role or when designing an operationally critical system on which something important depends.

      The act of writing code, by itself, isn't really a big deal.

      I've never worked in a place where people just wrote code ... normally the folks who wrote the code did the initial technical design and supported it after it was cut over into production. Then again, I've mostly worked in places which write software for their own consumption, not software for external sale.

      --
      Mainframe/UNIX Bit Twiddler and long time Windows/Linux Hobbyist.
      The Theorem Theorem: If If, Then Then.
  49. Oh crap! by stox · · Score: 1

    Is that what that glowing thing in my palm has been trying to tell me the last 8 years?

    --
    "To those who are overly cautious, everything is impossible. "
    1. Re:Oh crap! by beej · · Score: 1

      Is that what that glowing thing in my palm has been trying to tell me the last 8 years?

      "Code, Coder!"

    2. Re:Oh crap! by gestalt_n_pepper · · Score: 1

      No, that's just your cell phone. Now answer the damn thing!

      --
      Please do not read this sig. Thank you.
  50. Re:A question for all you experienced types out th by addaon · · Score: 1

    I know a decent amount of HTML, but that's about it as far as my programming knowledge is concerned. I'm looking to get into a programming language as a hobby, with no plans to pursue it as a profession. What would you all recommend I look at? I've gotten conflicting opinions on Ruby, PHP, C#...what would you suggest (again, just as a hobby) and why? Thanks for the time.

    PowerPC or MIPS assembly. After that, you'll understand what a computer does.

    Then Common Lisp or Scheme. After that, you'll understand what a programming language does.

    Then Perl. After that, you'll understand the alternatives.

    Then C, and you can write some real code.

    --

    I've had this sig for three days.
  51. No, it is not age discrimination... by Jahava · · Score: 2, Informative

    The summary says that it's not merely age discrimination, then goes on to say that they hire younger workers because they are cheaper, without bothering to account for experience. That is age discrimination.

    That is not age discrimination. Younger workers are hired because they are cheaper, not because they are younger. If two people cost the same and the older of the two was better-qualified, but the younger was hired anyway, that is age discrimination. I can see why you would be confused, since younger people tend to also cost less.

    Unfortunately, programming experience doesn't linearly scale with code quality. Eventually, the gain in code quality tapers off, and the more-experienced higher-salaried employee is not worth paying extra for. There are exceptions ... some people are just phenomenal developers and are hard to replace ... but this article is not about them.

    1. Re:No, it is not age discrimination... by mounthood · · Score: 1

      You're right that it's not discrimination so much as managers who want to pay less, but you're wrong to suggest that it's a cost-quality trade-off that's "not worth paying extra for." The real issue is that companies want everyone the same (just another cog) and they don't expect IT Managers to judge good programmers from bad. Managers get blame for paying too much, but not for hiring a poor performing employee. If they hire cheap they can't be blamed; if they hire expensive then they are responsible.

      --
      tomorrow who's gonna fuss
    2. Re:No, it is not age discrimination... by ClosedSource · · Score: 1

      The problem with your theory is that if it were true the companies would first make their low-ball offer to the developer with the most experience hoping to get a bargain, but in practice this doesn't happen.

    3. Re:No, it is not age discrimination... by Anonymous Coward · · Score: 0

      [Citation Needed]

  52. The Pretender by Anonymous Coward · · Score: 0

    Yes, I had to get into management because of this. And here, I find that most of management have absolutely no clue of reasons behind what they do. They simply ape what they see people doing that seem to know what they are doing. And most programmers I have seen lately are also apeing and making noises like something they saw on youtube or found on google. All the buzzwords and none of the ability.

  53. Keep that Pedobur grumpah loxd up plz. by Anonymous Coward · · Score: 0

    in teh igloo, floating on an icesheet in the atlantic, preferably drifting to France -- Tokyo style.

  54. 24 months to burnout on average? by StandardDeviant · · Score: 2, Insightful

    Two years seems to be the developer half-life in most shops. By that point if you're worse than average they've canned you, and if you're better than average your responsibilities have grown to the point that you're spending as much or more time dealing with cross-team organizational bullshit as you are doing what you actually love (writing code) and hence wanting to quit. :) The thing is, I think every gig has problems, and often they're the same tedious set of problems, but people jump in the hopes that maybe, maybe the grass will actually be greener THIS time. (After a decade or two of corporate culture, further, it's all too likely that the truly idiosyncratic individuals will have accumulated enough capital and enough disgust with the system that they give it all the finger and go run a bar just to pick one prominent example.)

    The other direct motivator that comes to mind is money. All too many shops hire you at a rate that approximates more-or-less-if-you're-lucky Market Rate for your skills and so forth, then want to give you sub-10% raises for ever and ever thereafter. Ergo it's easier to ramp your salary in tune with your experience by jumping periodically. This is perhaps most prevalent in the first ten years of a programming career as there are big deltas at roughly two and five and seven-ten years of experience as you start to [potentially] hop up the org chart some from junior to regular to senior dev.

    So in short I think that getting fed up with a given situation and taking steps to change it for (hopefully, maybe not, probably not... but hopefully) the better is both normal and healthy. Or are you of the opinion that backing the same crappy horse for years is the best way to go through life?

  55. I now do 16 hours work in 4. by SmallFurryCreature · · Score: 1

    Really, I work less and do more. And that whole "in the groove" thing the summary mentions? Just don't bother me no more. I answer the phone, deal with e-mail, help juniors with problems, monitor several projects and mediors and debug stuff nobody else can figure out all while drinking coffee and without working insane hours and no longer needing to study night and day to keep up-to-date.

    One of the best things you can learn? Use your juniors to keep up-to-date, if it is important enough, they will figure it all out, you then learn from them, ridicule them a bit for the mistakes and oversights they made then promote then ones that made the least and voila, senior/CTO salaries for a few hours work a day.

    Really, I am never impressed when someone works overtime. 8 hours is more then enough to do a decent job, why do you need 16? Any boss that wants lots of overtime is doing the old IBM method of paying programmers by the line.

    --

    MMO Quests are like orgasms:

    You may solo them, I prefer them in a group.

  56. Entire article is flawed by bolthole · · Score: 1

    The entire article is based on "rebutting" an unfounded premise: that something "pushes out" programmers older than 40.
    This has not been proven by the article.
    It makes an unfounded assumption, and then rambles on with more unfounded principles and guesses.
    The writer (if not the editor) should be "encouraged" not to submit any more articles there.

    data point: I have a degree in CS. I started my career as a programmer.

    I dont *want to* be a programmer any more. (and I made that decision when I was 30, let alone 40)
    Not because I'm no good at it: i'm actually a damn good programmer (*cough*). I just dont want to do it for 40 hours a week any more.

    1. Re:Entire article is flawed by ClosedSource · · Score: 1

      So you stopped programming professionally at 30 but you don't believe older programmers are "pushed out" based on your personal experience?

  57. My tolerance for BS has dropped as I've aged by opentunings · · Score: 2, Interesting
    I spent 13 years working in development. I survived matrix management, interchangeable plastic people, managers who couldn't prioritize work, managers who couldn't understand the purpose of a Gantt chart, senseless incentive plans and other IT management disasters. At 45 (a little late, I guess) I realized that I was simply sick of the BS that comes with being a drone in IT. 13 years ago I was offered a job in 3rd-level tech support (production DBA, in the trenches every day), and took it.

    The politics is much lower on the production support side, which gets you out of most of the BS. No requirements drift, fewer communications problems, no crunch-to-meet-the-deadline, etc. So the move's been good for me.

    But I've also noticed that my tolerance for BS in every area of my life has dropped as I've aged. Like the time when a grocery clerk had some apples and a box of cereal on the weigh station while she was weighing the apples. I pointed out to her that she was weighing the cereal at the same time as the apples and the weight / price would be wrong. "No," she indicated, "the scanner will read the cereal and get the price right." After a couple of minutes a manager came over, removed the cereal and weighed the apples. I left before she explained the issue to the clerk, who was still wondering how the apples dropped by a pound.

    It's become quite a struggle, as I grow older, not to stand up and shout whenever someone makes a decision solely for political reasons, or when they don't understand the value of training employees of any age bracket, or when I work for someone who's incapable of making a decision. In my younger days it was easier simply to ignore it, but now in my late-50's it's sometimes quite an effort to ignore the BS that comes my way.

    People talk about how you should "pick your battles." Walking away from the BS, on my terms, was my way to pick my battles.

    1. Re:My tolerance for BS has dropped as I've aged by gestalt_n_pepper · · Score: 1

      For the record, I'm 52, program mostly in vb.net and/or C# and am looking forward to figuring out cloud computing.

      That said, I agree very much with OpenTuning's statement. The amount of sheer incompetence shown by the people I must deal with in my day-to-day life outside of work is simply mind boggling. I talk to clerks and salespeople in their 20s who seem to think that adding, subtracting and reasoning are quaint products of a bygone era. Apparently all things in life that matter can be found in the telephone screen. Guess I missed the memo.

      I don't shout. I hide. As a developer, I manage to arrange large chunks of time where I don't need to interact. I pretend to care about the 4th flavor of agile that is failing as miserably as the previous 3. I stay quiet in meetings unless it's absolutely necessary to point out some obvious fact that has been missed. I try and avoid them altogether.

      At this point, I come to work for refuge and reassurance that stupid pills have not been issued to the general populace while I wasn't looking. I'm not convinced.

      --
      Please do not read this sig. Thank you.
    2. Re:My tolerance for BS has dropped as I've aged by mcgrew · · Score: 1

      But I've also noticed that my tolerance for BS in every area of my life has dropped as I've aged.

      I've noticed the opposite with myself. I was pretty much a hothead when I was young, but have mellowed with age. In the apples/cereal fiasco, I would have pittied the poor retarded clerk who was likely to never get anywhere in life, due to her lack of reasoning abilities, and simply said "humor me, take the cereal off." If she refused, I'd simply lef tthe groceries on the counter and left.

  58. Re:A question for all you experienced types out th by SpinyNorman · · Score: 1

    For hobby use, with no particular application in mind, I'd suggest learning Python. If you enjoy that and want to get more serious about programming, then learn Java, C# or C++. If you have in mind WHAT you'd like to program, then different advice may apply.

    Python is well designed and scales up reasonably well (unlike, say, Perl, which does neither). It's more fun to start with an interpreted language due to the instant feedback you get.

  59. Re:A question for all you experienced types out th by Pojut · · Score: 1

    I don't really have anything in particular that I want to create, I've just always wanted to know more programming languages than HTML and the BASIC-like language on a TI-83. Thanks for the suggestion!

  60. Downtime and Experience by butabozuhi · · Score: 2, Insightful

    A related issue is the 'downtime' associated with some productive programmers. I have a really good, really experienced programmer that does work in 'cycles.' Super productive, head-down, jam until fixed/completed, then a period of 'less productive' research, a proclivity to chat, and some fooling around. Overall, more productive than most other programmers I've worked with plus high quality code. Outsiders (even 'IT outsiders' who don't understand programming) look and question this guy's productivity and wonder if he should be replaced with a less expensive option (i.e. 'hungry' newbie). Experience helps you see things the new guy won't and, in many cases, helps you be more productive instead of busy flailing around.

    --
    mu
  61. "All generalizations are false ..." by Anonymous Coward · · Score: 0

    The notion that you can't develop software at an advanced age is demonstrably false.

    The periodic stories on Slashdot about programming careers being over when you get too old (over 25??) are amusing to me. I am 63, and in the last year have gone from C programming to Java programming and am having a great time. I work in the space industry where domain knowledge counts a great deal, so I find I am a sought-after, scarce commodity. I am deveoping GPS navigation systems and Kalman filters for space vehicles. I am hardly unique in my shop.

    That said, pressure to leave technical work and move to management as one ages is strong. I made a career decision to avoid management but have had non-management technical lead positions for many years. The key to doing this is to keep one's expertise fresh. After a few years out of hands-on software development it is very hard to get back in. Another tactic I have used to keep going is to work on open source software after hours, which has kept me going during times my work was less technical.

    While there is no doubt that mental capacity diminishes with age, there is a use it-or-lose it aspect to programming facility (or other mental skills) as you age. Voluntarily giving up technical work is a far bigger factor than diminished capacity with age. I make a point of constantly tackling tough intellectual problems, and, equally important, keep physically fit. You can find me at the gym or on the running trail daily. It's tough to keep sharp mentally if you don't stay fit, sorry Slashdotters!

    There are a lot of things that do get tougher mentally and physically as you age for sure, but self-imposed and unjustified expectations of decline are the main cause of loss of ability.

  62. Great programmers are born by EmperorOfCanada · · Score: 1

    Experience really helps make great programmers get even better but I have also found that mediocre programmers merely become set in their ways. I know some network admins still torturing their Novell networks into doing stuff that quite simply nobody does anymore. They were crappy admins 20 years ago and now they are crappy admins with some serious seniority. The same with programmers. I have met old crappy programmers still trying to milk the lotus notes cow dry. And the worst is when you get really experienced hard core crappy programmers who think it is a good idea to architect systems where you start by reworking the Linux kernel (using some assembler) to accomplish things that you literally could do in python and not push python too hard. (Didn't make up the last line).

  63. It's a failure to keep up. by tthomas48 · · Score: 1

    I see this with people my own age, and people just getting out of college. There are programmers who keep up with new technologies. Who are always experimenting in their free time. These people are always employed. Then there are people who learn one technology and then begin their slow descent into obsolescence. This seems to be the majority in computer science unfortunately and I've actually seen a few programmers whose refusal to learn new technologies had them exiting the profession before they hit thirty.

    I worked with a programmer in his sixties two years ago who was doing all the latest Ajax/CSS/Java stuff. Sure he'd been a cobol programmer, and a C programmer, but he had learned the new dominant technologies and still had a job. I've seen plenty of discrimination in job interviews, but it's generally snobbery about preferring one degree over another, or one company over another. I've never seen "old" used as a reason. That said, we don't call Cobol programmers in for interviews for Java jobs. I don't really think that's discrimination though.

    1. Re:It's a failure to keep up. by talexb · · Score: 1

      I made the huge mistake of deciding that C was all I'd ever need back in the early 90's. I quickly found out that there were new technologies (HTML, Unix/Linux, awk, Perl) that I needed to learn, and pretty damned fast if I wanted to land another job.

      That's a mistake I'll never make again. (I think that was also around the time that I put off procrastinating about getting a home computer, and got a Windows 95 box that I could dual boot to OS/2.)

  64. Did ANYONE read TFA???? by Anonymous Coward · · Score: 0

    Wow! True to /. standards, it doesn't look like anyone, not even one person, bothered to read the article, not even the original poster!!!!

    The article says EXACTLY THE OPPOSITE. It says that older programmers are less likely to be unemployed and people being paid higher wages are less likely to be laid off.

  65. I found the career too limiting on family time by mrflash818 · · Score: 2, Interesting

    I jumped out of being a professional programmer, once I found out that it was taking too many hours away from family time.

    When I started as a programmer, was newly married, no kids, didn't mind long hours, and giving the job priority over home time.

    Started a family, then once I realized I wasn't getting to spend time with my little ones: career change.

    No regrets, but I do miss the self-image of being a professional computer geek :)

    --
    Uh, Linux geek since 1999.
  66. Re:A question for all you experienced types out th by codepunk · · Score: 1

    I would second the python vote, all around easy, pleasant, elegant language that runs on just about everything. I know
    every single major language but python is usually the first thing I grab for in most situations.

    --


    Got Code?
  67. I know why. by Yaos · · Score: 1

    By the time they hit 40 they either go crazy and jump off a bridge, or they have a heart attack from the stress.

  68. Sorry, at Age 68, I'm Still Having a Ball! by CAOgdin · · Score: 2, Informative

    Now, admittedly, I'm an independent business owner and computer consultant. But, that means I have to sell myself to every prospective client each time they're first introduced to my company and my services. I build systems, providing "contract CIO" advisory services, write the odd special-purpose program (or modify one for a client's specific needs), and all for a fee I can characterize as "a pretty penny." Age discrimination is, in my opinion, in a convenient excuse for not staying abreast of the latest advances and tools. I'm spending my time, just as this is being written, figuring out the ins'n'outs of Windows 7, so I can do a better job for my clients, whom I expect will be upgrading over the coming months. My erstwhile competitors, aged 30-50, are still insisting the only solution for client problems is a wholesale reinstall of Windows XP Pro. Most people peg my age at "mid-50s." Is my appearance a bonus...or a consequence of my insistance on investing hours every week in learning new things and in keeping my mind "fresh."

  69. Im not old, im gold... by SolarStorm · · Score: 2, Interesting

    The only comment this 49 year old is that I produce twice as much code as the youngens in my 40 hr work week, than they do in their 60 hrs (yes I do have a lot of domain knowledge to go along with some experience and libraries I have developed). I actually hit my timelines, give reasonably accurate estimates. But only earn 30% more. Then again, I have three department heads arguing over who gets me next... My favorite was a contract I did where the company policy was to hire 34 NEW graduates and pay them almost nothing with the monkey-bible theory. I made a TON of money when they need to call in some experience to get their software to work. I wish more companies would do this :)

  70. becoming obsolete by John_Sauter · · Score: 1

    ...I have a couple of friends in their 50's who joke about becoming obsolete. I associate this with actually getting tired of keeping up with an industry that reinvintents itself so often, and therefore, not keeping up. There's a trap there, too: a kind of local maxima where, for a while, being an expert in Cobol or IBM mainframes is not only easier than learning Java, but will pay more and more, as you become more and more rare. Until one day you look for your next job and it just... isn't there....

    This is exactly what happened to me. I was a programmer at Digital Equipment Corporation from 1975 to 1992. I got used to DEC's languages and procedures, so when I was laid off I my skills were irrelavent to the market. I got a non-programming job supporting DEC products, and today I am a temp installing Microsoft Windows Vista on behalf of Hewlett Packard. I have taught myself the newer languages, but employers are looking for recent experience. A 64-year-old programmer with no non-DEC programming experience since 1975 is unemployable in the current market. Does anybody have a use for someone who remembers PDP-1 assembly language from 1963?

    1. Re:becoming obsolete by Anonymous Coward · · Score: 0

      I won't tell you the specific job to apply for, but I can tell you there are jobs out there where low level skills and old school institutional knowledge are a big net positive for an applicant. A competent manager hiring for a job like this would see your track record and be intrigued, and then want to look at your work.

      As far as gaps, there are two things I'd say. First is, I've personally hired some outstanding people with many-year gaps (owing to a variety of reasons). But not everyone thinks that way. So that brings me to the second thing.

      If you're serious about being in the game, then you should have work to show, even if you're not getting paid to do it. Get into an open source project - preferably something interesting. Start one, if nothing out there appeals. Commit some good code. Put it on your resume, and bring it with you to interviews. That's the same advice I give to kids who apply right out of school, with the same problem, btw. The better people you're competing against in the workforce are doing this.

    2. Re:becoming obsolete by hondo77 · · Score: 1

      I have taught myself the newer languages, but employers are looking for recent experience.

      When it was time to leave my long-time C programming job in 1999, I wanted to hop on the dot-com bubble. I had taught myself Perl but since I didn't have any on-the-job experience with it, employers didn't want me. I finally found a company that would hire me but it didn't work out and two months later I was back on the market. This time I had on-the-job Perl experience, albeit only two months' worth, and employers were falling over themselves trying to interview me. Weird but true. Get that foot in the door somehow.

      --
      I live ze unknown. I love ze unknown. I am ze unknown.
  71. medium-term memory and stamina less by peter303 · · Score: 2, Interesting

    I'm the same age Bill Gates and started coding the same way: teletype to nearby college from my high high school. I've noted two changes in coding ability over the decades: (1) I could keep 20-30 pending ideas (features, bugs) in my mind while coding when young. Now I use a notepad for this. (2) I haven't done an all-nighter in a while. But 10-12 hour sessions still happen.

    Other than that I can still devour a language manual and do useful coding in a day. And I have a huge repetoire of ideas which go in and out fashion over the years as hardware and software evolves. Much of design is "deja vu, all over again" to quote a baseball philosopher.

  72. Old programmers - become "they" by presidenteloco · · Score: 1

    Remember, when blaming "they" ("they do this","they don't know that") there really is no "they".
    It's different executives each time.

    Fundamentally, it is up to old programmers to start their own tech companies, so that
    programmers can be given the gift of not having to work for non-technical managers
    who don't understand what is important in programming ability and programming environment.

    Google. Geek executives. Need I say more?

    --

    Where are we going and why are we in a handbasket?
  73. Re:Young programmers ... I call foul by davide+marney · · Score: 1

    What's best about these guys is that they often haven't produced even a line of code. They just spew out UML diagram after UML diagram. I look at the diagrams, talk to the users, and it becomes obvious what should be done.

    Hmm. I'd like to call a mild foul on this statement.

    Are you saying you look at the UML models, ignore them, and then just talk to your users, or that you look at the models, and based on what you've gleaned from them, talk to your users, get to the heart of the matter, and start coding?

    If it's the former, then why bother even looking at the models in the first place? They're messed up, as you say, so ditch 'em.

    But if it's the latter, then at least part of the reason why you're able to be so effective is because you're using somebody else's work as your starting-point. Hardly seems fair to say they're "fuckups", when you're basing your work on theirs.

    --
    "We receive as friendly that which agrees with, we resist with dislike that which opposes us" - Faraday
  74. RE: Developers: "Logan's Run" Syndrome In Programm by Anonymous Coward · · Score: 0

    57 years old...

    35 years, and NO Cobol (basic, assembler, Fortran, C, C++ C#, VB.NET, SQL(Oracle/SQL Server), Clipper, dBase, Windows, Mac, Unix/Linux, et...). I'm the guy you call when there is no one else to call.

    I've been through the discrimination thing.

    So, they can hire all of the 'young guns' they want. When they screw it up they can then hire me as a consultant, pay the big bucks, and get it straightened out.

    Yeah, I am that good.

    Most managers just don't understand. You either pay now or pay latter. I don't care; they will pay me sooner or later...

  75. Frankly, I got bored with programming by davide+marney · · Score: 1

    Programming is a young person's game. In the beginning, it's exciting to have this fantastic machine bow to your every command. After 20 years, however, I had done everything I'd ever wanted to do in programming. I was more than happy to let the next generation take over.

    What I became interested in was moving up a level in abstraction, and I got into modeling and architecting designs rather than executing them. Seems like a fairly natural progression to me, so yeah, I'm not surprised that the number of developers 40+ is small.

    --
    "We receive as friendly that which agrees with, we resist with dislike that which opposes us" - Faraday
  76. we just hired an older programmer by oudzeeman · · Score: 4, Interesting

    We just filled a senior level programmer position with someone in their 50s. This person had a great resume, and did an awesome job in their interview - blew pretty much everyone else we looked at away. I'd say he's easily 1000X better than the last young intern we had (now a grad student in CS). I'd say most of the programmers here are in their late 30s to mid 40s. A few are older (50ish). I'm a young one here, a "senior" software engineer by title at the age of 30.

    We're actually considering going after some young blood and spending the effort to mentor them because we have such a hard time recruiting older developers.

    1. Re:we just hired an older programmer by talexb · · Score: 1

      When I was hired by my current employer two years ago, the lead interviewer was one of the senior developers. He was born two days before I got accepted into University.

      Fortunately, the age difference didn't matter to either of us. They were doing some cool stuff and needed great developers; I was really interested in working with a bunch of motivated, bright folks. A good fit.

    2. Re:we just hired an older programmer by Bardez · · Score: 1

      At 25, I would like to be considered for this "young blood" recruiting. Please to be contacting me for experience in the dot nets.

      --
      Perception is the thin dividing line between reality and fiction.
    3. Re:we just hired an older programmer by Anonymous Coward · · Score: 0

      we have programmers what are in their 60s and used to have one guy who was in his 70s who was working part time.

  77. Yes but the industry is also young by e2d2 · · Score: 1

    Yes but the industry is also young. I think as it matures it will accept constant wisdom over spurts of creativity just like all other engineering disciplines. The younger generation gives a little too much "Yes! Yes!" and not enough "I'm not sure".

    On a side rant - The confidence coming from young programmers is, well, ridiculous. I was hot shit when I was in coding my 20s . But I grew up. Now I'm just okay at what I do. By the time I'm done I'm convinced I won't know shit.

    I hope to God I'm programming after 40. I'm just not sure I want to be doing it for someone else by then.

  78. Cheaper young 'uns will work longer hours? by joeyblades · · Score: 3, Insightful

    I have observed the opposite. The young 'uns want to go home early so they can party and come in late 'cause they partied last night... And at home, when I'm punching in some extra hours, I only ever see old farts still on-line.

    1. Re:Cheaper young 'uns will work longer hours? by s2theg · · Score: 1
      Younger developers may seem cheap because of the price tag, but this does nothing to address:
      • the cost of maintaining a system built by a bright young person who lacks experience and knowledge
      • the cost of maintaining a system built by someone who doesn't know when to clear their mind and think a little more about a problem
      • the cost of maintaining a system built by someone who doesn't know when to incorporate already implemented software packages/api's/tools
    2. Re:Cheaper young 'uns will work longer hours? by pipedwho · · Score: 1

      That's not them online, that's their Perl script logging in at 8pm to deliver the email they wrote just before they left the office at 5pm.

      A tried and true way of appearing dedicated is to send a few emails timestamped late into the evening.

    3. Re:Cheaper young 'uns will work longer hours? by swordgeek · · Score: 1

      My observations haven't been tied directly to hours worked, as much as styles of dedication.

      A new kid may stay late on a supercool project, and burn for weeks on it. However, it's the coolness (or lack thereof) that determines how they work.

      Older folks will generally work hard on the project they're working on, whatever it may be, but go home at a normal hour. On the other hand, if there is a real deadline driving a project, they'll likely burn hard to get it done. (Assuming the deadline is at least rational, of course.)

      It's about ownership and professionalism, things which tend to grow over time as fatigue and "the real world' set in to veteran staff.

      --

      "People who do stupid things with hazardous materials often die." -- Jim Davidson on alt.folklore.urban
    4. Re:Cheaper young 'uns will work longer hours? by walterbyrd · · Score: 1

      About two years ago, I worked on IT team where everybody was over 45, except one guy who was 26. If the 26 year old came in 30 minutes late, it was practically like he was early, Two hours to four late was more typical. We were all amused by his daily excuses, like "my roommate's cat was sick."

  79. I'm 54 by Anonymous Coward · · Score: 0

    So I'm 54 years old - and I've been programming since I was 14 years old. I have no problem getting good, well-paid jobs as a senior C++ programmer and lead software engineer. Not every company needs someone with that much experience - but those who do, seem to value what I have to offer.

    Keeping up with modern technology is something I have to consciously have to do - but anyone over the age of maybe 25 needs to do that. If you're 25 and you haven't learned anything new since you were in college - then you're in trouble LONG before you hit 40.

  80. as a 30something trying to get -into- the field by Teunis · · Score: 1

    For about 20 years I've been trying to get -into- the field of professional programming - but due to being geographically isolated location it's been ... difficult.
    I'd say age isn't the only factor.

  81. Only Show 10 Years Max on Resume by Anonymous Coward · · Score: 0

    A resume doesn't have to date you. Anything you did more than 10 years ago is probably no longer relevant. I'm 39 and I've been making money from coding since I was 16... I am sick of programming... actually I was sick of programming 10 years ago, but it still pays the bills. The best thing to involve yourself with is the stuff that can't easily be outsourced to India... e.g. iPhone software programming, .NET programming.

  82. Re: re-re-re-training... by Rob+Y. · · Score: 1

    I can't fault management for not wanting to pay for retraining

    Any decent-sized software system is going to require a large amount of training specific to the system at hand. Perhaps, if the thing's all been built from scratch using the technology du jour, then maybe that recent grad will be more valuable than someone with real-world experience working on a large system that developed (shall we say) organically over a long period of time. But most systems are real-world cases.

    The problem is that upper management wants to 'acquire' cheap young programmers like widgets. They can't get it through their thick skulls that after these kids finally become useful, they want raises or they're gone. Lather, rinse, repeat. At the back of this mindset is an eventual outsourcing job, where the turnover problem gets 'outsourced' too (in the 'not my problem' sense, not in the 'not a problem' sense). The fact that the resulting project fails 30 to 40 percent of the time is irrelevant. Management types have perfected the art of 'failing up'. They're off to bigger and better things long before the train wreck they set in motion actually occurs.

    --
    Posted from my Android phone. Oh, I can change this? There, that's better...
  83. Re:It is age discrimination - Yes, It is by mcgrew · · Score: 5, Insightful

    I was once young enough to work 16 hour days. Now I know better. That is the entirety of the "problem".

    My friend Amy, whose dad would be a year younger than me had he lived, is amazed by my ability to come home from work, drink with her until the wee hours, and get up and go to work the next day. Perhaps that's because I was never stupid enough to work a 16 hour day -- I don't live to work, I work to live. I've been like that since I started working at age 16. I'm 57 now and look ten years younger than friends who are ten years younger than me.

    Hell, I once passed up a promotion just to not have to work overtime. Money is just a tool, and one should never let his tools get in the way of what you obtained the tools for in the first place.

  84. You dorks are too young to remember Logan's Run by Anonymous Coward · · Score: 0

    No carousel jokes? No runner jokes? Besides, it's 30 in Logan's Run. None of you fools mention being burned out either...HELLO!?!?!?!

  85. Re:A question for all you experienced types out th by secretcurse · · Score: 1

    If you're comfortable with HTML, I'd go with PHP. It's basically a scripting language that makes your HTML do dynamic, interesting things. Tie your PHP learning with some sort of SQL database and it's not too complicated to make fun projects that are useful. There are a million good PHP/MySQL books out there. I'd take an hour or so, go to a bookstore with a large programming section, and grab a handful of books. Read the first chapter or so from them and find one that has a writing style you will enjoy, then go home and start hacking. The PHP/MySQL stack is nice because it's free (both as in beer and as in liberty) and there are lots of great resources on the web.

    --
    I'm using all of my mod points to mod ancient memes down. Please join me.
  86. I'm 54... by Anonymous Coward · · Score: 0

    ...and I am always amused by the youngsters who think they know more than their elders. It's particularly bad with Gen-X, which seems to have grown up with a chip on the shoulder that "people in the Boomer and WWII generations are all stupid, and everything they did is crap."

    Yet, now that Gen-X is hitting 40, it doesn't seem to be such a good idea to be smart-ass contemptuous any more.

    The problem with assuming that Boomers don't know anything about OOP is that they are the generation that invented OOP. There's also a lot that they know that Gen-X never learned.

  87. I've experienced the following.... by ErichTheRed · · Score: 3, Interesting

    (Disclaimer: I'm a systems guy, not a programmer, but a very similar truth holds for us as well when it comes to age discrimination.)

    I'm only 35, and I'm starting to see this creeping in on me also. Here's a couple of random observations I've actually (not anecdotally) experienced:

    • Companies absolutely believe the stereotype that older workers are less productive. Usually, this is because management gets promoted out of the tech ranks, where they were used to younger workers. I've heard more than one boss say something like "Oh, so-and-so's kid is sick AGAIN, what a waste of time." The deadly spiral of "willing to work longer hours, no committments, and they can be paid less" does not help.
    • A corrolary to the above...younger tech workers tend to have much less of an "out of work" life. This is why you don't see too many older people working at video game production houses...you just can't hold a marriage together on nonstop 90-hour weeks. If you're single, and have nothing but a one bedroom apartment and XBox to come home to, you're going to complain less about constant overtime and that pesky pager duty us systems guys deal with.
    • After being filtered through 2 line managers, and who-knows-how-many project managers, IT executive leadership just doesn't see the impact of less-experienced people working on projects. Messes are cleaned up at lower levels, usually by spending a buttload of money on consultants, and only show up at the senior level as "minor overages". Had the job been done right, the higher salary paid to more experienced people would far outweigh paying experts $xxx/hr to unravel some mess put together by someone who just learned Java.
    • Even worse, people at the C-level believe that all IT people are whiny nerds who can be pushed around with very little pushback. This leads to the belief that nothing they do will be questioned.

    I only see a couple solutions. A concerted effort could be made to make managerment aware of the actual cost of a project vs. the salary differential. I doubt that will work. You can also become one of those consultants, and get paid loads of money to clean up messes. However, that's not for everyone...it requires tons of hard work, business savvy and is not at all stable. Try raising a family with no health insurance and a non-guaranteed income stream, especially in a high-cost-of-living area.

    I admit that I'm pretty lucky. I've managed to land at companies that don't seem to mind paying a little extra for someone who really knows their stuff. The price of admission for jobs like that is the willingness to invest in yourself constantly. Taking classes or buying software/hardware/books for training, even on your own time, is the best way to keep current. That way, companies get the best of both worlds...someone who knows the latest tech, and knows enough not to implement something half-baked because they want their weekends free. :-) Unfortunately, that stereotype of the COBOL guy sitting in the corner has a little bit of truth to it, and it means we end up gettting painted with the same brush.

    One other choice would require a much different mindset than there is now...accept a lower salary and make up the difference by saving and investing carefully. I've been doing this anyway, because I know there will come a time where companies stop paying for IT talent and I'm going to be forced to take a huge paycut. Everyone I know, young or old, spends money like their income is never going to decrease. Live within your means so you can last through the bad times that are coming with the next wave of globalization.

    1. Re:I've experienced the following.... by Dragoness+Eclectic · · Score: 1

      Always live within your means and have some money set aside and/or invested, because shit happens. You may unexpectedly get laid off for a number of reasons, you be injured in an accident or contract cancer and be unable to work for a long time, a natural disaster may destroy your workplace, your workplace may mismanage itself into bankruptcy... There is no perfect job security.

      (It helps to be raised by parents who grew up poor, and taught you their paranoia about not going into debt and setting something aside for hard times. It really does.)

      --
      ---dragoness
  88. Re:It is age discrimination - Yes, It is by Doctor+Faustus · · Score: 1

    and are less likely to have the "encumbrace" of families to keep them from working OT
    I was 21 when my son was born (33 now). I've been wondering if, when I get to almost 40, I should be sure to casually mention in interviews that my only child is in college, just to head off the assumption that I have a school-age kid.

  89. Our narrative can't compete... by eagee · · Score: 1

    The value of experience is very hard to explain to a person whos choices are, "Do I please my investors and get a 7 million dollar bonus this year" or "Do I invest time and money in a team that can do this right the first time". For them, younger workers means more cogs (lines of code) off the assembly line, and those young engineers often don't have the experience to know any better. That's just how bean counters think.

    My advice, try to find work at a company that isn't run by an MBA (unless they were an engineer first).

  90. Completely true by GuerreroDelInterfaz · · Score: 2, Insightful

    I'm nearing 60 and have a vast experience programming all kinds of stuff, especially control systems, including satellite and other very critical ones, and the only reason I can keep programming is because I know obscure proprietary systems like AMX, Crestron, Alcorn McBride and so on. I often get offered system administration and similar jobs but programming in C, Java and so on never, ever. And it's not money as I'm ready to program for 1000 euros a month, even less than younger people.

    As someone else has already pointed out, the problem is top management that, at least here in Spain, are completely ignorant of technological issues and believe everything they see in crappy movies. They are not even capable of using Internet: they have a secretary to do this for them.

  91. Anonymous Coward by Anonymous Coward · · Score: 1, Insightful

    In my opinion, experience counts for more than anything else in software development. I am a 42 year old developer who has been programming profesionally since I was 18. I think it was at least 10 years before I would have called myself a true professional developer. Younger guys often have tremendous talent, but not the insight that the additional years add, not to mention the lessons learned. Almost all the newer platforms are simply iterations or maturations of existing development languages and platforms, having the experience lends itself to much quicker consumption of an environment and project.

  92. Non-technical hiring mgrs?! *That's* your problem by Anonymous Coward · · Score: 2, Insightful

    Look, anytime you have HR (or anyone non-technical) hiring programmers you're going to have trouble. A technical candidate's value can _only_ ever be accurately evaluated by a more-senior technical person. If you're hiring any other way you're just buying by the pound.

    Frankly, any organization that delegates its technical hires to HR is effectively saying "we don't need high-quality programmers." In that case, hiring young, cheap workers is probably the right move. I don't see the problem here.

  93. Poorly phrased summery. by psithurism · · Score: 3, Insightful

    While some people may assume that the recession has provided a handy cover for age discrimination, a closer look suggests that it's the nature of IT itself to push its elderly workers out... inexperienced or nontechnical hiring managers tend to look at resumes with an eye for youth, under the "more bang for the buck" theory. Cheaper young 'uns will work longer hours and produce more code.

    I think I just read the definition of age discrimination.

    A better way to summarize the article would have been: "While some people may assume that the recession has provided a handy cover for age discrimination, a closer look suggests that IT managers use age discrimination with no excuses from the recession.

  94. It's not age, it's experience by Kagato · · Score: 1

    The 30 years of COBOL, RPM, FORTAN, etc. with no other technologies says to me this is a one trick pony programmer. They did one thing, were likely okay at it, but the fact they never took an interest in new technologies is a huge red flag. I start to question how good they really were at programming in the first place if they didn't have any other interests. You can't just throw that guy like that into a new programming language, in particular if they don't have OO experience. A college hire is a clean slate and already has the basics of OO design patterns.

    I recently hired an older fellow for a new language job. He brought in sample apps he'd written on his own time, walked through a code review and was able to talk about core elements of many languages with authority. That guy is the exception and not the rule of old programmers.

    1. Re:It's not age, it's experience by Anonymous Coward · · Score: 0

      Did you mean RPG?

  95. My perspective: by sean.peters · · Score: 1

    Sort of related to the COBOL comments here... COBOL's now been replaced by other languages, which in turn are going to be replaced by other languages, etc. And there's the rub: it's a treadmill. For a few years I was doing Lotus Notes, web, and database development (cue the Lotus haters in 3... 2... 1... - I actually liked it). It was a fun job, but... trying to keep my skills up to date was a real drag. Notes itself evolved significantly over time, web development changed very significantly with the advent of stuff like various revisions of CSS, XML arrived on the scene, Javascript, LotusScript (the Lotus equivalent of VB), Java, various databases, LDAP... the more stuff I learned, the more I needed to learn. And oh, by the way, I needed to do this while I was working full time. That was fun for a while, but it eventually wore on me. I finally moved on to a new line of work for unrelated reasons, but I won't deny I was a little relieved that I could get off the new tech treadmill before I fell off it. I was not quite 40 when I bailed.

  96. Seems foolish by KingTank · · Score: 1

    When I was a PC technician in a corporate campus, it seemed obvious to me that the senior technicians could solve the most difficult problems tens or even thousands of times faster than the inexperienced ones. No matter how intelligent the inexperienced tech is, he's got to spend lots of time researching a fix, and maybe he doesn't even know where to begin looking. There's really no theoretical upper limit on how long a fix could take. Compare that to a guy who just knows the fixes from memory, or at least has some experience with similar problems to help his intuition. He could literally fix something in a few minutes that takes the inexperienced guy weeks to figure out. It drove me nuts that the senior techs were looked at as managerial assistants, when it was obvious that their most effective use was as a Q and A resource for the other technicians. Apply this concept to programming, where you're dealing with bugs, problems that the developer has essentially created himself, so they are ALL difficult problems, and experience becomes even more valuable. Not to mention the experienced developer's better ability to avoid creating bugs in the first place.

  97. Programming is grunt work by judolphin · · Score: 2

    I like coding well enough, but don't foresee myself still coding in 25 years. I think that's a pretty common feeling among young programmers.

    --
    The Institute of Incomplete Research has determined that 9 of out 10
    1. Re:Programming is grunt work by 21mhz · · Score: 1

      Then perhaps programming was not a good choice for you to begin with.
      For some of us, it's a passion for life.

      --
      My exception safety is -fno-exceptions.
  98. Turned 40 in 1998 .. still writing code by talexb · · Score: 1

    Well, of course, I do more than write Perl. Been doing that for over ten years.

    I also deal with web stuff, like explaining to a co-worker that it is actually possible to do an HTTP re-direction while including a cookie in the request.

    And I deal with the usual database CRUD code. I'm using DB2 now, before that I spent five years each on PostgreSQL and then MySQL.

    And I know enough about SysAdmin stuff to set up an NFS server and configure Apache.

    And before forex, I worked in finance, pharmacy management, robotics and data communications. And before Perl I wrote C and assembler for 15 years.

    I'm still *way* too fascinated in solving technical problems and writing great code to think about doing something else.

  99. "Googled" by Auletta by peter303 · · Score: 1

    Googles extraordinary set of benefits were designed to keep employees happily in their offices 24/7.

  100. Keep up with the iJoneses by Tablizer · · Score: 1

    I have a couple of friends in their 50's who joke about becoming obsolete. I associate this with actually getting tired of keeping up with an industry that reinvintents itself so often, and therefore, not keeping up.

    If I had to put a number on it, I'd say that about 70% of all software development change is merely just fads: change for the sake of change. Only 30% is actually improving the state of the art. If nothing changes, vendors don't make money on sales such that there is bias in the industry to hype new (different) stuff.

    It also creates a positive (reinforcing) feedback loop where developers feel they have to keep hopping onto the Next Best Thing in order to keep up with the iJoneses.

    One can indeed get tired of seeing the wheel reinvented 20 odd different ways and most of the operation/function/methods are re-combinations of old ideas in new syntactical packaging with slick new or weird names. Is "a.plus(b)" really better than "a + b"? Should we throw out everything from before just to get it? Should we do it just because everyone else is doing it?

    If the "new" ideas were scientifically tested to PROVE they are better, then one may feel better of about such changes. But such rarely happens. Some popular blog says "Slugs on Rails" is super neeto and makes you 10 jillion times more productive, and suddenly everyone and their dog is buying some a rushed-together copy of "Agile Nifty Slugs on Rails in 7 Minutes While Underwater" and crashy word-overlappy websites or software is released using it.

    Of course only the young guys want to fix such messes; they are the only ones duped into thinking it's God's Code because it uses Shiny New X. Us oldbies want so solve real problems, not invented problems.

    There's a reason new software keeps being written in COBOL: it will be around because it will be no more hated 20 years from now than it is today. The threat of obsolescence has already ran it's course and cashed in. (I'm not a COBOL programmer, by the way.) Maybe God really does speak Latin.

  101. Toronto report by The+Abused+Developer · · Score: 1

    This is the norm here; the typical requirement for a developer is to be as much as required horizontally skilled - this meaning even if you are hired as a j2ee developer you will have do to database programming normally you would expect to be done by a dba or etl guy, plus browser java script you would expect to be done by a browser guru. Also, you must expect everything to come onto your plate and you have to take it - can be even tasks you never dreamed you will have to do like windows drivers, linux api etc. - you must take it and shut up otherwise you go out. This is expected and of course, if you are not anymore a fresh one at the beginning of the career and you are already at the point where other commitments have their pressure on you - you are done. As experienced programmer your experience counts only in very vertical niches where there is no coverage or you have the connections to enter and not get smashed with assignments nobody ever mentioned you would have to expect for that position. I talked to friends in US and UK and it looks things are a little bit lighter there - of course, age is a discriminating factor, but an expected unlimited horizontal skills base required in the job chores is something they haven't encountered. The simple explanation is that, for the companies to achieve their maximized goals the single way they can do it is by abusing their developers - so, the current economical backslash is open season for them to introduce into their sweatshop lines only the slaves which can make it; exactly as on plantations or galley - you need only fully dependable, *enslavable* resources.

  102. Elder programmers can be good and productive. by RogerWilco · · Score: 1

    I work at an institute that basically had its major growth around 1970. The people then hired are now close to retirement age but a lot still work here. Still I'd say that some of my colleagues over 60 are among the most up-to-date and productive among our workforce (I'm 33).

    We have a nearly flat age distribution from about 25 to 65 in each cohort. My experience is that age is not a relevant factor in my institute and I think the IT industry, if the people involved are given the time to stay up-to-date in their field, and are willing to learn.

    I have a colleague of 66 years old who just spent the last weeks learning Python. When he started his programs would be sent to a computing center 150km away once a week. He has kept learning new things his entire career, and even after retirement age he's still employed with us for 2 days a week because he enjoys it and management values his skill and knowledge.

    I have a colleague of 55 who just wrote a mobile app for Layar. Another of 64 years old who writes some of the best Java I've seen. A third one has written the standard work on how to process radio-interferometer data. And I could give at least another dozen examples or people over 50 that are good, current and productive in their work.

    If I compare it to my first employer, where the oldest programmer was 45 and his knowledge made him a dinosaur, the difference is huge. And it's all about management giving the opportunity and hiring people willing to keep learning all their lives.

    And it's not because we're in a slow moving line of work. We're doing cutting edge science and research work building the largest telescope in the world, space satellite components, integrated circuit and low-noise amplifier design, TFlop digital signal processing. We are one of the fastest and largest computing centres in Europe (top500 supercomputers (#6 in 2005), petabyte storage, 200 GBit/s connections). And only with about 200 employees.

    But I'm diverging, basically what I want to say, is that unlike some back-breaking manual labour, people can be very productive in the IT industry until into retirement age, if you get the right kind of people and treat them correctly.

    --
    RogerWilco the Adventurous Janitor
  103. Can you spell by arnwald · · Score: 1

    SAP ?

    T.

    --
    My other sig is Funny.
  104. Programmers over 50 can be a liability by wienerschnizzel · · Score: 1

    People tend to cling to their old habits. In the world of programming it means clinging to outdated approaches to coding. Throughout my career I met a bunch of 45+ old programmers that were all hard-working professionals producing reliable and efficient applications (or components). Most of them, however, (80-90%) never adopted modern ways of software development (and are even proud of it). They do a lot of unnecessary low-level code (instead of ready-made libs and technologies) and essentially use procedural coding thinly coated by class definitions instead of a true OOP (object-oriented programming) approach.

    This approach generally works well for small projects, however the bigger the project is the more problems outdated coding creates. There are vast differences in the quality of programmers in the big projects and the more cryptic your code is (even though it's crystal clear from the 80's coding style view) the more problems it's going to generate.

    IMO the biggest advantage of OOP is that the structure of the code can (and should) mirror the structure of the problem it's trying to solve. In a good OOP design, even an inexperience programmer should be able to understand what the code is doing just by reading the names of the classes, their interfaces and the relations between them. A good 30-something yo developer usually does this kind of design. A 50 yo usually doesn't. In a project with 150 developers with the usual workforce fluctuation throughout the years where incremental versions are being released, the original code of old-style programmers (that may not be at the company anymore) can seriously affect development times and the overall quality of the system developed.

    Ironically, the other extreme with the same result is a 30 yo C++ guru who by overusing operator overloads, custom manipulators, templates and macros, essentially creates a new programming language making it impossible to decipher in the code of the main app.

  105. Thats exactly what Microsoft did wrong by AlgorithMan · · Score: 1

    nontechnical hiring managers tend to look at resumes with an eye for youth, under the "more bang for the buck" theory. Cheaper young 'uns will work longer hours and produce more code.

    I saw an interview once with an ex-MS employee who said that MS (at least back in the days) preferred to hire kids directly coming from school... you remember that myth of "whiz kids"? That's what they were looking for...

    Well I would have been considered a whiz kid and now that I finished my computer science major I can tell you: without a university degree in computer science - even as a whiz kid - you are a tinkerer and you know nothing about what you're doing.
    Today I am embarrassed by the source codes I wrote in school, that got me straight A's!

    I even may have produced more code - because back then I didn't know enough and hence didn't think enough about what I did and wasted hours of programming things, that could have been done with far less code... and better performance... and less memory consumption... and more reliability... and more portability...

    --
    The MAFIAA is a bunch of mindless jerks who will be the first up against the wall when the revolution comes
    1. Re:Thats exactly what Microsoft did wrong by butlerm · · Score: 1

      There are people who actually study computer science and engineering without a formal degree in the field, you know. People whose CS/CE knowledge runs circles around anyone just out of school, because they make their education in the field a work of a life time, not something to be dispensed with in a few years and then glossed over from time to time with a superficial knowledge of the latest genX language or API.

  106. No managerial shortsightedness... by psithurism · · Score: 1

    Is the younger generation of programmers really that arrogant to think that older programmers don't know and learn new languages and coding trends?

    Well as one ambassador for the younger generation of programmers I will say: no.

    It's the managers. They hire and layoff with age discrimination and a blind eye to cheating. Don't blame the guys who might get stuck with coworkers from these poor practices.

    Further it is hideously important to our survival as young programmers to stamp out age discrimination before we get hit with it.

    I would further add that the article clearly lays the blame on the ancient problem of poor metrics of coding productivity, which fail to show the problems of replacing expensive senior programmers over the pack of low paid entry level guys.

  107. Offshoring by b4dc0d3r · · Score: 1

    Engineering duties are being moved to the lowest cost area, with lead coding done on-shore. The design and architecture gets passed out, and code comes back. That's the new digital economy. If you're coding, you're either doing lone-wolf work and likely to encounter the words "knowledge transfer" soon, or you're doing prototype work for someone else to flesh out. Otherwise, you're nerf-herding and playing with Visio or UML while your job code still says "coder".

    If you're old, you're probably expensive, and the first one on the chopping block when the economy craps itself. Only safe if you've built a reputation, or can move into management, or to a team that has to have on-shore workers for contractual reasons. After that layoff binge, you're likely to get a pay cut as job codes get reorganized.

    Example: I'm one of few people left who understand how our entire client-delivery portal works end-to-end, and I'm not allowed to answer questions about it because I'm reorganized into my little cubbyhole. "Not allowed" meaning if I do help out my old contacts in order to deliver something to a client on time it's on my own time, and I have to get my deadlines first. I still owe some favors, so I do help sometimes. I digress.

    Posted from a Fortune 50 or less company, YMMV.

  108. Re:A question for all you experienced types out th by Jimmy+King · · Score: 1

    I'll third the Python vote. It's pretty cool, it takes less infrastructure and extra non-sense than C# or Java if you're looking to do web apps, etc.

    I also really like Perl and it's what I do as my full time job. It's mostly dying out though and I think many of the jobs that used to be Perl jobs are now (or soon will be) Python jobs. I know you said you're just looking at it from a hobby standpoint, but hey, why not have a hobby that could be useful to your career later on if you change your mind or your life takes an unexpected turn?

  109. pointy hair by Anonymous Coward · · Score: 0

    how do you still have hair sir ?

  110. Crapware by Anonymous Coward · · Score: 0

    This is one of the reasons for so much crappy software these days, good experienced programmers not working while new inexperienced programmers sometimes working for dirt in a third world country doing the bulk of the work, working long hours, much like what happened to tech support and all customer support in the U.S. People reading from scripts or stealing code who have no real clue how to do it.

  111. I walked away, and never regretted it by Anonymous Coward · · Score: 0

    I was a programmer throughout my 20s and early 30s, then switched careers about 8 years ago (I'm 43). I have never regretted the choice to change careers.

    Among other things:

    - I was tired of working extremely long hours while better-paid (and generally incompetent) managers went home at 5:00 p.m.

    - I was tired of being forced to stick to deadlines that were so unreasonably short that I could never debug, test, or document my work appropriately. It's hard to take pride in your work when you aren't allowed to do your best. I even had one boss who forbade me from documenting my code, believe it or not - he thought it was a waste of time.

    - I was tired of managers and salespeople making unrealistic promises at the last moment to customers, both internal and external, and then expecting me to work overnight or through the weekend to make it happen (with no additional compensation or perks, of course).

    - I was tired of never seeing my friends and family because I was working 80+ hour weeks.

    - I was tired of watching the good jobs get sent overseas to tech workers who often produced poor code.

    - I was tired of having to job hunt so often because companies were "downsizing," going bankrupt, or being sucked dry by CEOs with inappropriately enormous salaries, perks, bonuses, and golden parachutes.

    - I was tired of project managers (who had never written a line of code) assuming that programming was no different than sales work, leading them to insist on having 2 or 3 meetings a day.

    I make a little less now than I did as a programmer (though not much less), work a 40 hour week, have a life, and program on the side for fun. My technical skills opened up a lot of opportunities for me in my new profession, and I still get to keep my foot in the coding water. I'm happier, healthier, and far less stressed now, and I have a good amount of leisure time to pursue my own interests and projects.

  112. I think it has more to do with the us healthcare s by Joe+The+Dragon · · Score: 1

    I think it has more to do with the us health care system then other stuff as older people need more health care and they can just get people who are not as old how cost less and as plus they can also trick them in to working logner as alot of young people do not know about the labor laws.

  113. Re:Because we all get rich from stock options by 4 by Anonymous Coward · · Score: 0

    I was considered the "bitter old man" at the last company I worked for, before I decided to change careers. I was 34 or so at the time - most of my co-workers were in their young 20s. I had been in the industry for more than a decade at that point, and could see through the typical BS, including the "stock option" lure. I was considered "bitter" because I didn't buy into all the crap that the company owners fed us.

    Some of the kids who had been hired at the company a few years previously were paper millionnaires. The stock was obviously vastly overvalued, and I realized that the company was in financial trouble soon after I was hired. Nobody else seemed to be able to see that, though. I told a few of the kids that they should sell off at least SOME of their stock, so if things went south they wouldn't lose it all. They just laughed at me.

    After about a year, all the workers in all the offices (including part-time receptionists and such) got an email calling them in for an "all hands" teleconference at 7:00 a.m. the next morning. I packed up my desk that night, since it was obvious that they were going to declare bankruptcy and shut down. Frankly, I was surprised that they had lasted as long as they did. Again, nobody believed me.

    The next morning, of course, we were told by the CEO (who had a $25 million golden parachute) that the company was shutting down, and everyone was fired. He cried some alligator tears - he could cry on command, evidently, and always did it when he had to give out bad news (to prove that he was sensitive).

    There was a lot of weeping and moaning (literally) from everyone in the office except me. I asked the management about the severance package, signed the paperwork, and went to a movie. The poor bastards who were in charge of the severance packaged meetings that day got to spend the next 12 hours consoling freaked-out employees and explaining to the kids how COBRA worked.

    I never gave much credence to the "stock option" lure, at that company or any before it. If it isn't money in my hands, then it doesn't exist. Some of those kids could have walked away with a lot of money, if they had just listened to the voice of experience. Sadly, they walked away with nothing.

  114. Our Creativity? WTF? by elnyka · · Score: 1

    At least here in North America, our general aversion to unions is entirely rational. Unions here do not foster creativity - they foster group think. And management does the same, and uses their group think to destroy our creativity.

    Though it is true that some management (not all but some, a reality that does not fit well in slogans), do impair programming productivity, there is this fact: We don't get paid purely to be creative, but to use our creativity to solve problems in the most efficient way that can help our employer's bottom line.

    Management exists to provide the plumbing that we engineers need to do our job: manage billing, infrastructure, benefits, cash flow, repairs, to make sure the building you work on meets regulatory standards, to deduct your taxes, to provide strategic planning and to make sure there are earnings at each quarter because that's the only fucking way in which you not only get paid but also get a chance to get a damned raise.

    We, software engineers/computer scientists, exit to solve problems in ways that improve our employer's chance to improve their bottom line... cuz that's where the money come from for our chairs, our cubicles, the monitors and laptops and that interesting shit called electricity that runs your work computers, your networks, the A/C, the coffee machine and the vending machine from where we get our doritos, sodas or whatever shit we eat and drink when we bang at the keyboard solving problems and helping our employer's bottom line... cuz that's where the money come from for our chairs, our cubicles...

    You get the idea.

    If I wanted to be measured strictly on the basis of my creativity, I would not have opted and loved to be an engineer/scientist in the field, in the heat, getting paid to solve shit that changes due to dynamic external pressures.

    Instead, I would have chosen to be, I dunno, a dancer, a musician, or a painter and either paint the second coming of the Sistine Chapel or crap on a canvas and call it an exquisite sample of some avant-garde sounding artistic movement.

  115. Not true in my area by jonwil · · Score: 1

    Its almost impossible to find jobs around here where they dont want someone with 3-years commercial experience in

    1. Re:Not true in my area by The+Abused+Developer · · Score: 1

      Who the f*!% in their 40s - as programmers, don't have at least 3 years of experience in *something* ?! If you are in the 40s and you have less than this *3* in any of the skills you declare that means you did a career conversion at the wrongest moment in your life. Id someone advised you/career coached to do it because of the $cash and you bought it, then go and buy a Colt and ask the as*80le for your money back.

  116. Re:A question for all you experienced types out th by gringer · · Score: 1

    FWIW, HTML isn't a programming language, it's not a good idea to mention it as your only programming skill.

    --
    Ask me about repetitive DNA
  117. Its management Math by Tjp($)pjT · · Score: 3, Interesting

    I am somewhat older and charge an appropriate rate for experience. During this process of aging I have been told I am worth 2.5 times a less experienced programmer, but they can get the less experienced programmer for 1/2 my rate. Now do you really think I even want to work for that company when their management considers the younger programmer a better deal. DPHB at work ... (Dilbert( Pointed Hair Boss) reference.)

    Sadly the differential in requested rate in the down economy is less and they often still get junior contractors in and I get a shorted but much more lucrative contract to clean up the mess. Unfortunately if you just fix a bad design to work, then they're left with a bad design. And the DPHBs that cycle this way aren't interested in the real fix to the problem. So ... It makes for repeat business later... All ya can do is warn 'em.

    Big Tip: Take your girlfriend or wife or sheepishly wander in on your own and pick up some men's hair color or spring for the bucks to get a better job done at a salon. Then trim all but the most recent 5 to 10 years (depending on prestige clients) from the resume. Make sure all relevant experience is mentioned somewhere even if just a skills list. They can't actually ask you your age.

    Gramps can eat the polar bear, use the skin and bones to make a boat, and come back and kick yer butt.

    --
    - Tjp

    I am in wallow with my inner money grubbing capitalistic pig. ... Oink!

  118. Re:Young programmers ... I call foul by dcam · · Score: 1

    This is reality calling. UML is *not* a design tool, it is primarily a documentation tool. Very rough UML documents can be useful before coding, however if you are producing fully featured UML documents before writing a line of code you have a serious problem.

    --
    meh
  119. Re:Yes and No - Hell No! by elnyka · · Score: 2, Insightful

    "The fact that you have 30 years of COBOL experience doesn't help you if you don't learn new technologies." learning a new language is easy. Learning to program is hard. c, java, c#, php, perl, are all very much alike.

    Barring the curly braces and common control structures, no, they are not. Not even freaking close to be alike by any stretch of the imagination. C very much alike to Java, C#, PHP? Perl? I mean, C???? Of these bunch, only Java and C# are mildly similar, and only superficially.

    Once you know one learning the rest are easy.

    The problem with that thinking is that you only think about trivial code examples of any of those languages. When you start using them for non-trivial tasks, you find that there are obscure semantic idiosyncrasies that either make or break you. There are APIs, infrastructures, architectural considerations and limitations that are unique to each and which is the meat of the knowledge required to actually program non-trivial systems.

    This is not taking into account that in almost all non-trivial systems (specially in IT computing), you do not develop in one single language.

    I do agree that learning (minimal learning of) a new language is easy but learning to program is hard.

    I do not agree though, that the *rest* is easy. It is not. It takes months of immersion to get minimally proficient any each one of them.

    In your typical application program so much code is now offloaded to the libraries that once you leave school you are unlikly to have to write a HASH or a sort every again.

    Exactly the point. You still have to learn how to program by using those libraries. And you can't effectively know how to use them if you haven't burn the midnight oil in school doing many of those libraries from scratch. Because each of those libraries, each of those data structures and algorithms have pros and cons, run-time penalties and characteristics that you need to be aware of, and doing them from scratch is the only way to truly understand them.

    What experence teachs you is when you need to use a hash vs a btree.

    I don't know about you, but I learned that on my first 2000-level CS class in college, before even entering a 3000-level class devoted exclusively on data structures and algorithms.

    Work is not the place to learn the basics. Employers don't pay us to learn the basics while we program for them. Work is where you get your experience which should consist of team work, domain specific knowledge, working under prolonged schedules (as opposed to working on throw-away programs for every class assignment), working with source control on a true system, knowing how to go live with a product, etc, etc.

    Either you weren't paying attention in school, or your education was atrocious. Experience *is categorically NOT* the place where you learn how and when to use basic and fundamental 2000-3000 level data structures.

  120. Old Knowledge vs. New by ps_inkling · · Score: 1

    At least I'm not the only one watching these programs -- Holmes on Homes may be the one you are referencing.

    Ideally, an older contractor (or programmer) has to have a young mindset. Continuing to do what has worked in the past makes it harder for your work to interface with current methodologies. Writing database software using ODBC.DLL calls or not using Ditra under your new bathroom tile floors -- it means that your work will not mesh with current practices.

    I would expect a specialist in their field to remain mostly up-to-date on their knowledge, or let me know they specialize in a particular older technology. Or, one would hope, they can do both.

  121. Re:A question for all you experienced types out th by FlyingGuy · · Score: 1

    Download a copy of Turbo Pascal 3.x (you can download it from the Borland Museum) or get your hands on an old copy of Basic or BasicA.

    This will let you experiment with all the various control and looping structures. Programming at its most basic is about doing something with some data, adding two numbers together, storing some bit of information. Drawing pretty pictures on a screen while satisfying has very little to do with learning programming as a hobby or otherwise.

    Invest some time learning how a computer works and how the instruction you write affect what the machine does. That desktop machine you have is an insanely powerful bit of technology. Your basic Casio wrist watch has more raw computing power then the computers use to get the first man on the moon, just think of what you have on your desk compared to that.

    I recommend Pascal because it is a language that was designed primarily as a teaching tool and there are so very very many books out there that use it and I am not talking about the books you buy these days, eg: Teach yourself Java in a week I am talking about books that teach the fundamental constructs of programming.

    --
    Hey KID! Yeah you, get the fuck off my lawn!
  122. "logan's run"? by circletimessquare · · Score: 1

    i didn't know what that was, so i looked it up

    its apparently a novel from 1967, or a movie from 1976

    http://en.wikipedia.org/wiki/Logan's_Run

    http://en.wikipedia.org/wiki/Logan's_Run_(film)

    meaning, the story title itself is an age test

    having failed that test, i feel secure in my youngun status

    meanwhile, if you knew what "logan's run" was off the top of your head, join aarp and get on with it ;-P

    --
    intellectual property law is philosophically incoherent. it is your moral duty to ignore it or sabotage it
  123. Re:Young programmers ... I call foul by Anonymous Coward · · Score: 0

    I believe the misconception came about as a result of tools (maybe these still exist) intended to be used to create UML diagrams which were subsequently used to generate actual code (mostly scaffold code). I've never seen a successful project come out of that, but I'm sure it has happened somewhere.

    - T

  124. "IT workforce" != developers by markus+o'farkus · · Score: 1

    Good article, but it does one thing totally wrong in the title and throughout the article. Something thankfully the Slashdot title and blurb actually gets right. It's not a big deal, but I get tired of reading articles about "tech workers" and "IT workers" when they are about programmers. I sure a shit would love to know how this stuff applies to Admin, tech support, sales engineers, consultants, etc.

    Don't get me wrong it's a minor--and essentially off-topic--point, but the article is riddled with phrases that equate IT with software development. No offense to programmers, I love you guys too, but damn it's annoying.

  125. The Best Parodies by handy_vandal · · Score: 1

    The best parodies are always close to the truth -- the closer the better.

    --
    -kgj
  126. Re:Yes and No - Hell No! by smellotron · · Score: 1

    C very much alike to Java, C#, PHP? Perl? I mean, C???? Of these bunch, only Java and C# are mildly similar, and only superficially.

    Here's another one - both C++ and PHP support the RAII idiom, which is becoming increasingly rare as garbage-collection becomes more ubiquitous. Technically Python supports this as well (deterministic destruction), but it is discouraged.

    Unfortunately (fortunately?) PHP developers typically discover better languages before they discover the usefulness of RAII in their current language.

  127. Re:Kids Today.... eat shit and cry... by Anonymous Coward · · Score: 0

    What a bunch of yellow shitting, lame ass cry baby pussies. .

    I started out writing spacecraft command and control software for fuckin machines that did NOT even have hardware multiply and divide i9nstructions -NASA was too fuckin cheap ass to buy it!! Computer time was FOR 2 hours A DAY AT 2AM And I had to actually graduate from a university thar didn't let JUST any moron attend computer classes.

    On the other hand, we stayed up drinking and doing drugs, partied with the mission controllers and some of us lucky bastards got to bone the female MC's.... like Norma the hot ass married chick with big tits!

    But ya know what's the best part is

    after 35 yeas as a pencil neck software engineering geek I have never worked on day in "IT" job sucking some clerks dick like most of you poor pathetic schmucks..... HEH, HEH, LOL... ROFLMAO

    best regards,

    buck - an unemployable 57 yr old fart computer geek and perverted old fuck

  128. Well, that is the problem exactly. by Anonymous Coward · · Score: 0

    Companies don't understand that ability is not a game of collecting acronyms, and also that somebody that invented the wheel will recognize it again irrespective of the tools used to achieve the feat (I have seen so many people trying to write their own mail agent it is not even funny, old timers know how to use the installed resources, yunger programmers go all gun-ho trying to write everything from scratch, the old timer may not be able to write a line in .Net whatever, but would undesrstand the circumstances in which resources are being wasted).

    The guy with 30 years Cobol experience may not know Net, but may be more aware about the problems and tribulations of running software in my company (common guys, how long is the training to get the fundamentals of any language right?).

    After one yeasr has passed, most likely the old timer will have overcomed the technical deficiencies in regards to newer technologies, but his expertise would have been at the disposal of his employer from the start.

  129. Don't agree by Anonymous Coward · · Score: 0

    I really don't agree, from my experience in the companies I have worked at it is the younger programmers for the most part that are the better programmers, simply because they were trained with more modern technologies and skills. The number of programmers aged 35-40+ that I have encountered that don't even understand the concept of Objhect orientated coding is ridiculous, and this is one of the reasons that one of the places I work was still using legacy C based code rather than upgrading to more efficient and easier to manipulate OO code(not mentioning specifics but for what was being done OO would have been a lot better). The older developer(and the ones that are listened to by management more) did not understand the concept or the benefits and so was holding the business back drastically.

    1. Re: Don't agree by NickGnome · · Score: 1

      So, why weren't you sending your older programmers back to college, or to special intensive courses, to pick up those latest algorithms and programming languages and paradigms?

      It sounds an awful lot like a flimsy excuse, especially when we've been seeing that programmers over 35 who go back to college to pick up the latest buzz-words still aren't hired.

      To quote an issue of Norm Matloff's news-letter: "'Taking a course is just not going to work for a senior person, given his salary.', said Maryann Rousseau, an employment agent."
      And an article by Margie Wylie: "The industry [executives have] made it clear. [They are] not interested in re-training the current work-force, which is likely adequate for its needs. No, it wants fresh bodies, preferably young or beholden ones willing to accept entry-level wages for long hours and who are either burdened with few family obligations or willing to pass them over... for the most part, companies are unwilling to re-train experienced programmers to fill available slots..."
      And this from the Chicago Tribune: "'IOW', Training observes, 'only about 2 in 10 companies routinely put their money where their mouths are when it comes to retaining [allegedly] valued people.'"

  130. I was never that young. by Anonymous Coward · · Score: 0

    I left exactly at the time I was suppossed to leave from my first day at work.

    I just don't get why other people accept anything else as the norm.

  131. Re:Yes and No - Hell No! by elnyka · · Score: 1
    The thing with programmers is that they don't (should not) need to use a language with support for RAII to understand the concept of defensive resource management.

    A programmer who miss that in PHP would most likely miss that in C and also is likely to create leaks in garbage-collected languages.

    It is a matter of education (and to a point lack of foresight) more than anything else.

  132. sdasdadadsa by Anonymous Coward · · Score: 0
    1. blah
    2. blah
    1. blah
    2. blah
  133. Your stance is often determined by your age by Anonymous Coward · · Score: 0

    My guess is that for the most part people will side with their own age group, by rule of perspective.

    Obviously most people in their 40's (and 50's) will talk about the merits of experience. This is no different than your grandfather saying that "They don't make 'em like they used to" or "In my day ...". Sometimes they are right ... sometimes they are wrong. Sometimes an e-mail is better than a handshake. Often, the young programmer is not as naive as the older programmer would like to fantasize is the case.

    On the flip side, younger people are quick to discredit experience, and quick to assume that as a programmer gets older they somehow lose IQ. More often than not, skills will erode over time because a developer gets less time to hone his skill, because they spend more time managing, or in meetings, or dealing with integration/support/politics. They spend all of their working in the present language, with no time to learn the next language that kids in college are learning, and so forth.

    In an attempt to be objective, and going under the assumption that actual talent and IQ are somewhat age independent, I feel that the general breakdown is as follows:

    More experienced programmers and architects are probably well versed in office politics, commonly made technology mistakes, best language-independent practices and so forth. On the down side they are probably more reluctant to work crazy hours (family), less flexible when it comes to constant change, and often caught up in their old ways (especially if that way has been successful in the past). There are exceptions to the rules, of course, but for the most part the older programmers are heavy on experience, and weaker on the latest technologies. In some cases, the latest technologies are a jump the older programmer is unable to make. I have seen a lot of this with programmers who are scripters/COBOL/VB/SQL type people who are unable to grasp and leverage OOP concepts. Older programmers have often lost the will to care about doing something the best way possible, they just want to do it the way they know will work and not fight the man.

    Younger programmers are of course less experienced, but they tend to have more energy, are often more willing to go against the grain of what others will claim is "just the way it is" (which can be positive or negative), more willing to adapt or leverage newer technologies. The downside is that they have a lot of mistakes left to make in regards to office politics, best practices and lack familiarity with legacy technology. They often spend too much time worrying about the best technology to leverage, and not enough time about whether or not anyone cares or if in this particular case it matters.

    The reality is that just as with sports, a mixture of experienced veterans and energetic youngsters is often the best balance for productivity. The younger players can bring energy and new ideas to the table, while the experienced guys can bring wisdom and best practices to the table. Symbiotic.

  134. What? by Anonymous Coward · · Score: 0

    Where does this person work? Here, it's hard to find programmers who are UNDER 40.

  135. B-school bozos by NickGnome · · Score: 1

    In the USA of 250-175 years ago there was a good reason for the separation between enlisted people and officers. The officers recruited the enlisted people, supplied, armed, and trained them, built the ships, designed the flags. Becoming so much as a captain required a considerable investment, and bought you the power to designate your own trusted lieutenants/ assistants/ aides. OTOH, colonel was a political job, typically held by a county judge or justice of the peace -- positions that were generally held only by the at least moderately well to do because only they had personal resources to pour into building roads and mills and government buildings and fortifications.

    W. Edwards Deming pointed out the idiocy of designating as managers people who had no experience and knowledge of the nuts and bolts of productivity, no application area experience. Knowing the ways B-school bozos "think", this probably inspired them to do this even more than they had been.

  136. Productivity by NickGnome · · Score: 1

    "Any developer can tell you that not all C or PHP or Java programmers are created equal; some are vastly more productive or creative."

    There's been some research:
    "The best programmers are not marginally better than merely good ones. They are an order of magnitude better, measured by whatever standard: conceptual creativity, speed, ingenuity of design, or problem-solving ability." --- Randall E. Stross (quoted by Robert K. Weatherall "A Booming Market for New Graduates" _Engineers_ vol3 #2 1997 April pg 11; quoted in Richard Ellis & B. Lindsay Lowell 1999 January "Core Occupations of the US Information Technolgy Work-Force")

    "The computer field has [in the past] honored competence, content and creativity more than credentials." --- Clifford Adelman _Leading, Concurrent, or Lagging: The Knowledge Content of Computer Science in Higher Education and the Labor market_ 1997 pg 40 (quoted in Richard Ellis & B. Lindsay Lowell 1999 January "Core Occupations of the US Information Technolgy Work-Force")

    "One top-notch engineer is worth '300 times or more than the average', explains Alan Eustace, a Google vice president of engineering."

    "The best programmers on the team may be so much better than the rest that just a few of [them] can put out more than all the rest combined." --- Alistair Cockburn 2002 _Agile Software Development_ pg 61

    But, such researchers have noted, it's the few people who know 10 or more programming languages who outshine the rest. Another odd correlation with high productivity is having a background in music, not math or physics. Scientists who can do a little programming are usually terrible at it; their software is almost impossible to maintain. But then how many 20 year olds know a dozen programming languages? And how many of the silver-backs have learned several additional programming languages in the last decade?

  137. Re: What? You're not trying. by NickGnome · · Score: 1

    If you can't find more capable programmers of any age than you can shake a stick at, either you're not trying, or you're doing something else wrong. And, BTW, being a body shoppiner is doing something wrong.

  138. HR drones.... by Anonymous Coward · · Score: 0

    4675636b696e67206d6f726f6e7321

  139. Older developers also have 'salary' experience by blackfrancis75 · · Score: 1

    When considering this phenomena, I think it's important to observe the following;
    During the tech boom of 2000, and another mini-boom after that, developer's salaries went up substantially.
    'Older' developers who were employed during this period became accustomed to this salary level, and *in general* have wage expectations at this higher level.
    It's difficult for hiring guys to convince older developers to work at lower post-recession rates. It's easier to set the expectations of people new to the industry.

  140. The saddest part... by mforbes · · Score: 1

    ... is realizing that most people who aren't old enough to be affected by the "Logan's Run" effect probably had to Google to find out exactly what Logan's Run was!

    --

    Allegedly real newspaper headline from 1998:
    Man Struck by Lightning Faces Battery Charge

    1. Re:The saddest part... by /dev/trash · · Score: 1

      I know! I hate having to explain why Smoky and the Bandit III was terrible.

  141. Re:Young programmers ... I call foul by davide+marney · · Score: 1

    A simple system can be specified with "rough" UML models, that's true. That is precisely one of the design goals of the UML language, in fact, to be fast and efficient replacement for human language.

    However, an elaborate system needs much more elaborate specifications. It won't be enough to say, "I want a table with a couple of joins, here's a rough sketch", you will need to be much more explicit about fields, data types, keys, relations, triggers, and all the rest.

    It won't be enough to say, "This system will call that service, here's a rough sketch", you will need to be much more explicit about data contracts, protocols, end points, delegations, object mapping, and all the rest.

    UML is just as fast and efficient at capturing these kinds of details as it is at sketching out the big picture. However, many developers get stuck on the "rough sketch" level of UML, and never go beyond. They wind up sticking their specification details into some code editor, where no one else on the development team can see them except another developer.

    However, a detailed spec is just as valuable to a tester, business analyst, security analyst, and database engineer as it is to the developer.

    Share the wealth!

    --
    "We receive as friendly that which agrees with, we resist with dislike that which opposes us" - Faraday
  142. Re:Yes and Yo by jym_dyer · · Score: 1

    The issue is that new applicants coming out [of] school have more experience with .NET, Java and [the] key technologies that many industries are looking for today.

    =v= Not in my experience. Generally, coursework focuses on concepts and skills. Unless they've interned on a real project, students futzing with stuff like .NET rarely get beyond the tutorial level. If you're lucky, they might've taken a hobbyist's interest in it, which is a bit better.

    A common pitfall at this age is to misdirect youthful enthusiasm into the latest and greatest "key technology" (like, oh let's just say .NET for example), no matter how poorly-designed it is. When you're just starting out, figuring out kludgy workarounds seems like skill-acquisition, though really it's not. But you can stay up late and generally whip up something shiny to distract the PHBs, so you're rewarded for it. Which is why software quality continues to decline.

    Experienced programmers tire of that sort of thing, and the sooner the bettter.