
Is there any age limit to being a programmer ? - mun411
I am about to turn 24 next month, although I do have a keen interest in Technology but never have taken up programming. My question, is there any age limit to really getting to learn how to program ? please share your experience on how long did it take you to learn to program
======
DanielBMarkham
If you want to be a good programmer, you probably need to reformulate your
question. You never "learn to program" and then just kick back and rest on
your laurels. If you do, technology will soon overtake you. Good programmers
are always learning.

So a better question is: am I interested enough in technology to continuously
spend some quality time of my life keeping up with how people are making
computers do stuff?

I think if you're interested (and able to find some way to consume technical
material that works for you) that age doesn't matter in the least. But you've
got to have enough passion to plow through boring stuff at times so that you
can do cool stuff later on. And to really be good, you have to be able to
rinse and repeat.

~~~
BigZaphod
_You never "learn to program" and then just kick back and rest on your
laurels. If you do, technology will soon overtake you. Good programmers are
always learning._

Exactly. Programming is like being a doctor or a lawyer where the right term
in those fields is to say you "practice (law|medicine)." We programmers should
really get together and adopt that terminology.

~~~
Retric
While true I think it's important to really know a technology before moving
on. You can do fine only learning one new and popular stack (language, popular
frameworks / API's, debugger, etc) every ten years. Now days, if you really
know, Java, Ruby, Python, or C#. Net it's not hard to get a decent job, but
there is little need to know _all_ of them.

The trailing edge of the programming wold moves slowly so you have a few years
to move onto the next trend before you become obsolete. Often you will make
less money during those transition periods, but it's still worth.

PS: I only point this out because compared to the average American you can
make a great living programming as a 9-5 job. You can step above that, but
it's not required.

------
BigZaphod
A thing that, I think, is often overlooked is that when you start at something
like this at a very young age you can miss important lessons. I don't have a
concrete example, exactly, but I literally cannot remember starting to program
- I just always have. The upside of that is that a ton of stuff is deeply
internalized in me that I know newbies have a hard time "getting" at first.
The downside, though, is probably the first 10 or 12 years of my programming
life I spent doing things in weird ways with bad abstractions because I had no
one to show me otherwise. (And at first I may have been too young to even
grasp some abstractions anyway.) That can be a good learning experience
because I learned a lot from "first principals" so-to-speak, but it also means
that for many many years my programming skills were not well-directed and the
process was extremely inefficient. By starting later in life you can avoid
wasting so much time. It's not as hard to "catch up" to someone like me who
has been doing it my whole life as you might expect. (Also, there's this neat
thing called "The Internet" now... :)

------
btilly
Here is my experience. I spent my 20s studying math. When I left grad school
at 28 my first job was an introductory programming job. I previously had no
interest in computers or programming. A year later I was able to get a much
better programming job. Within 3 more years I had patches in the Perl core, a
pretty good reputation on Perlmonks (a well-known programming forum), and was
a decent programmer (though I had some pretty big gaps).

I am now 40 and am about to start a job at Google. I will always have a lot
more to learn, but I'm pretty happy with how I've developed. So I think that
24 is not too late to start.

But you need to set reasonable expectations. You aren't going to start
programming and in a month be the second coming of Ken Ritchie. If you take it
seriously you should expect to see rapid improvement for several years. See
<http://norvig.com/21-days.html> for more on that.

------
jacquesm
The programming profession is young enough that not a great many of them have
made it in to their sixties yet, but those that I know about and that did are
going strong. Maybe a bit more cautious, maybe not quite as fast as before,
but the quality is definitely still there.

I'm 45 and I find that I can't quite remember everything as easily as I used
to, but I guess that is expected. I plan to keep on coding until my body fails
me in a way that makes it impossible.

Just like I would assume a musician would always want to make music, even when
older.

~~~
gcheong
"I plan to keep on coding until my body fails me in a way that makes it
impossible."

What is great about programming is that, as technologies progress, the odds
that you will be able to keep programming until you just die keep getting
better all the time.

------
d3vvnull
I started to be serious about learning to program at 26. Then, I was in an
entry-level position where I learned how to write spreadsheet macros on my
own, with just the spreadsheet documentation as my guide. I also had a problem
I needed to solve so my self-training was directed by what I needed to
accomplish. That's often the best way to learn how to program: take a problem
you want to solve and develop a solution with whatever tools you have
available. When you have completed your first programming task, you will find
that you have built foundation for you to tackle your next task, which may be
even more complex than the first one you solved. Today there is an
overwhelming amount of tools and information available for learning how to
program on the Web.

Now I am 46 and have been building applications for almost 20 years and the
learning doesn't stop. Even experienced programmers continually learn how to
program as they pick up on new techniques, new programming languages, and new
best practices. Good luck with your efforts.

------
bsaunder
I've been programming since I was about 9, I'm now 39, and still learning.
There's no end to learning, just new perspectives to see. I believe your
starting environment can have a significant effect on your progress. If you
pick something too obtuse and low level it may get hard to grasp some of the
basic concepts you will need to master. These days I'd recommend JavaScript
since you can start quickly in the broswer without having to learn an IDE.
Also having the DOM to play with right away is fun, easy with obvious visual
feedback that what you are doing is working (or not). I'd also start simply
with the basic language, from scratch (without a library). Just learn the
language and syntax. Get the O'Reilly JavaScript book make your dead simple
index.html with inline JavaScript and see what you can do. Only once you get
the basics, migrate to a framework (jQuery's a good choice). Oh, you'll want
FireBug (or something similar too).

------
rayval
My father-in-law was a mechanical engineer and manager. Never worked with
software until he retired at age 62. He then taught himself how to program and
built a sophisticated GIS system as a semi-hobby, semi-part-time consulting.

------
amix
I think you can become a decent programmer quickly, especially now when there
are so many good books, high-order languages and tutorials on the subject. To
master programming (like everything else) takes a lot of effort thought (check
out Peter Norvig's "Teach yourself programming in Ten years" [1]). But even if
it takes 10 years you will only be 34 and have about ~25 work years left in
you... 25 years, that's a long time.

So if you are really liking the idea of programming, start small and do a
small project - - like creating a site for one of your hobbies. I can
recommend checking out Dive Into Python[2] and Why's (Poigant) Guide to Ruby
[3]. There are lots of great (and free) books on programming out there, so you
don't really have to invest any money...

Good luck :)

[1] <http://norvig.com/21-days.html>

[2] <http://www.diveintopython.org/>

[3] <http://mislav.uniqpath.com/poignant-guide/>

~~~
PebblesRox
Ooh, I love Why's (Poignant) Guide to Ruby so far. Thank you for recommending
it!

------
thirdusername
I have a classmate that started his undergrad when he was 24 and were almost
completely clueless when it came to programming, computers and nerd culture in
general.

Two years in hes hacking on side projects during lectures, referencing xkcd in
casual conversation and has found areas of interests where hes more
knowlegable than anyone else in my program where some of us have been into
these types of things for as long as we can remember.

I know it hasn't been easy for him as the learning curve is rather steep but
it flattens out so just don't give up, try to work the problems and questions
when you have to (stackoverflow.com and vark.com are great depending on the
size and difficulty) and you'll pick things up pretty quickly and I don't
think you're starting out quite as bad as he did.

I started programming when I was 11 or 12, so I'm not really sure I can give
you a satisfactory answer to the last question. I also learn new things every
day so I wouldn't say I'm done and I hope I never will be.

~~~
falsestprophet
I started programming when I was 10, over a decade later I build software for
a living and am still clueless about nerd culture. Being a dweeb is not
required.

------
ErrantX
One of the best programmers I know (my tutor in a sense) is 57 and started
programming in his late 30's after buying out of the Air force.

So: no :)

~~~
gcheong
Sorry for the aside, but how does one "buy out" of the Air force?

~~~
ErrantX
This is in the uk: in the RAF you obviously sign up fir at least X years. But
at a certain point you can buy out you remaining years. I'd have to ask how it
works.

------
gexla
When you die, your programming abilities have expired. So, I'm sorry to say,
the answer to your question is YES!

If anyone can convince you that you are too old to do anything while you are
still breathing, then it's YOU who is being programmed, and if that happens
then you aren't going to be worth much for anything.

------
raju
I started programming when I was 21 (I had a bit in school, and some at work
before that) but I really got started at 21. Am I as good as others that I
interact with, especially those who started way before I did. My certain
answer is No. But that only drives me to learn more and work harder.

I spend time reading about Algorithms and Lisp and SICP and what have you. I
spend time reading a lot of open source code, and writing a lot (both at work
and in my spare time). I engage in conversations with those who are way
smarter and experienced than I (both in person, and online - BTW HN is a great
resource) hoping to find that one nugget of information that I can use.

To answer your question - See if it really "takes" over you. See if you find a
thrill in making a computer bend to your wishes. See if technology really
"tickles" you. Programming is for the most part about figuring things out. And
that involves figuring out why things don't work. Yes, there is that tingling
excitement when what you wanted to happen happens, but a large part of
programming is debugging and maintenance, reading documentation and exiting
(and often pretty badly done) existing source code.

How long did it take for me to learn? I doubt I will ever be done.
Programmers, at least the good ones are constantly learning. Books, blogs,
online forums, in-person discussions and your own experiments.

I don't think there is an age limit to learning it, but my experience has been
that for people like me, it's a struggle (YMMV). I know there are things I
don't know, and discussions like those at HN are very humbling. I am
constantly trying to "catch" up with those that have more experience, but
that's not a bad thing. It keeps me on my toes.

My take on this - Dig in something that gets you going quickly. Someone
suggested JavaScript, I would recommend something like Ruby or Clojure. Buy a
book, fire up your text editor and start writing. You can soon upgrade to one
of the classics like Structure and Interpretation of Computer Programs to a
get a good foundation, and take it from there.

[Update - Sorry, I did not realize how long that was. My apologies if that
comes across as a rant, it's not. I hope it helps]

------
antirez
It takes 10 years to master programming, but 24 is not too late at all. I know
a lot of people that started in their twenties and now are good programmers.

My problem instead starts to be how much time I can continue to do programming
for work. I'm 32, it seems fair to me to continue for another 10 years, but
should I switch at some point? My dream is to turn myself into a teacher
around 45 opening a programming school, but probably children can learn faster
just by internet than with an old teacher ;)

~~~
donaldc
_My problem instead starts to be how much time I can continue to do
programming for work._

I'd assume you can continue until you no longer find it interesting...

------
gcheong
As others have pointed out, there is no age limit, and the learning never
stops. But like anything else, you can take it as far as you want to go - just
around the block or the rest of your life. Just start and see what happens.
Even if you end up writing just the simplest "hello world" program and decide
to never go any further, you will have learned something most people have no
clue about and will at least begin to understand the potential of what is
possible.

------
flashgordon
If I could start playing the violin at 22, learning programming at 24 is not
even a question!!!

~~~
scotth
How old are you now?

------
mrinterweb
Lucky for you 24 is the cutoff date from starting to learn programming. It has
been scientifically proven that it is impossible to learn how to program past
the age of 24.

Ok. I lie.

1\. Select a language you would like to learn. Taking time to figure out which
language to learn first shapes the way you will learn programming. Get advice
from programmers. I would recommend one of three routes.

Route 1: (the low road) Learning languages like C/C++ or Java can be great for
learning the base fundamentals. Then you can appreciate what fancy higher
level languages do for you later.

Route 2: (the high road) Choose a language like Ruby or Python. These
languages have a lot of magic and allow you to accomplish your goals in less
lines of code. Higher level languages really make programming fun, IMHO.

Route 3: (the pretty road) If you are a visual learner, programming Flash's
Action Script 3 or JavaScript would be a decent option. Learning Flash as a
platform may be kind of distracting to accomplishing the goal of learning how
to program, but it could be used as a visual way to learn programming.

2\. Think of a project that will be fun. Don't set your sites too high.

3\. Read a book or two first just to get some of the basics down. Don't get
hung up with the drudgery of some of the contrived examples. Take what you
learn as you learn it, and try to apply it to your project when possible.

(Personal Bias Alert! For your own sake, avoid PHP unless you want to learn
some really bad habits. Also I would urge you to select an open source
technology. Open source communities generally are more willing to help you
learn from my past experience.)

------
xenophanes
The age limit is you can't learn to program when you're -0.5 years old. You
need to be at least 1. Also if you're over 80 you should worry about RSI.

------
mbenjaminsmith
If you think you might enjoy it then do it. I started at 33 and it was one of
the best decisions of my life. As for how long, think in terms of hours. If
you want to get up to speed quickly, then put in a lot of hours to it. When I
started I worked 120 hours a week to get up to speed. I enjoyed it enough that
it didn't feel like I was killing myself. YMMV.

------
Ixiaus
Is there an age limit to thinking? An age limit to "living"? Seriously, there
is no age limit to anything. I'm 23 years old with no formal training in Comp
Sci and I'm teaching myself Scheme as we speak (The Little Schemer is a great
book!).

