Slashdot Mirror


Tech's Dark Secret, It's All About Age

theodp writes "Universities really should tell engineering students what to expect in the long term and how to manage their technical careers. Citing ex-Microsoft CTO David Vaskevitch's belief that younger workers have more energy and are sometimes more creative, Wadwha warns that reports of ageism's death have been greatly exaggerated. While encouraging managers to consider the value of the experience older techies bring, Wadwha also offers some get-real advice to those whose hair is beginning to grey: 1) Move up the ladder into management, architecture, or design; switch to sales or product management; jump ship and become an entrepreneur. 2) If you're going to stay in programming, realize that the deck is stacked against you, so be prepared to earn less as you gain experience. 3) Keep your skills current — to be coding for a living when you're 50, you'll need to be able to out-code the new kids on the block. Wadwha's piece strikes a chord with 50-something Dave Winer, who calls the rampant ageism 'really f***ed up,' adding that, 'It's probably the reason why we keep going around in the same loops over and over, because we chuck our experience, wholesale, every ten years or so.'"

33 of 602 comments (clear)

  1. Experience is a Gift... by alphatel · · Score: 5, Insightful

    Anyone in the field who hasn't figured this out yet needs to be let go. Programming requires long nights staring blankly at mind-muddling objective languages. Experienced directors/designers have the foresight to be able to properly direct all that youthful energy to the most worthwhile pursuits, rather than just letting them wander aimlessly through some other other geek's code.

    --
    When the foot seeks the place of the head, the line is crossed. Know your place. Keep your place. Be a shoe.
    1. Re:Experience is a Gift... by radtea · · Score: 5, Insightful

      Programming requires long nights staring blankly at mind-muddling objective languages.

      You're doing it wrong.

      This is the same attitude that puts every project behind schedule, because 20-something morons who have never seen a project managed competently think it's supposed to be that way.

      --
      Blasphemy is a human right. Blasphemophobia kills.
    2. Re:Experience is a Gift... by DoofusOfDeath · · Score: 5, Insightful

      Programming requires long nights staring blankly at mind-muddling objective languages.

      No, inexperienced programming requires that.

    3. Re:Experience is a Gift... by alphatel · · Score: 5, Insightful

      "Programming requires long nights staring blankly at mind-muddling objective languages."

      Actually, no, it doesn't. I have never done this and never will.

      To each his own. More importantly, if you are being directed properly by experienced management then you see the meaning of the statement. The purpose is meant to divert overly enthusiastic but misdirected individuals from spending countless hours whiddling away at unimportant tasks which due to their lack of experience might put them at risk of staring blankly - nights or days is irrelevant.

      --
      When the foot seeks the place of the head, the line is crossed. Know your place. Keep your place. Be a shoe.
    4. Re:Experience is a Gift... by Monkeedude1212 · · Score: 5, Insightful

      Experienced directors/designers have the foresight to be able to properly direct all that youthful energy to the most worthwhile pursuits.

      This.

      100 times this.

      This to the power infinite.

      I'm reaching my 4th year of professional programming (so still pretty young), and I remember starting out I definately marketted myself as one of those fresh new guys who are up to date with the latest stuff. I would not be where I am today without the senior developer over my shoulder though - he is basically the bridge between what you are taught and what the real world is like. Universities, Colleges, Polytechnics, all churn out hundreds of monkeys like me, but those guys who stick with it are the valuable ones, and I hate to see them under-appreciated. We recently had our lead developer with 10+ years experience in the company leave because of political BS, and while I'm capable at keeping the maintenance in check, I have no idea how to lay out the big projects that the VP's want done. Well, let me rephrase that: I know I could come up with something, but I have no idea if it is truly the best course of action, how easy it will be to implement with existing systems, or any of the logistical stuff on how long each section will take under the rest of the team with their experience.

      I only hope that I can stick it out long enough to develop my skills to be as helpful to some protoges some day, and that they too will be appreciative of me.

    5. Re:Experience is a Gift... by brainboyz · · Score: 4, Insightful

      But proving you've been discriminated against by age is difficult, at best. "The candidate we hired had skills more relevant to our business needs and displayed an attitude that meshed better with our company culture."

    6. Re:Experience is a Gift... by ahodgson · · Score: 3, Insightful

      I have yet to see a developer fresh out of school even know what a SQL injection is, let alone code to prevent it.

    7. Re:Experience is a Gift... by hey! · · Score: 3, Insightful

      Anyone in the field who hasn't figured this out yet needs to be let go. Programming requires long nights staring blankly at mind-muddling objective languages.

      That's simply not true. It's just *one* way of getting the job done. True, you need to achieve a flow state to be maximally productive. The reason for the late nights is to have time when you aren't interrupted. In other words, the belief that you *have* to stay late at night to be productive is the product of incompetent management.

      --
      Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
    8. Re:Experience is a Gift... by ConceptJunkie · · Score: 5, Insightful

      You must work exclusively with stupid older developers then, because that kind of generalization is ludicrous.

      Experience can't replace knowledge, but knowledge won't do you a whole lot of good until you have some experience.

      In my experience there are good developers and not-good developers.

      The good ones "get it", and can adapt to new languages and platforms quickly and still be effective and productive.

      The "not-good" developers won't do well on the platforms they are used to no matter how long they work at it.

      I was able to get hired to work in languages I'd never used before and adapted quickly. Good managers, which are increasingly hard to find, can recognize this kind of thing. Bad managers are how mediocre people can thrive in a career they are no good at.

      Many, but not most, young kids fresh out of school "get it". They are worth hiring. Many, but not most, old timers with decades of experience don't "get it", and by that point they probably never will.

      But I don't care how smart a person is, years of paying his dues in the trenches is absolutely imperative to become a true expert.

      --
      You are in a maze of twisty little passages, all alike.
    9. Re:Experience is a Gift... by Fulcrum+of+Evil · · Score: 4, Insightful

      We're hiring energetic people with enthusiasm for their work.

      Shouldn't you be hiring competent people with some measure of perspective? I understand that this can masquerade as tired to those used to eager beavers, but I assure you that they actually get more done.

      --
      "We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
    10. Re:Experience is a Gift... by cayenne8 · · Score: 5, Insightful
      "because 20-something morons who have never seen a project managed competently think it's supposed to be that way."

      I would venture to guess...there are PLENTY of 40-50yr olds that have yet to see a project managed competently...

      --
      Light travels faster than sound. This is why some people appear bright until you hear them speak.........
    11. Re:Experience is a Gift... by darien.train · · Score: 5, Insightful

      This is the same attitude that puts every project behind schedule, because 20-something morons who have never seen a project managed competently think it's supposed to be that way.

      In my experience that's usually because some 30-something moron passed a lot of their bad habits onto their subordinates as if they were revelations from the lord himself.

      I personally tend to shy away from hiring developers who brag about living in the office as it says to me that they don't know how to work smart, only hard (which leads to sloppiness). Living in the office also leads to "office as home" syndrome which totally destroys your developers ability to know when they're working or not. This leads to a never-ending cycle of almost-working developers eating up time and power through all hours of the night without a lot to show for it.

      90% of the time a smart and hard 8 hours is all that's necessary to get what you need out of your devs (or your job if you are a dev.) If you're constantly working all hours of the night you're either:

      1. Getting ripped off by your employer

      2. Being managed by an incompetent

      3. Incompetent yourself

      4. Some combination thereof

      I wish I knew how to better articulate this to others but I can never seem to get the point across. Something tells me posting this here isn't going to solve that but I can dream.

      --
      I don't know how many years on this Earth I got left. I'm going to get real weird with it. - Frank Reynolds
    12. Re:Experience is a Gift... by DrgnDancer · · Score: 5, Insightful

      Which is exactly what the second programmer mentioned in the summary is talking about. You're having to figure it all out again, instead of learning from the mistakes of your predecessors. You lost everyone with more than ten years experience. Assuming that you're no smarter than the smartest guy just lost, that means that in 6 years time (your current 4 years + 6 more makes 10) you will finally be about as a good as the guy that just left. Whereas if he'd been there showing you the mistakes he made and helping you navigate around them you might be there in in 2 or 3 years. Worse, if trends continue as they are, it quite likely that in 5 or 6 years you'll be leaving, or forced out, and the next crop of people won't benefit from *your* hard won experience either.

      --
      I don't need a million points of light, just two points of multi-mode fiber and a 10 Gig-E router.
    13. Re:Experience is a Gift... by houstonbofh · · Score: 5, Insightful

      "because 20-something morons who have never seen a project managed competently think it's supposed to be that way."

      I would venture to guess...there are PLENTY of 40-50yr olds that have yet to see a project managed competently...

      Often it seems that project management is just a job title, not a skill...

    14. Re:Experience is a Gift... by gnasher719 · · Score: 4, Insightful

      I have yet to see a developer fresh out of school even know what a SQL injection is, let alone code to prevent it.

      I am not an SQL developer. So when I heard about this SQL injection business, curious as I was I had to figure out what it was and how it was done. When I finally found a web page explaining it, all I could think was: What the fuck. Only an absolute complete idiot would ever, ever take the contents of a user entered text field and plug it as it is into a string that is constructed to form a query. Not even in dBase would you do that. What a fuckup.

      Seriously, I wouldn't have know what an SQL injection is because, well, it is like I have never thought about how dangerous and life threatening it would be to stop breathing, or to take a bath with the face _in_ the water instead out of _out_ the water. When I first about "SQL injection" I thought it had to be some really clever hack that you had to be really careful about, but no, you only get SQL injections through code created by a total and utter imbecile.

  2. "Out code"? by hsmith · · Score: 5, Insightful

    What is that? When I was younger I could code more, but I wouldn't say I coded better. Now I take my time and produce efficent, well documented, fully tested code - which functions 1000x better than my 'mass produced' code. Any *good* programmer programs well - not in volume.

    Any 50+ year old programmer should be able to keep up with 25yo programmers, knowing how to program isn't just knowing the ins and outs of the hottest language - it is knowing HOW to program so that you can swap languages efficently. (Yes, there is time to learn differences in languages, etc) But anyone worth their salt can jump where needed and go.

    Being said, if your first language was cold fusion and it is all you have done for the last 12 years, you may have a difficult time switching to C!

    1. Re:"Out code"? by Bengie · · Score: 4, Insightful

      Going along with hsmith:

      I know lots of "programmers" that copy/paste what they read for exercises in books and that's what they use.

      The problem is they never learn "why". They write just because that's how they saw it done in examples.

      I don't look at a problem and think, how can I program this. I look at a problem and think, if I was a computer, how would I do this. Once I figure that out, I try to figure out how to make the computer do that with my programming language.

      I love to know how things work.
      How does the .Net GC work
      How does .Net handle objects
      How does SQL decide to use indexes
      Why is a 64bit op non-atomic in a 32bit machine
      How does the CPU calculate floats/doubles/etc and how can I reduce math errors
      How can I take advantage of the 80bit double precision of x86 registers

      Which SQL object should I use for reading in data vs manipulating datasets. When should I use Byte Arrays to manipulate string instead of String methods. How can I re-use objects to not use so much memory. How can I reduce lock contention for multi-threaded programming. How can I use bit flags to reduce the amount of data stored in a struct. How can I reduce cache thrashing. How can I pack more important data into a cache line to reduce fetches. Can I use a hash table or binary search. How are managed objects stored in .Net and how can this affect threaded programming

      I may work in a high level language, but I don't think in the high level language. I program using logic, I communicate with the computer using a programming language.

  3. Actually, it's all about the benjamins by RLiegh · · Score: 5, Insightful

    If managers could pay people in their 50's what they people in their 20's, it wouldn't be an issue. As always, the bottom line is the only thing that really matters.

  4. who hasn't burned out? by avandesande · · Score: 4, Insightful

    I would like to hear from programmers that have been at it for 10 or more years that aren't 'burned out'

    --
    love is just extroverted narcissism
  5. Re:Typical Dinosaur Mentality by Americano · · Score: 4, Insightful

    and those of us trying to deal with people just starting out who think they know everything.

    It's rare to find someone who is young who values the experience we dinosaurs bring to the table.

    We've been around long enough to have broken it and fixed it again several times over so don't discount our skills just because we're old enough to be your parents.

    Sounds like you're indulging in a bit of casual ageism yourself! Delightful, innit?

    I'm 35. I work with lots of guys who are 15-25 years older than me; some are quite bright, excellent problem solvers, and their experience is tremendously valuable. Others are obnoxious, stale, inflexible, cantankerous pains in the ass. I value the former. I despise the latter - not because they're old, it's because they behave as if their age automatically confers upon them some sort of infallibility in all things technical.

    Not surprisingly, the latter group are also the ones - in my experience - who like to knock me (with ~12 years in the field) as "young," "unseasoned," and "still wet behind the ears," normally while I'm disagreeing with their approach and outlining why it's bad, and why a different approach would be better. Because apparently nothing supports their point quite as well as waving away technical limitations with "you're young, you can't possible understand." The former group tends to explain their proposals in such a way that it is immediately obvious why their approach is a technically superior alternative, instead of being condescending pricks to everybody with less experience.

    "Old enough to be my parent" is a secondhand appeal to authority - a) you're not my parent; b) if that's the only reason I should be listening to you, you probably aren't as good at your job as you've judged yourself. People old enough to be my parents earn my respect when I see that they are genuine authorities in the subject matter, they don't automatically get it by virtue of the fact that they've been sitting around the office longer than me. Just as I don't expect someone to assume I'm correct simply because "my college training is more recent than yours" - if I'm correct, then it doesn't matter if I'm young or old; if I'm incorrect, the same applies.

  6. Re:If we were in any other field... by dward90 · · Score: 5, Insightful

    The difference between the computing industry and the other industries you mentioned is that computing is hundreds of years younger, and thus changing orders of magnitude faster.
    Medicine comes the closest because of continuous research, so doctors are required to stay current with continuing education (they have to do this to maintain certification).

    Businesses dump older programmers in favor of newer ones because it's cheaper to hire a out-of-college kid for an entry-level salary than it is to pay a career-programmer his substantially higher salary to learn whatever the newest, hippest, programming style is.

    Note: this is a bad thing. It's bad for body of work that is our code-base in every language, and it's bad for the intelligent design of large systems (which requires vast experience). However, it will take a large shift in the rate at which the tools we use in the industry change. If the entire field doesn't change hugely over the course of 2 decades, then someone who has spent the last 2 decades writing code becomes exponentially more valuable.

    --
    My other sig is clever.
  7. False Economy by strangeattraction · · Score: 5, Insightful

    I leave at 5PM because my experience has taught me how to avoid many of the problem new coders create for themselves. I get twice as much done in half the time compared to when I first started. Looking back at my first experiences as a programmer, I laugh at all the late nights spent working diligently to complete code only to find that I had checked in something inadvertently or forgotten to check something in that broke the build. This in turn wasted many other people time simple because I was too tired to think. The idea that technology has changed tremendously and older coders experience no longer applies is LOL. First the technology has primarily gotten smaller and faster. And coding techniques have improved in some ways but degraded in others. It all still ends up as binary in the end, something many of my younger colleagues don't deem to get which leads to some extremely sloppy techniques. These arguments are mainly bull similar to memes like out sourcing saves money (usually at the expense of time and quality).

  8. screw management, go into consulting by bl8n8r · · Score: 3, Insightful

    There's no future in management, and geeks hate managing people anyway so wtf? I've been asked a few times and no, I won't do it. Thing is, I like writing code. I *enjoy* it. It's why I come to work and what I like to do. I don't *want* to referee the personalities in the office and I surely don't want to be the one who answers for everyone else's fuckups. Not to mention, excess management is usually the first to get cut when job reductions go around. who wants that? I'd rather be a hired hand for some consulting outfit. The benefits suck, and people think your dogsh#t, but if you can get over that it's a good application for experience and the change of scenery on projects is nice too.

    --
    boycott slashdot February 10th - 17th check out: altSlashdot.org
  9. Re:If we were in any other field... by hey! · · Score: 5, Insightful

    It's because hiring managers are afraid to hire people with more experience than they have.

    --
    Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
  10. Re:If we were in any other field... by Mongoose+Disciple · · Score: 4, Insightful

    are concepts that newbies assume can be handled by an API, or automatically garbage-collected...

    To be fair, for all practical purposes on many (not all) projects, they not only can be, but probably should be. Your primary focus is on the business or application logic and not on optimization or memory management -- unless it matters, and often it doesn't. For example, I have a sense of how to design a project and write code that supports a high degree of scalability and high availability of services -- but that's been relevant on only a small fraction of the projects I've worked. Wasting time building heavy scalability (for example) into a piece of software that would for certain only ever be used by one person or a handful of people at a time would not be the hallmark of a good programmer.

    (Though I agree you can get into trouble if you don't have any sense of when it isn't true that you can let these things slide.)

  11. I'm not even a software dev, but .... by King_TJ · · Score: 3, Insightful

    What I've observed as an I.T. guy who often worked along-side developers is, management often decides a certain technology is the way forward for a given project. At that point, the experienced developers are sometimes left out in the cold, because although they may have, say, 6 years of good experience coding in Java, they didn't spend time on the latest Microsoft technologies. The "new kid on the block", by contrast, may have claimed experience in that area, so to management, he's the "better bet".

    Most likely, the REAL problem here is that management doesn't buy into or grasp the idea that the development language used is rather immaterial. If you've got someone with many years of experience coding in a specific language, it'd probably yield the best results to let them continue doing that. Ask them to produce product X or Y with whichever tools they're most versed in using!

    Instead though, there's an overall sense that programming languages get "stale" after a while, and a new product needs to be designed with a new language.

    I'd say I only have a few personal anecdotal stories to back this belief up, so it could be way off base ... except how much demand is there today for developers with experience in COBOL or Fortran or BASIC, or Pascal, or Forth? I've always worked in a "Support Specialist" or "Network Management" role, but I've observed all these programming languages come and go -- and it seems like such a bad deal for a developer. He/she has to put in so much effort to learn and subsequently master one, only to find it fading into obscurity.

  12. Re:If we were in any other field... by Mongoose+Disciple · · Score: 4, Insightful

    I agree with you that most good programmers don't make good managers or salespeople. However:

    The "alternatives" toward which a programmer is supposed to steer according to TFA are plain stupid and slightly offending by assuming that becoming a manager or a Sales ~person~ is a move "UP". How the fuck is your programmer background going to help with those?

    A manager or sales person who both is legitimately suited for their job and is technical is a godsend, because they tend to be much less likely to promise their superiors and/or clients the impossible or impractical. They also tend to be better at "selling" the decisions that the development team has made and their tradeoffs.

  13. Re:Typical Dinosaur Mentality by jythie · · Score: 3, Insightful

    *nod* That has been my problem with working around untrained 'rockstars'... they can be really bright, but they spend all their time reinventing things that have been around for decades because they did not know the solution already existed off the shelf.

  14. Re:Typical Dinosaur Mentality by dc29A · · Score: 3, Insightful

    As a middle aged programmer, I always try to keep my knowledge up to date. Yes it comes at the cost of 'free time', but in the end, if I want to have a fun job, I need to do it (and luckily, my significant other understands it and supports me). The other options are: moving into management (which I despise) or be stuck fixing Hadean Cobol code. When I got my degree, I knew only Cobol, Assembler and C. Over the years I added VB, Java and C# to my list along with a bunch of frameworks like .NET, Spring, iBatis, name it. This self teaching has brought me a lot of fun projects in all kinds of languages running on all kinds of systems.

    But I can see where this animosity towards older coders comes from: the vast majority of them don't give a damn about new technologies/languages/frameworks. So when the boss decided to use one of those, they won't be able to keep up. In my group of 20 or so coders, maybe 2-3 are continually keeping themselves up to date with recent technologies. Some of the VB coders have hard time grasping class attributes in C#, because they never kept up with object oriented languages. Hell, some of them code in C# as it was VB.

    Unfortunately, due to the nature of this domain, I see only one option for me if I want to keep programming: learn or perish. When the next great recession hits, I can at least put multiple language/system skills on my resumé, while some older programmers can't.

  15. Re:Typical Dinosaur Mentality by Antisyzygy · · Score: 5, Insightful

    Im pretty sure the reasons corporations chuck people is because they can hire a young ones for 50 percent the cost of you old people. They look at small term gains vs. long term sustainable profits. If anything the young ones should be guided directly by you older guys, not slapped in some new formation. Really, its a management issue because they do not recognize other peoples skills but their own as valuable. Management is one of the worst disciplines taught at Universities. It generates a whole bunch of dilettantes that believe the "business degree" hype and think "Well, shit I can get a job making big bucks if I do an MBA and still not work very hard at learning anything difficult." I believe this is why its very important to phase out MBA managers in general and only hire someone like an Industrial Engineer or in this case an actual senior level programmer to do management in any kind of production be it software or physical products.

    --
    That brings me to an interesting point, / . is just "the ramblings of socially-inept, technology-literate news-mongers".
  16. Re:Say what? by PPH · · Score: 4, Insightful

    The problem at Microsoft is that, once someone has reached a level of experience enabling them to spot flaws in the overall product architecture, they become a burden on management. Questions along the lines of, "Why don't we just fix this crap?" interfere with getting the next release of crap out the door. So its time to move them aside and hire in someone who still thinks Ballmer is God.

    It's getting difficult to find such people without having to recruit in the third world.

    --
    Have gnu, will travel.
  17. Productivity by natoochtoniket · · Score: 4, Insightful

    A lot of people seem to think that programmer productivity has something to do with lines of code produced. That misconception gets propagated by uninformed managers, who are basically looking for something that is easy to measure.

    In reality, productivity has more to do with achieving required behaviors with a minimum of code-writing. When a fresh-out writes 3000 lines of code, discards or changes 2900 of them, and ends up with a 700 line program that only sort-of works and only remotely resembles the design, after 10 weeks of working 70 hours a week, is that really productive? If an older guy thinks about the problem for two weeks, spends a day or two writing docs, writes a couple pages of code in one morning, tests it that afternoon, tweeks it a little the next morning, spends another day improving comments and updating docs, and has the whole thing finished and solid in 3 weeks, is that really less productive?

    Uninformed managers reward the guy who works 80 hours a week and writes lots of bugs. The buggy code needs to be fixed, which then requires heroic amounts of overtime. They reward the overtime, without understanding why it was needed. By contrast, the guy who gets it right the first time, and doesn't need to fix it, doesn't have to work those silly hours. The uninformed managers also do not understand why a program doesn't need to be fixed, and why overtime is not really needed, and so the better programmers are not usually rewarded.

    Programming is about function and behavior, not lines of code.

    Just for fun, I sometimes run 'uncrustify' on a mess of old code, or change a variable name, before doing a small logic change. My nontechnical director gets a report that counts the lines in each commit.

  18. Re:Well I'm 50 by aaarrrgggh · · Score: 3, Insightful

    Ageism isn't a problem for star performers... it is a problem for the "average" people. If you want to do your job for 30 years and never change anything about what it is or what you know... you will be out of luck ...and a job.

    It is true in nearly every position, possibly with the exception of some forms of sales or medicine.