Slashdot Mirror


Ask Slashdot: Am I Too Old To Learn New Programming Languages?

ProgramadorPerdido writes "I have been a developer for 25 years. I learned Basic, VB, C, FoxPro, Cobol, and Assembler, but the languages I used the most were Pascal and Delphi. I then concentrated on a now-non-mainstream language for 11 years, as it was used at work. One day I had the chance to move into Project Management and so I did for the last 2 years. Now, at almost 40 years old, I'm at a crossroad. On one side I realized developing is the thing I like best, while on the other side, the languages I'm most proficient with are not that hot on the market. So I came here looking for any advice on how to advance my career. Should I try to learn web development (html, xhtml, css, php, python, ruby)? Should I learn Java and/or C#? Or am I too old to learn and work a new language? Should I go back to PM work even if I do not like it that much? Any similar experiences?"

33 of 772 comments (clear)

  1. Stay Put by Number6.2 · · Score: 5, Insightful

    I'm 55, a programmer, and I've been out of work for two years. I've had plenty of interviews, but no job offers. Here's my take on all of this: I'm too old to be a programmer. I'll put my "management hat" on and tell you why:

    1. I'm old. One 5 hour energy drink revvs up your basic 20 year old code monkey all day. I need a saline drip with caffeine in it all day to keep going.
    2. I'm expensive. I have 30 years of experience in the 'biz and a masters degree in CS. I'm not cheap. You could hire two 25 year olds for what I'm asking.
    3. (and what I consider to be my greatest failing in the corporate world) I've seen all the tricks. I've been exposed to every nasty little mindgame management has at it's disposal. And sometimes I have the bad manners to call people on it. This is called "having a bad attitude".

    So when I compete against 20-somethings in the worst economy since 1929 (I hesitate to say the worst economy ever), I lose. I should have made the leap to management when I had the chance, not because I would have loved management (I would have had to manage assholes like me, after all ;), but because at 40 you have TWENTY YEARS LEFT. The years go by really, really fast. You should really start thinking about a soft place to land when you're 60 now, because if you aren't in line to be a VP or a Director you ain't gonna make it at this point.

    The suggestion to "Follow Your Bliss" only works in an economy that's not run by sociopaths. Hell, it only works in a country that's not run by sociopaths. Strike one strike two. Tighten your belt, put as much money away as you can, and make sure you keep your health up. Because the era of "company loyalty" is over, COBRA for a family costs as much as your mortgage, and finding a new job is going to be a real challenge.

    Other than that, have a nice day! :D

    --
    "If god did not exist, it would be necessary to invent him" --Voltaire
    1. Re:Stay Put by AngryDeuce · · Score: 5, Insightful

      Despite the fact that I am now horribly depressed, I would mod you up if I had the points to confer upon you.

    2. Re:Stay Put by jawtheshark · · Score: 5, Insightful

      because if you aren't in line to be a VP or a Director you ain't gonna make it at this point.

      Which means, most of us will end up on the street if we want to stay developers or system engineers.

      I'm nearly 35, and I'm started to feel it. Like you, I have years of development under my belt and a nice amount of system engineering. I have a nice job, but management has changed and I see the first signs of decline. I've been looking around and ... basically, everywhere where I show up, I'm told I'm too expensive.

      I have another 5 years left in the field and I'm aware of it.... I have no idea what I'll have to do after that. Project Management? I don't think I could do it, I'll be rooting for the devs all the time because I understand them better than the users. I can't do it...

      I wonder what will happen if all a whole generation of IT people are out of work because they are "too expensive". Keep in mind that the age I'm in, means I'm basically starting my "life"... Married, mortgage, kids (or thinking of kids). The prospect of being out of a job in 5 years frightens me to no end.

      However, for the original question: If you could program one language, you can program in any language. It's inherent on the Turing-completeness of programming languages. It's all just a matter of syntax. Sure, mastering a language takes time, but you've probably see already much things and that means you can easily apply what you know to the knew languages.

      Web development, Classic development, or "App" development. Doesn't matter, pick your poison. In the end, you always end up writing to fuzzy customer specs and management that wants a Ferrari for the price of a Yugo.

      --
      Ahhh...the great dumpster continuum. Many a free computer will be found there. -- sowth (748135)
    3. Re:Stay Put by Number6.2 · · Score: 3, Funny

      Heh. Don't worry about me. I'm actually in O.K. shape, thanks to contributing to an (>>>ROTH) IRA when I could. The point here is, follow your bliss when you're young, then screw your ass down and prostitute yourself when your old because teh Conservatiods want to give all your tax dollar to Haliburton and all your social security to Wall Street (did you forget that little maneuver during the Bush Years) and you can go live under an expressway ramp when you're 70. Unless that virus that only kills liberals and people over 60 finally gets approved (KIDDING! KIDDING!).

      Bitter? Me? Nah. I'm just a cranky old man...

      --
      "If god did not exist, it would be necessary to invent him" --Voltaire
    4. Re:Stay Put by Anrego · · Score: 5, Insightful

      It's inherent on the Turing-completeness of programming languages. It's all just a matter of syntax. Sure, mastering a language takes time, but you've probably see already much things and that means you can easily apply what you know to the knew languages.

      I don't really know how much longer this will remain true.

      Yes, the fundementals are the same.. but programming is becoming more and more about gluing higher level components together. Knowing what these components are and how they behave is becoming the marker of being experienced in a language. This experience is of course largely non-transferable. As we move more towards this, I suspect jumping from one language to another will become harder. It's already kinda like that with Java. A c++ guy can learn java's syntax pretty quick.. but learning how all the defacto tools and libraries around it work (hibernate, jboss, spring..) takes time and experience specific to Java.

    5. Re:Stay Put by magarity · · Score: 5, Insightful

      2. I'm expensive. I have 30 years of experience in the 'biz and a masters degree in CS. I'm not cheap. You could hire two 25 year olds for what I'm asking.

      So it's better for your personal situation to stay unemployed than to lower your salary requirements?

      The suggestion to "Follow Your Bliss" only works in an economy that's not run by sociopaths

      But it works remarkably well in an economy run by hedonists!

    6. Re:Stay Put by Lord+Grey · · Score: 4, Interesting

      So: Are you twice as productive as two average 25 year olds?

      By the time any decent-sized project ends, why yes, he is probably twice as productive. He has also created half as many problems for everyone else, gone down dead-end paths much less often, and is the one person the QA department likes.

      I wish I had mod points. I've been writing software for over 30 years and completely understand where Number6.2 is coming from. Plus, I'm in kind of the same boat, facing many of the same decisions. I opted to jump to mobile development, which is new/great/fun, but the company I'm working for is getting cold feet. Makes one wonder about the future.

      --
      // Beyond Here Lie Dragons
    7. Re:Stay Put by ShadyG · · Score: 4, Funny

      Maybe it will make you feel better, maybe not, but even with the bad economy, today's market for software engineers is like INFINITELY better than it was in 1929.

    8. Re:Stay Put by Local+ID10T · · Score: 5, Insightful

      2. I'm expensive. I have 30 years of experience in the 'biz and a masters degree in CS. I'm not cheap. You could hire two 25 year olds for what I'm asking.

      So: Are you twice as productive as two average 25 year olds?

      bye, Paul.

      Productive isn't about raw lines of code generated, its about doing it right the first time. (Because you have made the mistakes, or seen others make them, before.)

      example: This week one of my developers made an error in a data exchange program he was working on... I found out after he had spent 2 days trying to figure it out. In less than 2 hours I fixed the error, restored the data to it's pre-fuckup state, and replayed all the transactions that occurred over the course of those 2 days. It's not because I am a better coder than he is (I'm not), it's because I have seen that error before -aka experience.

      --
      "You want to know how to help your kids? Leave them the fuck alone." -George Carlin
    9. Re:Stay Put by SQL+Error · · Score: 5, Insightful

      > 2. I'm expensive. I have 30 years of experience in the 'biz and a masters degree in CS. I'm not cheap. You could hire two 25 year olds for what I'm asking.
      So: Are you twice as productive as two average 25 year olds?

      bye, Paul.

      Obviously I can't say how productive Number6.2 is, but my answer would be very likely.

      The 25-year-old will work an 80-hour week and churn out a couple of thousand lines of code... Which you'll need to replace twice in six months due to unforseen performance issues.

      The 55-year-old - if he's good - will stare off into space for a few minutes while he compares the current problem with past projects, and then come up with a 200 line solution that doesn't have those unforseen performance issues because he's seen it before.

      In terms of LOC, the 25-year-old is going to be "better". In terms of building systems that work, I'll take the 55-year-old any day.

    10. Re:Stay Put by Lumpy · · Score: 5, Interesting

      Your problem is you keep looking down the same road.

      You are a programmer, over the past 2 years you should have been looking at updating your skillset to slide to an industry that is desperate for people.

      Embedded programming.

      This is what I did 4 years ago when everything started to go sideways. While working as a Corperate Code Ape I started studying embedded systems. I found it was easy, you just cant be lazy and expect the system to have a 8 processor core with 22TB of ram. You get a 33mhz processor with 128Meg of ram to run your Linux OS and your app in. no you dont get Swap space...

      SO I slid over to that, I applied at a job and was hired instantly because of my extensive experience in programming and have been headhunted monthly ever cince.

      Stop trying to do what you are used to. Find a CS career that is hit and heavy demand and slide into it. Programming detonators for Cruise Missiles or lighting systems for hospitals is far more lucrative than anything you will find in a corporate CS job reformatting TPS reports for the Accounting department.

      Learn Industrial control, you know interfacing with real hardware.. The cool part is a bug can kill someone so they actually encourage you to take your time to test and fix bugs! It's refreshing!

      --
      Do not look at laser with remaining good eye.
    11. Re:Stay Put by jawtheshark · · Score: 5, Interesting

      Ah, you're mixing up programming language and frameworks. You do realize that the type of guys we are talking about have seen frameworks come and go? Heck, I've seen frameworks come and go and I'm only 34. Remember Enterprise Java Beans? I'm not saying that they aren't used any more, but they were all the hype back when I was a young programmer.

      It is true that programming has more become like Lego. Stick together the parts in the right combination and that's it. I am however convinced that someone with the "development way of thinking" who is give correct documentation about the required frameworks, can figure it out. Perhaps not as quickly as a language itself, but the odds are that an experience developer has seen something similar somewhere someday.

      --
      Ahhh...the great dumpster continuum. Many a free computer will be found there. -- sowth (748135)
    12. Re:Stay Put by h4rr4r · · Score: 4, Insightful

      No True Scotsman.

      Try not using an intentional logical fallacy.

    13. Re:Stay Put by mini+me · · Score: 3, Interesting

      Are you twice as productive as two average 25 year olds?

      Quite likely. Having two people work independently on the same code is a challenging problem in itself. You have to spend considerable time delegating, and if the problems fall on the same code areas, merge conflicts become quite likely which also take considerable time to sort out. A 55 year old doesn't need to be two times more productive at writing code to be two times more productive in the organization.

    14. Re:Stay Put by TrailerTrash · · Score: 5, Insightful

      I started out as a developer, then 25+ years ago got pulled into the "business side". Now I'm a VP in a really, really huge company. So my perspective will be a bit non-Slashdot-traditional.

      If the OP has a job in project management, stay there. It may not be what you love, but's a regular job, and you are more able to help others avoid the snake pits you've encountered over the years than if you were pounding code. Display a positive attitude, and see if maangement is an option. It may be safer, but is more boring (trust me). You make that call, you can ask your boss to job shadow a manager, perhaps. But this will never happen if you don't have a good attitude, which incluides not ripping on stupid management decisions. If you disagree, keep your mouth shut, unless it's an ethics or compliance violation. Demonstrating that you see through the management BS and calling them on it will NEVER help your career, will NEVER reverse a bad decision, and WILL drag down team morale when the 20-somethings see that the veterans are opposed. You may feel smug, but it will never make things any better. No one will think you're smart, worldly, or wise.

      As a "business partner" here are some things never to forget:

      OF COURSE the business requirements are fuzzy. If the business side wrote very detailed, very clear, actionable, testable, realistic requirements, we wouldn't need half as many tech people. Our job is to figure out what needs to be done - not to have thought through every edge-case before calling you. Please help us through that.

      I dread walking into an IT meeting and seeing a bunch of 50+ people. Bear in mind I'm really close to that myself. I want to see people who WANT to get my project done. Most of the 50+ programmers I encounter are chiefly concerned with demonstrating they know more about technology than I do (rarely true), with telling me why a project CAN'T be done, why this isn't how WE do things around here, and that I'm not "following the process". Maybe my project is stupid, it's true - I've been there many times, on both sides. Or maybe you don't know as much about my job as you think you do, and don't have the perspective to effectively judge.

      Every career stalls. There is one CEO - or maybe one a year - but it won't be you, statistically speaking. So you'll top out somewhere. When you near 50, and find yourself in a boring job that either isn't what you love, or you've done it hundreds of times and can do it in your sleep, then start thinking about how you'll spend your retirement, and begin prepping. Give the company 8-9-?? good hours a day, then focus on building your future. Retirement is often 30 years long. How will you spend it? Is now the time to buy a small cabin down by the lake? Start a hobby that you love? Volunteer in the community? Go back to school? Even with 10 years left, most of the rest of your life will be post-work. Don't wait for your last year to plan.

      No matter what your job is, whom you work for, what industry you work in, or what country you live in, people want to work with other people who are positive and try to be helpful. Is your attitude, demeanor, and work product demonstrating that? If not, you can be sure you'll always get the crap jobs - working with the irritating business partner who has just as bad an attitude as you, most often.

      just some thoughts.

    15. Re:Stay Put by dgatwood · · Score: 4, Insightful

      Republicans, as a whole, are not true conservatives. Your point?

      The only difference between Republicans and Democrats is in their method of taxation:

      • The Democrats tax directly and above the board.
      • The Republicans tax stealthily in a way that doesn't look like a tax to people who don't really understand how the economy works—specifically, by borrowing money, causing the Federal Reserve to increase the money supply, resulting in inflation on the price of goods and services.

      The net effect is exactly the same except that the tax that the Republicans favor tends to disproportionately affect the poor. It's basically equivalent to a sales tax or a corporate tax, except that it is achieved in such a way that you can't pedantically call it a tax.

      Anybody who says the current crop of so-called conservatives don't tax is... well, to roughly quote Futurama, "Bureaucrat CoolHand2120, you are technically correct—the best kind of correct."

      --

      Check out my sci-fi/humor trilogy at PatriotsBooks.

  2. SAP by vbraga · · Score: 3, Interesting

    If you're still proficient with COBOL you can give ABAP a try since it's similar. There's a lot of SAP work around and, at least in my experience, the big corporate environment is willing to hire experienced developers.

    --
    English is not my first language. Corrections and suggestions are welcome.
  3. Never too old... till you stop by notbob · · Score: 5, Insightful

    I firmly believe you're too old to learn the day you stop learning.

    Never ever quite learning the latest and greatest in programming, to do any less is condemning ones own career path.

    Having recently joined the ranks of older programmers I still find that I can completely crush the new kids by leveraging that vast experience I already have.

    Dust off the learning hat and get back into the fight man, 40 isn't a time to lay down and die... last I heard 30 was the new 20 and 40 was the new 30... and we're all going to be broke in this economy so who cares in the end?

    1. Re:Never too old... till you stop by magarity · · Score: 3, Insightful

      I firmly believe you're too old to learn the day you stop learning

      ,,, and this guy is in the danger zone by even asking.

  4. Just harder by DoofusOfDeath · · Score: 4, Informative

    I'm about your age. My impression is that new learning is still possible, but it requires more time and effort. So I'd say it partially depends on how motivated you are.

  5. It's simple by whoda · · Score: 3, Insightful

    If you think you might be too old, then you are.

  6. You're Never Too Old by eldavojohn · · Score: 4, Interesting

    Ask Slashdot: Am I Too Old To Learn New Programming Languages?

    Barring extreme physical exertion and danger, you're never too old for anything. If you're too old to learn something new, you might as well lay down in your grave and wait for death on the grounds that adopting a fatalistic attitude toward new experiences basically ensures you're done with life. That's my opinion anyway. Seriously, if you can't do something new, what exactly are you looking forward to?

    I do have an important question though: how did you come to begin programming? I am unfamiliar with what would have been available paths back in those days. Did you get a degree via courses in logic and mathematics? Trade school? Taught yourself? Mentored?

    I believe Pascal is closest to a procedural language and Delphi is the object oriented equivalent? So that's a somewhat diverse start. Are you familiar with concepts like (but not limited to): closures, sets, Big O Notation and understand the difference between a framework and a library? These are things that I might not use daily coding Ruby and Java but I remember from school and I feel better prepare me for learning any new (or old) language. If you aren't familiar with these things, it might pay to consider taking refresher courses at a nearby college to brush up on them. I don't know how viable this suggestion is but on the grounds of learning new languages, it has proved invaluable to me in understanding why language creators made the choices they did.

    Should I try to learn web development (html, xhtml, css, php, python, ruby)? Should I learn Java and/or C#?

    Personally I would suggest Ruby on Rails with CSS for a solid UI. You're going to need to know concepts like RESTful interfaces and it might take some getting used to letting the Rails automagic do things for you but the resources are plentiful and free. It sounds like it will be totally out of your comfort zone and that's probably a good thing if you're up to the challenge.

    Should I go back to PM work even if I do not like it that much?

    In today's economy? Why not make two resumes: PM and Programmer. If PM skills pay the bills, hop on it and work on programming as a side hobby. If the right Programmer position comes up and the pay is good, consider it but don't set yourself up for failure or take too large a risk if your home/dependents/nestegg are at stake.

    --
    My work here is dung.
  7. Stick to project management. by 140Mandak262Jamuna · · Score: 4, Interesting
    You like coding and want to do coding. But you are likely to be far more productive using your skills to make sure more people benefit by your experience. And it would be more rewarding to you financially too.

    In WW-II Japanese air force promoted their combat aces to ranks so high they out ranked their base commanders. They kept assigning themselves most dangerous and glorious combat missions, eventually all of them died. But Japanese did have a few aces notching up dozens of kills. US, on the other hand, does not have any reaching even 10 kills. The moment a combat pilot notches up 5 and qualifies to be an ace, he is transferred to the training command and is made to teach those skills to a new crop of young pilots. Some of them eventually transferred to NASA test missions and flew research aircraft.

    So though you love coding, switch to project management. I am speaking from experience. I loved coding, and stayed in programming for far too long. I am doing project management now. You can always code in your spare time, doing what you like.

    --
    sed -e 's/Chuck Norris/Rajnikant/g' joke > fact
  8. Re:ASM by rubycodez · · Score: 3, Informative

    nope, even IBM still calls it "assembler" at times

    for example http://publibfp.boulder.ibm.com/cgi-bin/bookmgr/download/asmr1020.pdf or http://publib.boulder.ibm.com/infocenter/wmqv7/v7r0/index.jsp?topic=/com.ibm.mq.csqzal.doc/fg19060_.htm

    you diaper wearing puppies can go off and make up your own rules if you want, but don't be surprised if we older and wiser suddenly beat you with our ear horn

  9. No one's too old by Alioth · · Score: 3, Interesting

    Being "too old to learn" is mostly an excuse. Unless you have a brain injury of some description, or a brain disease, you're never too old to learn anything. It might take slightly longer, then again - it might not.

    Nearing 40, I'm learning Verilog which is not merely another language, it's a hardware description language and although the syntax looks familiar to a language you write software with, how you use it is radically different. This has certain challenges, but there is no problem with actually *learning* it, nor some of the very big differences that "writing hardware" so to speak has compared with writing software. Also, while we had a slack period at work I made a start at learning Erlang, which looked like it had some useful applications for what we do, and had no particular problems learning it despite it being a functional language whereas everything I've done to date has been an imperative language.

    In fact to learn a new language within the same family (for instance, if I were to learn Python) today I find it much easier and much faster than I did 20 years ago because depth of experience can help avoid the dead-ends, and we have much better tools which can also help us to learn faster.

    This, by the way, applies to human languages. "I'm too old to learn a foreign language" is an excuse. "English speakers are bad at learning foreign languages" is an excuse. I started learning Spanish 3 years ago. Today, I'm at an advanced level and have even stood up in public and given talks in Spanish. I can think in Spanish and conduct my entire daily life in that language. I can even laugh at humorous programmes on Spanish TV, which proves that I'm getting to grip with it pretty well. Until 3 years ago I was monolingual so it's not that I'm getting a handy lift-up by knowing some other foreign language.

    If you believe you're too old to learn it'll become a self-fulfilling prophecy and your brain will wither away.

  10. Too Old to learn a programmign language at 40? by the+eric+conspiracy · · Score: 3, Insightful

    Hogwash. I didn't start working as a software developer until I was 50. I learned Java, Perl and PHP in a year or so. I already knew C and FORTRAN at that time. Since then I've taught myself Python, Javascript, Scala and Ruby. I've recently started Erlang.

    A year later I taught my father C; he was in his mid 70's and wanted to right some software to do some statistical analysis of stock data.

    Don't let these whippersnappers tell you you can't do it. The fact is that is they know it, it's easy. The stuff that is actually hard is the math, and since you went to school more 20-30 years ago you have a far better education in the fundamentals that count than they do.

    NOW GET OFF MY LAWN.

  11. Money or Love by Tablizer · · Score: 3, Insightful

    I've been in the biz a long time. My observation is that you probably have to choose between doing what you like and money. If you like money more than personal work satisfaction, pick the management route. It's the better choice for us geezers finance-wise. But if you truly prefer coding, and money is secondary, then go for it. You may have to dumb-down your coding resume a bit, for "experience" works against you, and keep your asking price mellow. Only briefly mention your distant experience on your resume, they don't know or care what a DEC is.

  12. Lower your expectations the older you get by Anonymous Coward · · Score: 3, Insightful

    I'm nigh on 58 and still a developer. I am content to keep writing code.
    I tried being a PM and it amlost drove me into an early grave. It is not for me.
    So I went back to developing.
    The company where I worked went belly up two years ago. Sure it took me a while to get another job. Not for the reasons stated but many companies couldn't hack the 'I don't want to be a Manager' answer to the where do you see yourself in 5 years question.
    Finally I got a job where they were happy with that answer.. sure I could earn a load more if I were willing to commute for 3hrs a day but those days are behind me.
    In three or so years I'll call it a day and retire. I will be able to afford to do that because I saved loads in my 20's, 30's & 40's.

    to the OP,
      Stay with it. There will be a job somewhere for you. Somewhere that will appreciate your experience and honesty.

    Good luck

  13. You're just a boy by CaptainOfSpray · · Score: 4, Insightful

    I'm 66. In the last few years I've learned enough Python and PHP to do useful work, and learned Linux enough to get an LPI cert. Considering all these things are free to download, there's no barrier preventing you learning, except your own false belief that you are too old.

    --
    "Cock Up Your Beaver" does not mean what you think. This sig is intended to clog filters and annoy do-gooders
  14. C# is mostly Delphi by canajin56 · · Score: 5, Interesting

    If you're familiar with Delphi, then C# should take about five minutes to pick up. It was designed by the same architect as Delphi, and you do almost everything in the same way. It just uses C syntax instead of pascal. But ha at being too old, my dad picked up Delphi in his 40s and it's his favorite for RAD. He still uses Delphi 7 (the last good one) for everything, and grumbles about there being no Mac version. "Use Lazarus, it's exactly the same" "No, too hard to use" "It's identical!" "No it's not". Then again, he's probably trolling, he was mocking my use of a smart phone "My phone makes calls and that's all a phone is for!" and then he bought a droid ;)

    --
    ASCII stupid question, get a stupid ANSI
  15. Re:Learn one, learn 'em all... by mooingyak · · Score: 4, Interesting

    But. Try going in to a job interview and saying "No, I don't have 5 years of this language, but give me a week, some small changes to work on and access to google and I'll be able to program it as well as most of your other developers". It may be true, but it doesn't wash with HR people or project managers.

    This is just as frustrating from the hiring side. I'd rather someone who can demonstrate problem solving skills and some general programming background than someone who has nothing else going for them but 5 years of experience in our primary language. But communicating this concept to HR and the recruiters is painful at best.

    --
    William of Ockham had no beard. The most likely explanation is that it was chewed off by squirrels every morning.
  16. Re:Too old by rlanctot · · Score: 3, Funny

    Don't laugh. Last week I started learning Ruby and I forgot how to chew.