Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×
Programming

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

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?"
This discussion has been archived. No new comments can be posted.

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

Comments Filter:
  • Comment removed (Score:4, Interesting)

    by account_deleted ( 4530225 ) on Friday August 12, 2011 @10:59AM (#37068374)
    Comment removed based on user account deletion
  • You're Never Too Old (Score:5, Interesting)

    by eldavojohn ( 898314 ) * <eldavojohn@gma[ ]com ['il.' in gap]> on Friday August 12, 2011 @11:06AM (#37068500) Journal

    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 [railstutorial.org]. 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.

  • by 140Mandak262Jamuna ( 970587 ) on Friday August 12, 2011 @11:08AM (#37068522) Journal
    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.

  • No one's too old (Score:4, Interesting)

    by Alioth ( 221270 ) <no@spam> on Friday August 12, 2011 @11:13AM (#37068612) Journal

    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.

  • Re:Stay Put (Score:5, Interesting)

    by Lord Grey ( 463613 ) on Friday August 12, 2011 @11:23AM (#37068740)

    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.

  • by raddan ( 519638 ) * on Friday August 12, 2011 @11:26AM (#37068780)
    Get your dad on R [r-project.org] for statistical analysis. Even if you love to program (and I do), doing it in C can be a grind. R, like Perl and Ruby, has a HUGE library [r-project.org] which is dead simple to use (just about as easy to use as RubyGems), and very high quality. Plots are easy to do and look beautiful (especially if you use Hadley Wickham's ggplot2 [had.co.nz] library). We use it in our department [umass.edu] because when it comes time to do the analysis, we want to be focusing on the math, not whether we have some null pointer dereference hiding somewhere. If you taught yourself Scala and Erlang, then R will be a piece of cake.
  • C# is mostly Delphi (Score:5, Interesting)

    by canajin56 ( 660655 ) on Friday August 12, 2011 @11:30AM (#37068842)
    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 ;)
  • Re:Stay Put (Score:5, Interesting)

    by Lumpy ( 12016 ) on Friday August 12, 2011 @11:31AM (#37068862) Homepage

    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!

  • Re:Stay Put (Score:5, Interesting)

    by jawtheshark ( 198669 ) * <{moc.krahsehtwaj} {ta} {todhsals}> on Friday August 12, 2011 @11:46AM (#37069086) Homepage Journal

    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.

  • by mooingyak ( 720677 ) on Friday August 12, 2011 @11:52AM (#37069156)

    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.

  • Re:Stay Put (Score:4, Interesting)

    by mini me ( 132455 ) on Friday August 12, 2011 @11:57AM (#37069234)

    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.

It's a naive, domestic operating system without any breeding, but I think you'll be amused by its presumption.

Working...