If you want to climb Mt. Everest and you're 70 years old, what is holding you
back? Health? Get healthy. Doctor saying no? Screw em' (I'd rather die on top
of Mt. Everest than sick in a bed).

Stop asking for permission from those around you and go f'ing do it if you
want to. Stop caring about what other people think, stop being insecure in
your "not knowing" and you will achieve whatever it is you want.

------
utku_karatas2
Very similar topic on SO: [http://stackoverflow.com/questions/1048004/start-
programming...](http://stackoverflow.com/questions/1048004/start-programming-
at-27)

------
kp212
In short... no. It's going to take dedication on your part, to get up to
speed, but in months you should be able to code, and in months/years if you
like, do this professionally. I think with many things in life, if you really
enjoy something you'll excel at it regardless of preconceived "talent". Also,
its best not to ask for permission to try something since some people will say
no, just go with it and act like you don't know any better in terms of
likelihood to succeed.

------
fbomb
My obsession with programming started when I was 14 (I'm 46 now) and it's
still going strong. I've noticed that it takes me longer to code stuff than
when I was in my 20's & 30's but the quality of my code has improved
dramatically over that time and as a result, I spend a lot less time debugging
than I used to. I think that as long as you can look back at your old code and
realize just how bad it was, then you're still learning and there's hope for
you.

------
Slashed
I began to learn programming when I was 11, now I'm almost 22. As for the
answer, in my opinion, it's never late to learn anything. Like Nike's motto
goes, Just do it.

------
katyhuff
No. Of course, I'm just 23 and I learned when I was 17ish, so maybe I have no
relevant experience. However, the people who taught me learned in their 40s.
Anyway, I expect to have to learn new things about new languages and new ways
to program every few months for the rest of the forseeable future. So, no,
there is no age limit, and if there were... it wouldn't be 24... it would be
much closer to 110.

------
azharcs
I was recently listening to one of the podcast of Ruby on Rails creator, DHH
and he said, he started programming in the early 20's and he has certainly
made a small dent in the universe.

I understand that, we are surrounded by successful stories of Programmers or
Entrepreneurs who started programming at an early age but that shouldn't stop
you from learning Programming. "It's better late than never".

------
donaldc
Some variation of this question comes up every couple of months. It's
unfortunate that somehow many people get the message that they are not among
the 'select' group of people who can learn new things. Especially since this
belief often becomes a self-fulfilling prophecy.

I feel sympathy for people, of whatever age, who seem to need reassurance
that, yes, they really are capable of learning.

------
sunkencity
I started with programming when I was 27. I've been a power _user_ of
computers for a long time, but it was first when I took some university
courses in programming and found Perl that I finally found a programming
langueage that fit me. What drove me to programming was that I was making all
these .html documents and it was a PITA to update them all.

------
bmj
I taught myself around age 25. I learned Perl and Java, and had a position
within about 6-8 months. I was fortunate to have some connections in the
industry, and found what was basically an apprenticeship under a programmer
who was brilliant, and also self-taught.

As another commenter pointed out, curiosity is a critical part of being self-
taught.

------
micheles
I started to be serious about programming at 33. 6 months for me was enough to
get started. Of course there is a difference between being able to program and
being able to program well. The latter takes longer, potentially a lifetime
depending on what you mean by "well".

------
cabalamat
Loads of people learned programming when they were older than 24. It's not a
problem.

------
morphir
a curious mind will be a learning mind.

------
drhowarddrfine
I'm 57. I started programming at 52. I was an electronic engineer and the most
I ever did was assembly and some C. I own some fast food restaurants and my
wife suggested we get online. Long story short, I couldn't spell "web
developer" but now I are one.

~~~
joshu
Can you do a thread elsewhere about owning the restaurants? I'm fascinated by
the food business.

~~~
sriram_sun
This is how you end up with a small fortune in the food business: start with a
big one!

------
pwnstigator
Absolutely not, and 24 is young.

When you're 22, it's intimidating to compete with the people who have been on
a career path since high school (e.g. the kid who knew he wanted to be an
investment banker when he was 13, and has been reading the WSJ since 1997). It
creates the illusion that the only way to succeed is to have been planning for
it since you were in grade school. What you learn later on is that pretty much
everyone interesting will change career tracks at least once in his or her
life, and have to start over. It's not so bad, because a lot of the skills
you've learned previously transfer over.

Advice: pick up a language (I'd choose Clojure, but HN would have some good
advice here) and start writing code. It doesn't matter if it's useful; just
become comfortable with the process. Find a job where you'll be able to learn
from a mentor more experienced than you are.

------
ilovecheese
No, but just remember - when you're working for people younger than you, it's
probably time to become an entrepreneur or director. Very rarely does
"programming" offer a salary commensurate with the level of seniority older
people actually have attained.

When you're middle aged and not paid what you're really worth, it borders on
pathetic, not just merely sad.

~~~
andrewcooke
42 year old programmer here. just wanted to say "fuck you". thanks.

~~~
ilovecheese
Help yourself out. If you were paid what you're really worth, you wouldn't
have any desire to say that. I'm sure there are programmers out there reading
HN who make over 200 grand (or are wealthy from other means) who are not
trying to say "fuck you" to me, because they are in the class of professionals
who are actually paid what they're worth.

Don't shoot the messenger, my friend.

<http://www.acooke.org/>

Is this you? Wonder why you're based in Chile.... something to do with the
cost of living, perhaps? Wage arbitrage means you don't disagree with me at
all, in fact you seem to be in vehement concurrence.

