Slashdot Mirror


Too Old To Code?

Weyoun writes: "Mercury News has an interesting article up about age discrimination in the Valley. As a 23-year old software engineer, I'm doing great right now, but I'm terrified about what will happen when I hit 40 or 50. Software is the only industry I know of where one's marketability is highest right after college and decreases geometrically thereafter. Any ideas for a second career?" Better yet, is this only in Silicon Valley? Only in the United States? Talk amongst yourselves.

41 of 432 comments (clear)

  1. obsolete by cowscows · · Score: 5

    At least you don't become obsolete as fast as the hardware you work on. Now that would be scary.

    --

    One time I threw a brick at a duck.

  2. wrong by TheGratefulNet · · Score: 4
    one's marketability is highest right after college and decreases geometrically thereafter.

    which planet are you living on?

    your experience is not at all common. you're worth more with more experience. right out of school, you have no experience, so obviously you're worth less.

    not sure where you're getting this info from..

    --

    --

    --
    "It is now safe to switch off your computer."
    1. Re:wrong by xenotrope · · Score: 4

      My God. Have you ever held a job?

      Companies love the kids. They're the best blend of brains and youthful stupidity, so you get geniuses who don't know any better when you pay them squat.

      A lot of smart people will be willing to take a job at lower-than-normal pay at a great company so they can put it on their resume. Who profits? The company gets great work for peanuts, the kid gets to add a killer job experience to his belt.

      You're worth more with experience. True. Meaning you cost more. A company won't pay one person $70,000 when they can get two for $30,000, experience be damned.

      I've found that if you want to maintain a good wage, you will have to leave the programming areas and move into management. You need to work your way up the food chain, gradually leaving behind technical work and replacing it with bureaucracy.

      Like Bill Gates. Yuck.



      ---

      --

      ---
      Remember when "Truth, Justice, & the American Way" wasn't contradictory?
    2. Re:wrong by Allnighterking · · Score: 3

      A-freaking-men. I've got 4 recent programing grads outside my office, all of them are just a drag on our resources. I've also got two experienced programers who are doing 90% of our companies "real" coding. (New company, one team) Out of these four I think I can salvage one. The other three are either too timid our two green to be worthwhile for another year or so. No it comes down to this, "never trust anyone over 30". We said it when we were in our 20's and it's coming round to bite us in the ass in our 40's. I really believe that the wild west days of the net are over. Soon profitability will out weigh neat new ideas. The value of knowledge will come to bear when this change occurs. The end result? Coders with experience will out do the ones without. Theory is great, in fact, mathmatical theory is the one thing that seems to seperate the men from the boys when it comes to coding. But theory has it's limits and that is all a good school teaches. Experience is something that only time can give any of us. The down side to age seems to be this god awful feeling that we know something. At this stage of the game I have to constantly remind myself that even though I am older and I have been at it longer, young pups can still come up with some of the neatest tricks on their own. Even when they do it takes someone who knows a little more to teach them when is a good time to do the trick and when isn't. The ideal situation is a strong mix of experience and enthusiasm. Like the young bull and the old bull. The young bull wants to run down the hill and get himself a cow. The old bull knows that if he walks down the hill he can get them all.

      --

      I'm sorry, I'm to tired to be witty at the moment so this message will have to do.

  3. One word answer: by Penrif · · Score: 4

    Teach.

  4. Enduring individuals... by khog · · Score: 3

    Sure, if you don't adapt you'll not do well. There are great people who've endured since the beginning. Wozniak (sp.) is old, for instance, but he's managing.

    Also note that old languages are still in use, too. (Just cause something's deprecated doesn't mean it's not used!) COBOL is still in use, probably APL, too.

    I think ageism is just as bad at the other end of the spectrum. I'm 15, and while I'm no Kung Foo master, I've been frequently doubted as per my coding ability. Just cause I lack experience doesn't mean I'm bad at coding. I was best in my class (a class I took at IU), but the social dynamic was often that of condescention. It's just as hard for us little guys, I'll have you know.


    Mike "e-mail me for more" Greenberg
    --
    http://www.yourmothernaked.com
  5. Not the only industry by Carrion · · Score: 4

    The porn industry shares the same feat, marketability decreasing with age.
    (Except for fetish - some people luv'em saggy.)

    Now where did i put those .jpgs...

  6. Mentorship by Sunir · · Score: 5
    I find it bizarre that we excise the people who know how to solve problems. We complain about buggy code, but we eliminate people who know the techniques to solving large problems.

    I feel computer programming is an apprenticeable skill. Indeed, it's similar to writing (as in English). It takes 20 years for a naturally gifted writer to reach the proficiency of a master, and only a handful of years for an apprenticed writer. We need something similar to a Master's of Fine Arts.

    Programming isn't just algorithms, it's mostly heuristics. They can't teach those heuristics in academia.

    As a young programmer, I know I've learnt more engineering skills by glomming myself onto master programmers than from textbooks that teach only theory. Indeed, I know that no amount of fancy diagrams will make a bad designer good; they may only make a good designer better.

    Sorry, I'm ranting. I just wish that finding suitable mentors was easier. If you want a silver bullet, that's it: Share information.

    1. Re:Mentorship by sigwinch · · Score: 4

      Hear hear! Engineering is much, much more than just writing code, analyzing circuits, specifying bolts, and similar details. There are things like

      • System architecture
      • Budgeting personnel and other resources
      • Making viable products (that people will actually buy)
      • Working with customers
      • Organizing documentation
      • Bringing multiple disciplines to bear on a problem

      These are the hard things, the things that kill schedules and budgets. And they take experience. That kid right out of college may be able to code the quicksort algorithm in 30 characters of Perl, but what if it isn't fast enough? Would they be able to rearchitect the system to use machine code? Would they even know that custom sorting hardware is possible? If they did, would they be able to rationally determine if it's workable?

      I'm a fairly young guy (25), but I really value my older colleagues. No matter what comes up, they've seen something like it before. Often, they're already analyzing different solutions while I'm still trying to wrap my brain around a problem.

      --

      --
      Kuro5hin.org: where the good times never end. ;-)

  7. Coding isn't everything (gasp!) by Anonymous Coward · · Score: 5
    If you plan to be coding when you're into your 40's, and also want to take 5weeks vacation and make $130k a year, you'll probably be disappointed. At that experience and that rate, you're more likely to be managing programmers. Which means less, if any, coding.

    I'm lucky. I'm 31, and essentially "chief programmer" where I'm at. Which means that, although I wrote much of the original code of the project, I haven't written any in months. But I do decide what code needs to get written (frinstance, what services need redesigning), who should write it (based on experience, etc..) and what priority the project should take. If I want to code, I can - although sometimes I have to make the case that it really is better for me to write something in a day than it is for one of the junior coders to write it in 2 weeks.

    Don't worry, it's not painful. Part of my job, based on my experience, is to know anything and everything I can about the field. Which means that I pretty much get to do whatever I want for a certain percentage of the time. I hack java, but I also contribute to an open source game, and I've recently started playing with PalmPilot coding. Do I hack 10 hours a day anymore? Nope. And honestly, I can't say I miss it that much.

  8. By the time you read this.... by Devzilla · · Score: 3

    By the time you read this YOU too will be out of date.

    Devilish

    --------Irc.destructor.net--------
    --------The Geek Network--------

    --
    Devilish

    www.sci-fact.com - From Fiction to fact -
    Your one stop science news and discusion site.
  9. Re:wrong .... still wrong by Mahy · · Score: 3
    Many companies don't need people with 10-20 years experience, and people with 10-20 years experience cost more. This is what my Dad discovered when his job was eliminated. It took him 4 years to find a job, because no one wanted to pay him even HALF his previous salary, and they all assumed that if they paid him less he would jump ship at the first opportunity.

    There is some kind of optimality going on here... a cost-benefit analysis which goes from very experienced and expensive to very green and cheap. Usually companies want someone in the middle.

  10. At least one counterexample. by Black+Parrot · · Score: 3

    I know a guy in his mid-50's who is/was pursuing a PhD in CS right up until a year or so ago, when a company essentially recruited him out of the program. He is supposedly working on his dissertation while holding down the job, but it looks like they have put him on hours and pay that make it hard for him to stay interested in his dissertation.

    This may merely reflect what others are saying, namely that it is the currency of your skills rather than your uptime that matters. If that is the case, an obvious strategy would be to work for top dollar as long as you can compete with the young'uns, go back to school for a couple of years, repeat until dead.

    --

    --
    Sheesh, evil *and* a jerk. -- Jade
  11. Obselence -- Something to fear? by Zoid · · Score: 5

    This is something I've started worry about myself lately. I'm 30 now and wondering if I can keep up. One of the major reasons I left my job at id Software was to find new challenges and learn more.

    I've been programming in C for like fourteen years now and it seems C is starting to phase out. C++ and other languages are starting to become more widely used and I was starting to fear that if I didn't learn C++ quickly, I'd get phased out.

    The other problem I have is that from over a decade of work in C, it's taken me a period of adjustment to switch to a different methodology such as C++. Sure I understand the semantic differences in changes from procedural to an object based design, but I felt lost for the first while in applying those theories to real code.

    I've found that in order to stay competitive, one must never stop learning. That may even include changing jobs in order to successfully find the training you are seeking.

    Due to how fast technology changes, I think it will be rare for a person to stay at the same job for more than a few years in the computer field. You just usually can't get enough variation in the job to get all the training and skills you need to keep advancing your knowledge and your career. If someone does find a job that does provide this, they are pretty lucky.

    --
    /// Zoid.
  12. Is that really the problem? by PhiRatE · · Score: 3

    Personally I think there are two particular issues here:

    1. Its hard to stay current, young people start off with a different viewpoint that often helps them, whereas older programmers have to constantly relearn, some people can do it, some people can't be bothered. Take the whole swing of Visual* stuff at the moment, definitely not my scene, the concept of designing a piece of software like that makes me cringe, but a lot of people are doing good stuff with it, if thats the way the future goes, I might end up obsolete out of pure stubborness.

    2. Its damn hard work sometimes, long hours coding, hard debugging, caffine and coke and pizza diet, maybe I'll be sick of that stuff by the time I reach 40-50. Maybe I'll start writing books like a lot of other older programmers have, beats all-night slugfests with gdb.

    but I have one consolation, one little guarrantee, if I still wanna be in the game when I'm that old, in about 2038 all the unix boxes are gonna need recoding to solve time(); issues, ressurgence in C system programmers? I think so :)

    --
    You can't win a fight.
  13. It's not the knowledge, it's the hours ... by The+Code+Hog · · Score: 5

    Lot's o' good comments so far, but the main thing I see is that when I was 20ish, working 80 hours a week was 'cool'. Now that I am thirty-ish, I still do it, but only because I work for a company I have an equity stake in ... and every day, I think about how *nice* a 40-hour a week job would be.

    I can easily see that when I am 40, I'll tell some manager to shove it if he thinks he is getting more than 40 hours out of me.

    That's what I see the carreer threat as. Companies will be more willing to pay for some young guy to work gonzo hours and have no life than for a seasoned vet who will screw up the schedule by "only" working 40-45 hours a week ... because the gonzo coders are better at saving really badly managed projects.

    Look at the gaming industry; exclusively young gonzo types working for companies without strong management skills. They work in an industry where nearly every project involves lots of research, and research doesn't manage well.

    --
    -- "Vote Democrat. Because the current crop of conservatives are just bugnut crazy."
    1. Re:It's not the knowledge, it's the hours ... by aggressivepedestrian · · Score: 4

      You seem to be implying that because young guys are willing (and able) to work 80-hour weeks, they are better at saving really badly managed projects than old farts like me (36 years old) who tend to work mostly 40-hour weeks. In point of fact, it was probably those youngsters working 80-hour weeks that got the project in trouble in the first place. It takes them 80 hours to do what I do in 20. And then it's crappy code that probably will take me 80 hours to untangle when I have to make a change.

    2. Re:It's not the knowledge, it's the hours ... by DevTopics · · Score: 5
      I wish more people would read Tom deMarcos books.

      There ARE a few studies out there that show clearly: you CAN'T work efficiently more than 8 hours a day.

      I know it from experience (and I've been working for 20 years in this business - makes me feel like a kind of dino). One year long I attached a timestamp to program lines I wrote or changed. The result:

      The most stupid bugs and the worst design decisions I made at the late hours. Sometimes, I introduced a bug after over-working 3 hours that took me three days to find and fix. Now that's a lot of time to waste!

      If you look at the case studies, this is not only me. The productivity of a programmer does not increase after working more than 8 hours. The productivity will stagnate until ten or eleven hours are reached and will then start to decrease.

      But oh, its so cool to work more. Pity that this does not show up in the results.

      The reason for overworking is simple: if you don't finish at that impossible deadline, you can always say: "Look, its not my fault, I've worked hard". Maby you've worked hard, but you haven't worked smart. Maybe you should start to learn that programming is about working smart, not hard.

      --
      You found a sword: +4 damage, +5 moderator points
    3. Re:It's not the knowledge, it's the hours ... by BigTom · · Score: 3

      All true except for one thing.

      Long hours won't save the project. Almost all deathmarch projects fail, mostly they never ship at all, the rest mostly crash and burn on the first maintenance release.

      PHBs recruit youngsters because they are cheap, and don't understand how badly they are being abused. Its all driven by fear, the PHBs don't know what to do and are afraid of failure so they employ the only 'management' technique they understand - 'Work Harder!' (but they cannot measure that very easily so they translate it to 'work longer!').

      Its the only technique they know because thats how they were managedd when they were young buck programmers. Then they got older and moved up into management.

      Hiring young, inexperienced developers into roles requiring experience turns your development effort into a lottery. You may strike lucky and get one of the few guys who 'get it' straight off (I'm sure all slashdot readers fall into this category ;-) but how often?

      Rgds.

      Tom

  14. It's very mixed in my experience (Boston area) by ajs · · Score: 4

    I'm 30, so I've not hit such problems yet, but I can see it coming. The problem (at least in the companies that I've worked for) is not one of age discrimination, but a strange combination of the pace of technology and a sort of peter-principle-corollary.

    First, there's the fact that the technology is changing so fast that the mature attitude that helps in most industries is a killer here. For example, if I look at new things like Zope, PHP, mod_perl, XML and other Web technologies and say, "I have real work to do," then next thing I know I'll be obsolete. One (or more) of those will certainly become critical to my job within the next few years. I actually have to take time out of my career to go learn about them premtively.

    As for the Peter Principle, there's several odd pulls on one's career. I'm being slowly herded toward management. I could continue to do what I do best, but there's just not as much of a career path in wrangling ugly networks as there is in managing the people who do. So, as I move into a role that's not my primary skillset, I have to work twice as hard to be successful, and that means that all that time I used to spend reading RFCS is gone. I'm not contributing to USENET. I rarely check /. As one friend of mine once said (of getting a social life), "my .emacs has gone to shit."

    So, given all of that, what happens when I'm 40. It'll be twice as bad then, and I won't be able to fall back on what I learned when I was 25 anymore.... 50 is just downright scary.

    In the end, the only real path for me is to get involved in starting a company. Sometime in the next 5-10 years, I'll find a good CEO and a few other technical folks who are hungry for the same sorts of things I am, and we'll set about creating the kind of company where we can happily work for the rest of our careers, shaping our own futures.

    Until then, I'll keep sweating.

    I must say, though, that in terms of outright age discrimination this is probably one of the best industries. If you can demonstrate competence with the technology that we need, we'll take you. If you can also demonstrate applicable experience over the course of decades, we're going to lock you to the chair until we can get the offer letter drafted.

  15. Mainframe v. Micro mentality. by www.sorehands.com · · Score: 3
    Part of this comes from the Micro v. Mainframe mentality. I have run into many people thinking that mainframes are very different from micros.

    Most of the same principals apply. With micros, people just are sloppier. But they should follow many of the same practices.

    Even with this programming shortage, employers discriminate against older people. Or they demand exact skills, but then they ask for increases in the H1B visa limit.

    Some information on it is at the Programmer's Guild.

    Petition to Abolish the H1B.

  16. This is what you are worried about? by Glowing+Fish · · Score: 4
    As a 23-year old software engineer, I'm doing great right now, but I'm terrified about what will happen when I hit 40 or 50.

    Frankly, as a 21 year old with no current job prospects, what worries me the most is that by the time I am 40 or 50, I will have been relegated to the status of "useless" by some faceless government agency, and that my body will be thrown into a vat where it will dissolve, leaving only my internal organs to be snapped up by some illuminatus.

    Don't worry about the future since you have no control over it.

    --
    Hopefully I didn't put any [] around my words.
  17. Re:It's not too OLD to code, but rather too YOUNG. by Nrrd^2 · · Score: 3

    Well, that and your lack of a "collage" (sic) or university degree indicates that you might not have the patience to stick to a job pounding code for four years. That's a red flag my own company tends to look for.

    Don't underestimate the experience you can get from school projects, or the value of a degree. If you believe you're "highly qualified" while at 18 and never having held down a full-time job, you might be in for some nasty surprises on your first real project.

  18. Re:Yeah, I worry about this a lot... by lamz · · Score: 4

    You can stop worrying. You won't have any problems finding a job once you graduate.

    After my first degree, I had a bunch of crappy jobs, then wound up working as a trainer for a Macintosh-only software company. After four years, I quit and went back to school to get a second degree, this time in Computer Science. I'm 29 now, I just graduated, and have had no problem getting interviews and lots of interest in my resume.

    I just had a great interview today where they were impressed by my breadth of experience. Even though I don't know any given technology inside out, I have been a technical writer, radio DJ, music reviewer, etc. What's that got to do with computing?

    When people are looking to hire computer programmers, no one is interested how l33t you are. It is more important that you're NOT an asshole, since you are going to be in very close contact with those people, 40-50 hours a week. I know, because in some of my past jobs I have had to interview people, and this is the primary thought in your mind when talking to applicants: "Is this person going to be easy/fun to get along with, or am I going to want to kill them?"

    Mike van Lammeren

    --

    Mike van Lammeren
    It will challenge your head, your brain, and your mind.

  19. 44 & still programming ... by cyberchucktx · · Score: 4
    I guess I'm the *professed* oldest member of this discussion so far: I'm 44.

    I have been offered 6 figures recently for my > 20 years of experience, so saying that you can't get great bux > 30 years old isn't true in my case (one exception means it "isn't *always* so").

    I atttribute my coding longevity to two things:

    • Insatiable curiosity, which keeps me learning new languages & technologies;
    • Truly *listening* to people of *all* ages and learning whatever/whenever I can.
    I'm a part-time college prof, and I am a complete believer that the best teachers/professors are those who can learn from their students. I can't count the number of times I've heard or seen some cool new technology (recent example : Python) from a student who's "really into it". I've had some wonderful hack sessions with this student as well as others I've met through her.

    On the other end of the spectrum (agewise), some of the best techniques I ever learned came from a mainframe (IBM) systems programmer who was in his 50s at the time I learned from him.

    I'm not trying to brag overmuch here .. just want to pass on some hope to those who think > 30 is the kiss of death both financially and technically : it ain't necessarily so *if* you can maintain your enthusiasm & curiousity.

    I'll only stop coding when I want to stop coding; I won't use age as an excuse for stopping.

  20. Prodigies in math, music -- programming? by sumana · · Score: 3

    I remember reading once that "experts" (that nebulous phrase) only allow for the existence of prodigies in two fields: music and math. That is, young people (espec. children) can only be as good as adults in those two fields. Perhaps we should add programming to that list. Of course, that depends on how much you think programming is independent of other skills that we can only learn through growth and time and maturity.

    --
    Ceterum censeo Microsoftam esse delendam.
  21. Reality Check - You're Not As Good As You Think by Agrippa · · Score: 3

    Sorry to say this, but in reality probably aren't as good at programming as you think you are. I took high school programming and I thought I was pretty badass, I could out-code nearly everyone. Then I went to college and found out I had a lot to learn about coding. I also had 3 programming jobs in college; each time I went into a job I thought I was badass and ended up seeing just how far I had to go. When I dropped out of college to work for a local startup, again I thought I was pretty badass. Well guess what, history repeated itself and I have been learning at a breakneck speed. I'm having a great time learning from guys who have been coding for 20, 30 years. I was never a "bad" coder, I just wasn't as good as I thought I was. Unless you're another John Carmack I think you'll learn you aren't as badass as you think you are, either. However, surround yourself with people better than you and you eventually will become great.
    .agrippa.

  22. Re:It depends on the position. by DuctTape · · Score: 4
    Confession: I'm in my mid-40s and just started in a startup company. I work 60+ hours each week, and this will go on until about 3Q.

    Like the guy said, it really depends upon what position you're going for. Even more, it really depends upon what position the employer really, really wants to fill. And they're sometimes not the same, and you'll never know the difference until after the interview.

    I interviewed at a company where they said that they wanted Java developers. In reality, they wanted Java hackers that could, pardon the cliche, hit the ground running without touching a book. A couple of the questions included:
    - What compiler error messages will this Java code generate?
    - What was deprecated in 1.2?
    - What container class will solve this general problem? (their preferred answer was: "it depends")

    Another question from another company: would I be able to tell what code is yours without seeing a name? The correct answer: there is no correct answer -- you lose either way. If you say you're a conscientious coder who comments your code and/or makes it self-commenting, you gold-plate. If you say you would adhere to their coding standard, you show no initiative.

    Nowhere in either interview did they ask me to talk about model-view-controller, when to use adaptors, O-O concepts & design, software engineering, or database normalization.

    But I guess the nice thing about such interviews is that they tell you what the shop values most: in this last case, quick hack-and-slash coding that you can go back and clean up in a later release (uh-huh).

    Another thing to watch out for: I've gotten into the habit of putting my most oft-used routines and code snippets in files I drag with me wherever I go. Unfortunately, I tend not to remember the details of what's in those files, and the contents invariably turn into interview questions. E.g., "What is on the first line of a XML file?" Hell if I know what exactly it is... I just copy and paste it, or use it in a skeleton file. So before you go into an interview, bone up on your bag of tricks.

    Another little tidbit for the geriatrics (27+ years-old): if you want to be a developer, do not under any circumstances take a project management position. Or at least if you do, do not put it on your resume when you want to go back to development. I have spent so many interviews trying to convince a prospective employer that I really didn't want to be a manager, and a couple of them rejected me with the reasoning that it sounded like I really wanted a management position. If you have to, tell them you tried selling used cars or that you joined a cult. Just don't let them know you did project management.

    I've come to realize that no matter how good you are, you're never going to really know what a prospective employer is looking for until you hear back from them after the interview. And us oldsters have a few things going against us:
    - perceived higher medical costs and sick days off
    - higher salary requirements due to experience that an employer doesn't think they need
    - time wanted to spend with family

    Bottom line: would I have gone into software if I knew what I know now? Considering the late nights, missed vacations, prima donna MBA grads, prima donna MIT grads, bonehead managers, bonehead customers, bonehead requirements, bonehead office managers, bonehead sysadmins....

    Probably not. But it's hard to pass up the six-figure income and stock options. Party on, Wayne.

    DT

    --
    Is this thing on? Hello?
  23. The gold rush and its discontents by sumana · · Score: 3
    The Gold Rush of the last century -- er, the nineteenth century -- had prostitution and almost-slavery of Chinese workers and horrible environmental abuse and farmers getting dispossessed and other bad things.

    Let's see what social problems we have found in the New Gold Rush:

    Domestic violence (as per article in SF Weekly) among immigrants, hard to stop because a woman's right to stay in the US often depends on staying married to a man who works in the US

    Age discrimination, which happens -- the anecdotes form a pattern, even if it's hard to study statistically (for the reasons stated in the Merc article). Employers are looking for just-out-of-college youngsters who will work hard and long hours for less pay, cheap perks, and a social atmosphere. They don't want to pay older people more for fewer hours; they foolishly look for specific skills instead of aptitudes (the "required: fifteen years of Linux experience" joke). They're also hungry for more cheap H-1B workers (see previous /. discussions).

    Environmental disaster from chip making (see previous /. discussion), plastic wrap using, the paving over of viable farmland, the foreseeable mess that is/will be Silicon Valley urban patterns, etc.

    It really is a new gold rush, a hundred and fifty years later. Yes, it has changed the world. Yes, it will have lasting effects, good, and bad. Yes, when people are chasing after money, the unsavory parts of human nature come out in full force. Lee Iacocca said in _Talking_Straight_ (the sequel to his autobiography) that his parents told him not to go to casinos; all that loose cash lying around attracted the worst kinds of characters. He compared Wall Street in the 1980s to such a casino; one could easily move the analogy to Silicon Valley in the 1990s and, if we don't change (due to external or internal forces), the Naughties.

    --
    Ceterum censeo Microsoftam esse delendam.
  24. This leads to a much larger problem by drix · · Score: 4

    When twenty year olds put in 60 hour weeks stressing to meet that deadline - that's nothing new. I'm sure plenty of people here have done it. But when was the last time you heard of a fifty-year-old doing the same thing? The reason that these "elders" have trouble getting work is that they tend to have a life outside of it. Kids, wives, golf, whatever. I, for one, think this a good thing.

    But I have to say, many geeks would disagree with me. I'm not passing judgement on anyone who does, but the young people who empathize with victims of this problem are the ones that create it. Everytime you pull all-nighters, work weekends, go on coding marathons, you're sending a message to the company that they can get way, way more work out of a twentysomething at a way, way cheaper price (you haven't had 20 years of raises jacking up your pay). This isn't anyone's fault, but I think it's a big part of the problem. Any PHB would take a hypermotivated employee willing to work for pizza and stock options over a more staid, money-in-the-bank guy with kids to put thru college and financial obligations. Pizza and stock are a lot cheaper than cash and full bennies. That's just simple economics.

    --

    --

    I think there is a world market for maybe five personal web logs.
  25. GoingWare's Policy on Recruiters by goingware · · Score: 3
    Well then I think you would enjoy reading GoingWare's Important note for Recruiters and Agencies, in which I tell them all to get lost - and why.

    I give a link to my original policy on recruiters and agencies in which I say that I will work with them under strict conditions - conditions that they would almost never meet, yet I held out the policy to be fair.

    But because of the general ignorance and downright rudeness of headhunters and recruiters, I felt it was time to take a stand and not just stop working with them, but be public about it and encourage others to stop working with them also.

    Sometime soon I will write a page for employers about why they shouldn't work with recruiters either and what they can do instead.

    Right now though I have a helpful page entitled Market Yourself - Tips for High Tech Consultants which explains in detail how I find good clients without the use of agencies or recruiters, and how you can too. It also goes into further details of the problems of working with recruiters and why I think they're an all around bad idea.

    And if you're a recruiter reading this, be sure to read the Word I Live By.

    Mike

    Tilting at Windmills for a Better Tomorrow
    --
    -- Could you use my software consulting serv
  26. On programming by Animats · · Score: 5
    I'm still programming at 51, more because I want to than because I have to. I've been a manager, I've cashed out of a startup, but I like programming.

    Frustrations of an old programmer:

    • Seeing the same dumb mistakes being made over and over, especially when you've seen it done right. (Examples? UNIX signals and IPC. C/C++ declaration syntax. Attempting to bolt lambda expressions onto C++ via templates. Direct-X. Buffer overflows.)
    • The rise of ritual-taboo programming, or "don't worry about how it works, just follow the example." This is a reaction to having to use APIs that aren't solid; i.e. not all the things that are meaningful to do with the API actually work, so you have to stay within some ill-defined safe subset. Lately, this has reached the point that some programming books contain only examples; there's no rigorous description of what the API calls are supposed to do.
    • Putting up with crashes. Computers shouldn't crash, ever. CPU reliability is quite good, ECC memory works great, disks have multi-million hour MTBFs, and UPSs are cheap. But OS reliability sucks. There's too much stuff in all the major OS kernels. It doesn't have to be that way. Check out QNX. (Incidentally, did anybody ever get their free QNX CD-ROM? I'm still waiting.) It's that way for Microsoft because they use it as a business strategy, but the UNIX/Linux crowd doesn't have that constraint.
    • Unreliable programing languages. All the current fast languages suck from a safety standpoint, and all the rigorous ones (the Pascal/Modula/Ada/Eiffel/Sather family) are essentially dead. Java's not bad from a safety standpoint, but despite all the claims of the Java enthusiasts, it's just too slow. What I mean by safety is that an error in section A of a program should not be able to mess up totally unrelated section B. In safe languages, most bugs are local and have well-defined effects. With unsafe languages, you get unexplained Blue Screens of Death.
      Many programmers hate the more rigorous languages, because it's harder to get a program to compile the first time. Wrong answer, people. Catching errors at compile time is far cheaper than catching them later. What you want is for the program to run correctly the first time it compiles. I write mostly in C++, but I miss Modula II/III.
    • Miserable security I used to develop secure operating systems for DoD. I'd expected that, over time, commercial systems would get more secure. Instead, they've become insecure to the point of it being ludicrous. The typical corporate environment now consists of farms of desktop machines with essentially no security, interconnected over a LAN with no security, isolated from the outside world by a firewall with just enough security to stop the dumber script kiddies.

    Despite this, it's a great time to be a programmer.

  27. More thoughts on population dynamics: prediction. by Kaz+Kylheku · · Score: 3

    I think that the trend we are going to see is that boom of young programmers from the past decade is going to continue to work until they are in wheelchairs. Their longevity is going to make it harder for large, inexperienced saplings to get into the industry, unless the industry contiues to grow wildly to accomodate the new blood.
    I predict that as the growth tapers off, there won't be as many opportunities for new programmers. Programming will once again be the profession of bearded old farts. ;)

    In other words, in the computing industry, there will be a repeat of what has been recently happening in other industries. The ``internet boomers'' will be prosperous, and have stupid ``Generation-Z'' kids who can't get the good jobs that their parents have.

    What do you think?

  28. Play to the stereotypes... by w3woody · · Score: 5

    One bizarre thing I've run into as a 34 year old consultant who is starting to run into this very sort of 'ageism' is that if I cowtow to the stereotypes that most young folks in their early 20's expect from a guru, I'm more likely to be accepted than if I simply walk in and act myself.

    What I mean by this is that if I walk into the office with all the latest gadgets hanging from my belt, hair up in a ponytail, and invite the young 'whippersnappers' over to my house or show off a two-seater sports car, they are more likely to say "wow, he must be a really frood programmer" than they are to say "obsolete fossil."

    I've tried both: leave the Handspring Visor and the web-enabled cell phone and iBook running PowerPC Linux at home, and I don't have a shit chance in hell of landing a contract. Walk in with all these gadgets, and I'm worshipped as a guru and a as a programming God.

    It's a damned good thing I know how to code, otherwise, it'd be very easy to snow the 20-something managers.

    My advise is to keep up with the latest gadgets and be willing to show them off at parties^H^H^H^H^H^H meetings--it makes you seem like a hip older guru than some over the hill lamer.

    It's stupid, but it works.

  29. Biz as Usual in California by Mignon · · Score: 3
    Patients at Advanced Aesthetic Dermatology in Campbell who want wrinkles and other signs of aging removed frequently list staying competitive in the workplace among their reasons for wanting to look younger, said physician's assistant Liz Papp.

    ``As a society I think that we do subconsciously prejudge people if they have wrinkles,'' Papp said.

    Before I read the article, I wondered how much of this was a Vally-specific problem. After seeing the bit I quoted above, it makes me think that the values of Southern California (LA/Hollywood's obsession with image) have migrated North.

    I live and work (program) in New York City, and I haven't seen any evidence of age discrimination in the industry. Then again, I'm 32; check back with me in 8 years.

  30. Unlearning is ESPECIALLY necessary for new grads by Ungrounded+Lightning · · Score: 3

    When new people come out of college they are fresh and full of energy. They may have to learn skills, but that is easier then UN-learning bad habits.

    The problem is that schools teach bad habits, too.

    A few years ago Minsky divided Computer Science education into three periods of about 10 years each:

    First period: The schools had no clue what to teach. So they taught the students how to re-invent everything that had just been invented. (For instance: Every grad was expected to be able to write his own compiler.) There was an excessive focus on mathematical skills (at least partly to simplify rationing of the limited number of enrollment slots, due to the limited availability of computer time).

    Result: A 4-year degree was actually a handicap - because it took longer to convince the newgrad than a non-grad that there was something else he needed to know to be productive.

    Period 2: The schools got their curricula organized and produced people with useful skills.

    Result: A 4-year degree was more useful than not. But work experience - about two years of it - was still necessary before a grad became really productive, and getting that "break-in" job was sometimes difficult. (You also needed a contiguous two-year stint to prove you would stick around until a project was done before you could start job-hopping.)

    Period 3: The schools got too heavily into formalisms - to the point of religion.

    Result: Again students needed to be cracked loose from a mold before they could start learning what they really needed, and a 4-year degree became a liability.

    Particular problems are graduates of Ivy League and other big-name schools (at all degree levels) and PhDs (from all schools). One thing Ivy Leaguers learn is conversational gambits that let them shut down those who disagree with them and/or later appropriate credit for their ideas. Grads from big-name schools often think that if it wasn't taught in their classes it isn't importand. PhDs sometimes suffer from that as well, and also are heavily invested in being right whenever they open their mouths.

    To program or design effectively you have to accept being wrong occasionally, recognizing it early and backing out quickly before too much effort is wasted. You have to learn not to back out too often. You have to learn that an adequate but standardized and well-documented design and/or style is more effective than burning cycles hunting for the "best" design/style. You have to learn to work in a team - letting others be expert, too. You have to learn that knowledge is teritorial, not hierarchical - often the person with the right answer is not the person with the highest certification. And you have to learn to learn - that you come to any job with only SOME of the knowlege needed to perform it, and you must know how to pick up the rest as you go.

    But by period 3 a new generation of management was loose upon the world. And many companies would only hire people with the degrees - and sometimes only degrees from certain colleges. So the degrees became necessary for entry at many places, regardless of their actual lack of predictive ability Re job performance.

    Also, a slew of management fads came in by that time: They each have their own buzzwords, but this is what they amount to: Age discrimination (new grad to late 40s). Sex discrimination. Race discrimination (for US upper-to-middle class Anglos, East Indians, Orientals). Handicap discrimination.

    And a convenient myth was created: That there was a "talent shortage" in the US. So lower-paid immigrants could be hired to replace higher-paid US workers.

    Of course this is gross mismanagement. And it hurts the companies that let their administrators it - by limiting their potential recruit pool and leading them to pay a premium for non-job related employee "features" while ignoring the actual work-related skill set. They get away with it because the added value of HiTek is so great that mismanagement can piss away an INCREDIBLE amount of resources and still keep the company in the black - for a while.

    But the myths work to the advantage of those with skill and experience, and the little startup companies that are willing to hire them. Because there's a large pool of very skilled labor available, to those who are willing to hunt it down and pay for it. And there are challenging and lucrative positions available to those with the skills to fill them.

    As you become more experienced it takes longer to find a good fit - because there are fewer jobs that actually require all those skills.

    I was educated in Minsky's first period. I worked my way most of the way through college, got to all-but-some-distribution-requirements, then let my consulting practice expand to full time and never got that degree. By then I had the "equivalent experience" that once appeared on the job reqs. I've accepted holes in employment - once nearly a year long - rather than let my salary or billing rate drop from monotonic increasing (though if I had it to do over I'd take a stop-loss consult about 4 months into that long break. B-) ) I've avoided becoming management, yet have pulling down six figures for a while now as an individual contributor - even salaried.

    But my current job will probably be my last: Thirty years in the industry - mainly in software - got me the one thing it was all intended to get me: in the door of a startup at the right time as it was putting together the right product. The startup was collecting the experineced industry experts, and now I was one of 'em. We've already been bought out for enough that I could retire on the options that have already vested. But I won't yet - because I expect the thing I'm co-archetecting to expand the bottom line until the shares' current value will seem like peanuts - and there's three more years of vesting to go.

    --
    Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way
  31. Do something pro-active by speek · · Score: 3

    As a programmer coming out of college, you shouldn't be worrying about what kind of job you can get at 50. You should see what's available to you now and in the next 10 years, and set yourself up for success regardless of what happens. How? Save and invest. If you are coming out of school now with a CS degree, and if you do it right, you should have no trouble retiring at age 50 with several million dollars in the bank.

    But, instead, you'll buy every new toy that comes out, you'll rent, you'll party, you'll piss it all away, and then you will have something to worry about. You don't even need a great job to be able to do this - just average computer-tech jobs. If you are a CS major, you know some math - go do some and you'll see what I'm talking about.

    If you do this, then you can look forward to contributing to the world's open source software, and to all our freedom in general, instead of managing some proprietary project.

    --
    First, make it work, then make it right, then make it fast, then, make it bloated!
  32. You have the economics wrong. by Russ+Nelson · · Score: 3

    I'm not saying that you're wrong -- companies may indeed prefer two for less the salary of one, but the economics are against them.

    Two employees for $30,000 cost substantially more than one employee for $70,000. First, you have the overhead of an additional employee: desk, telephone, space, social security, pension, accounting. Second, you have the communication cost. You now have to people to manage, and two people to communicate with effectively. Remember Brook's law: adding people to a late project makes it later.

    I know I am much more productive than any whippersnapper straight out of school. Why? My breadth of experience. I've written compilers, interpreters, games, assembly language, microcode, embedded systems, CGI's, OO C code, heck even OO assembly code.

    Yeah, I charge a lot. But I also get a lot done.
    -russ

    --
    Don't piss off The Angry Economist
  33. In demand "old" programmer by ptomblin · · Score: 3

    15 years ago I was highly in demand because I knew Fortran and I was a Civil Engineer. 10 years ago, I was highly in demand because I knew C and Oracle and Xt. 5 years ago, it was C++ and Motif. Now, I'm getting job offers every few weeks because I'm an experienced Java programmer. Probably next year or the year after the demand for XML or something else will be ramping up, and I'll be there.

    But I'm not valuable to my employers because I've followed the trends, but because my engineering degree and 18 years of experience acts as written proof that I know how to solve problems. And that's what it's all about - solving problems.

    --
    A "freaking free-loading Canadian" stealing jobs from good honest hard working Americans since 1997.

    --
    The next Cmdr Taco duplicate will be ready soon, but subscribers can beat the rush and see it early!
  34. /. readers - 30, go off and die? by whitroth · · Score: 3

    Not that I expect many folks to read a post this late in the day...but...I can't *believe* all you assholes who seem to think that age has anything to do with coding ability.

    I went back to school for CS when I was 29, got my first programming job at 31...and I'm 51, now.

    Now, admittedly, I'm weirder, and *far* more flexible than most of y'all seem to be, since I started on IBM mainframes w/ punch cards, and JCL, and PL/1 and COBOL, and CICS, went to pc's and compiled BASIC, back to mainframes and COBOL,
    then back to pc's and C (learned on my own), and Pascal, then UNIX and C, and these days, sysadmin in UNIX and C, w/ Linux at home. Oh, and I've left out all the stuff I've done all that in...and if y'all want, let's spec something out, and I'll write *better*, more maintainable code then most of you.

    The reasons a lot of companies like 30 isn't because they're smarter, or better coders...it's because:
    a) they're cheaper, which is what the vast majority of management cares about (most of whom have never heard the phrase, "there's never time to do it right, there's always time to do it over"), and
    b) HR people, who disregard experience, and only look at degrees, and costs (30 also tends to cost less for benefits, as well).

    Finally, younger programmers also have been so beainwashed that organizations like unions are SO BAD, and to believe that they'll be RICH by the time they're 30, or maybe 35, that they'll do *anything*, including put up with management's idiotic demands for a schedule that has no relation to reality, and the companies that treat y'all like consumables (as several 20-something friends of mine who *used* to work for Andersen Consulting agreed...including the one who once did 119 hours in *one* week, while I was working with him...).

    Then they call us "geeks", and claim that we don't have a life, anyway, so they're not really abusing us....

    mark "been there, done that, got a lousy t-shirt...and still programming"

  35. Underskilled vs. stupid by Eric+Green · · Score: 3
    I think it's important to distinguish between "underskilled" and "stupid". The two are different entities. We hired a kid straight out of college who was "underskilled". But he was not stupid, and when we pointed him to the books he needed to read, he picked the skills right up. Not to mention myself, I knew nothing about cryptography or SCSI media changers before I joined my current employer, and now I'm the guy in charge of those components for my employer... I am NOT right out of college, BTW. I've been in this industry more years than I'd want to count. Still learning new things though.

    In the meantime, I have encountered morons who I wouldn't hire to shine my shoes. Not because they're underskilled. But because they're *STUPID*. They lack curiousity, and they lack the ability to learn new things swiftly. One thing I like to do, in employment interviews (the few that I've conducted :-), is find out something that the prospective employee does not know (but that I do know, and happen to have a book on), point them towards the book, say "I'm going to be back in a few minutes, why don't you take a look at that book and tell me what you think about technology 'foo'?", then go take a coffee break. If I come back and they have the book on their lap engrossed in it, I give'em a brownie point, and another one if they can tell me a little bit about what they've read. If, on the other hand, they're sitting there twiddling their thumbs, it's time to show them out of my office...

    BTW, my bosses don't let me interview potential hires too often because I scare them (potential hires) too much :-).

    -E

    --
    Send mail here if you want to reach me.