
Do you want to be programming at 50? - chl
http://pindancing.blogspot.com/2012/10/on-do-you-want-to-be-programming-at.html
======
nostromo
I think most people that enjoy programming would love to continue to do so
until retirement.

When people ask this question, what they are actually asking is, "Do people
want to hire a 50 year old programmer?"

For a lot of the HN set, I bet they would be unsure about hiring someone of
such an age; and that's unfortunate.

For many careers, age is seen as wisdom. Lawyers, mathematicians, judges,
accountants, politicians, scientists, MBAs, real-estate agents, bankers,
journalists, doctors... In all of these fields, all else being equal, you'd
probably hire a 50 year old over a 20 year old.

Programmers seem to have more of a shelf life on the open market, along with
models, actors, musicians, and laborers. I think many 30 and 40-something
programmers sense this and start to wonder if they need a backup plan to get
to retirement (which in the US is actually often mid-60s).

~~~
tsotha
I'm a programmer in my mid 40s, and sadly I can see that most 40+ programmers
generally offer less value to their employers than they did a decade ago.
There are reasons for this:

1\. Health. This is a big one. By 50 sitting on your ass every work day for 30
years has caught up with you. Hypertension, sleep apnea, diabetes, back pain,
etc. You're going to take more sick days, take more time off to see the
doctor, and you're going to come to work on drugs that make you tired or a
little fuzzy, mentally.

2\. Lack of energy. Even if you're healthy at 50 you don't have the same
ability to roll with problems that you did when you were 32. You can't put in
extra time and maintain productivity. When you get home you don't have the
energy to tinker with technical stuff just for the fun of it.

3\. Cognitive decline. Nobody likes to think about this, but the reality is
for most people cognitive decline starts in your 30s. By 50 it's affecting
your productivity. Things that you used to remember for as long as it mattered
(like file, class, or machine names) you have to write down now. It takes
longer to pick up new technologies and you forget them faster. This translates
into lower productivity. Maybe a little lower, maybe a lot.

So even though I'm getting to the age where it affects me, I don't blame
companies and individuals for their reluctance to hire older guys. It's based
on real-world considerations. If I get laid off will I be able to find another
programming job? Probably, but it's going to be a lot more difficult than it
would have been 15 or 20 years ago.

I refuse to be bitter about it, though. I had my chance to go into management
and decided to keep writing code, even though I knew things would get dicey
later.

~~~
jebblue
Every time you said you you meant you not us. I can't give up, I'm driven, I
drive. I code and I'm good. Kiss my grits and sit on it.

~~~
tsotha
>Every time you said you you meant you not us.

No, I mean us. You may still be pretty sharp, but you're not as sharp as you
were in your 20s. That's just a fact of life. Even your life.

>I can't give up, I'm driven, I drive. I code and I'm good.

If I had a nickel for every lousy programmer who thought he was good I could
retire. But even if it's true... so what? When a company passes over you in
favor of a younger guy it's a rational decision on their part - they're just
playing the odds.

I'm not saying you can't can't get a job once you reach a certain age, just
that there are valid reasons companies would rather not hire older
programmers.

~~~
jebblue
If you didn't save those nickels then I guess you ain't too smart, at least I
can still program.

~~~
tsotha
Well, in that case I should probably ask you for a nickel.

------
InclinedPlane
Yes, of course. Why not?

I think the secret question behind a lot of this sentiment is: do you want to
still be burning yourself out at 50? Do you want to still be working 60+ hour
weeks? Do you want to still be on call 24/7? Do you want to still spend part
of every release cycle in a pitiless death march?

And, ultimately, do you still want to put up with all of the bullshit in this
industry?

But all of that bullshit is not an inherent part of working in this industry,
it's just a byproduct of the immaturity of the industry.

The author here tries to draw a distinction between "Type A" (programming by
intention) and "Type B" (reactionary programming verging on programming by
accident) but there's really nothing wrong with "maintenance mode programming"
as long as you're not perpetually in firefighting mode. Indeed, concentrating
on polish, performance, and robustness are often fantastic ways to improve a
system, provided that they are done well and not half-assed last-minute
kludges.

~~~
joe_the_user
Hmm...

Because, oddly enough, I have been in the industry _a long time_ , I happen to
know that's wrong.

The "all the bullshit" of the industry is _not_ a product of the immaturity of
the industry. Because it had gotten worse. In each of my five-ten year job
search cycles, I have observed more companies with more of the problems you
describe (60+ hour work weeks, 24/7 on call, psychological pressure for death
marches, etc). Each time, consistently more insanity.

Not sure exactly what to do myself or in general but I'm pretty sure we can't
chalk this up to an immature industry.

~~~
brightsize
Agreed. The bullshit is definitely getting turned up in my chosen sector,
which in general is start-ups and other, smaller companies. Lately a trend
I've come to notice is that more and more companies in their job adverts are
asking for, if not insisting on, potential candidates having evidence of
public, hacking side-projects. They want github repos, they want active coding
blogs, both of which imply that not only should you be spending 50-60 hours a
week working for a flat salary, but you should also spend the remaining time
doing nothing but thinking about, hacking in, and writing about software! It's
can't think of another field where, if you don't spend every waking minute
practicing your profession, you're not worthy of consideration for employment.
I'm not sure if larger companies have this mindset or not, but it does seem to
be a trend that's on the rise so maybe someday they will have it.

~~~
eli_gottlieb
I really do wonder what these hiring managers asking for these things could
_possibly_ be thinking. After all, don't I need some time in my week to eat,
cook, clean and go to the bathroom?

------
guylhem
Yes. And 60. And 70. And any other number.

[EDIT to clarify]

Just think about the new languages or paradigm we may have. I dream of the
google glasses - what will we have then?

So, my answer is yes - for both type A and B. And if you don't have time to
understand the problem space of type B problems, maybe you should take more
time to study them. Learning is fun.

Autonomy? I already have lots of it - and we all do. Maybe running things
could add some more. Never before in history creating value was so easy with
so little capital.

Mastery? I keep discovering new stuff and learning. The amount of knowledge
you already master is not important - especially since memory is tricky and
you will forget stuff. Being able to quickly take new stuff is important.

Purpose? You make your own purposes. There is no bad or good - or sense. If
you find some, there is some. That's my zen approach.

------
WalterBright
I'm 53, and I program all day, by choice. I like to think that my code is
getting better, too.

Reminds me of my mentor when I got my first job at Boeing. He was in his 50's
at the time, and loved every minute designing systems for airliners. He
eventually retired, and still freelanced doing mechanical design work. It's
what he was born to do, and he was damned good at it.

~~~
gvb
I'm 51 and still lovin' it. I switched companies about three years ago because
the company I was working for was sold to Ginormous Enterprise and the quality
of work dropped precipitously - our engineering focus changed to writing
procedures and navel gazing. :-(

I actually had my wife talked into allowing me to switch to an entry level
programming job in a totally different software field (potentially at an entry
level salary, at least for a while ;-) so I could learn new things and enjoy
work again. Before I actually took that step, a startup hired me. I am still
in the same field, but I am back to learning lots of new things, working smart
and moving fast.

~~~
mattdeboard
I'd like to read more about this.

------
kabdib
I'm 51. Here's how I keep up.

I read code. I read /lots/ of code.

I'm an ACM member. I go through recent publications and try to read at least a
paper a week, in whatever area interests me.

I write designs, using english and diagrams and stuff. I explain APIs and
establish contracts with the folks who use my code. Written communication to
/people/ is a powerful skill, and you should practice it continually.

I like to learn new languages (though my brain appears to be impervious to
Haskell and Prolog). Also, learning idioms of the languages I currently use is
fun.

I write code. The frequency of this ebbs and flows; lately I've spent more
time going between groups and establishing common ground that writing actual
code, but then I can spend a couple months getting the code done, and it's a
ton of fun seeing the groups able to use it effectively.

Finally, I have fun. I can't imagine coming to work every day to a drudgery of
kicking around a bunch of crap I'm not proud of. Have fun, or you're dead in
this industry.

~~~
Evbn
Prolog and Haskell (and Excel! More similar than you think!) have large logic
engines inside them, so in a sense they learn away form "programming
languages" and toward "input languages for a system"

------
saraid216
I've always preferred Zed Shaw's notion: "You're much better off using code as
your secret weapon in another profession. ... People who can code in biology,
medicine, government, sociology, physics, history, and mathematics are
respected and can do amazing things to advance those disciplines."

At some point, I'll actually take that advice and be a something-else-who-can-
program, but that hasn't happened yet.

~~~
Evbn
Mathematicians who code mathematics get a lot of disrespect...

~~~
saraid216
I imagine it's _slightly_ more complicated than X do Y ergo respect.

And really, if I was more okay with paraphrasing/slicing up the original text,
I probably would have removed the "are respected and" bits.

------
DanielBMarkham
Ah yes, the bitter sting of diving down too far in the API. I remember my
first C++ Win32 app, written using Borland's OWL. I made an "hello world" pop
up, then started poking around under the hood.

What the _hell_ is all this crap! I spent a day trying to figure it out. Then
everytime something went wrong there I was, diving through the same crap all
over again.

Or the bitter sting of not diving down far enough. Remember that app where you
wrote code all around the barn and farmyard, only to realize that a couple of
API calls would have done the same thing? Ooof. That hurts.

As an older programmer (who doesn't code for a living), I _enjoy_ the
challenge of finding the right abstraction level and skating into a solution.
When I wrote my first COM server, I used an MFC book, a Doc-View type model,
and then copied liberally from MSDN. Worked like a charm. It was a lot of
work, but rolling that sucker by hand would have been brutal.

And it's gotten even easier. When I wrote <http://hn-books.com>, I thought "I
wonder if I can write a static site that looks like a client-server app?"
Compared to all that C++ and COM nastiness, it was a piece of cake. I love
creating web art (apps, content, mixed-mode) but shit, it's not even work.

So I picked up FP a couple of years ago. Easy to pick up, difficult to master.
Made my entire brain explode. What a great ride.

So no, I don't mind the complex work. In fact, I can't tell you how much I
really crave that feeling of "Beats the hell out of me how we're going to do
this, let's go do it" No feeling in the the world like that. It's like solving
a jigsaw puzzle where you cut and color your own pieces, and there's no
picture on the box. Fun stuff. Hope to be doing that kind of stuff when I'm
70.

------
fernly
Yeah well... I'm 2 months short of my 70th and I'm still programming. But not
for money nor to a schedule, and I pick my own projects. There nevertheless
remains some of that "skimming great oceans of APIs" and "reading between the
lines of documentation" -- but that's been part of the game since, oh, the
tabletop rack of IBM manuals in the machine room next to the 360/50...

------
Zenst
If you enjoy it, even if not your main job then it is something like
gardening. A hobby even. With that aspect for many, current or past working
programmers will often still dable once in a while long past this 50 year
barrier being mooted as some kind of hurdle.

Now funnily enough back in say the 60's/70's and early 80's being old and
indeed 50 or over was not a issue for getting a programming job. Then in the
late 80's and 90's things changed to the aspect when being old was in many
area's deemed against you in some indirect filtering HR way.

Now we are at a time which can and does judge people on the actual work they
do in respect of programming. They can see or be shown examples of work and
abilities and with that age is irrelavant if they be 13 or 113, its the
results they can and have done for which they get the work. In that I would
say programming has become alot easier to get your foot in the door of a
company and also if your not as good easier to fall thru, nomatter age/gender
or colour-spectrum-offset. Heck if a dog could do good code, it would be
employed thesedays.

So the real question is down to if you want and are able to program and with
that age is irrelavant, the the ability to learn is priceless.

------
nbaksalyar
There's nothing wrong with programming at 50. I think it's wrong when at 50
you write code for _someone_ \- not for yourself or your own company.

> ageism is a problem

Is it? With 18+ years of experience you would have a great chance of starting
your own business. And customers just don't care whether you're 50 years old,
or woman, or disabled, or anything - they care just about a product or a work
you do.

~~~
psykotic
> I think it's wrong when at 50 you write code for someone - not for yourself
> or your own company.

If it's not wrong at 30, why would it be wrong at 50? Not every programmer
sees their individual contributions as a stepping stone to becoming a manager,
so why would it be any different with starting a company? I see no reason to
begrudge someone for doing what they love, no matter their age.

~~~
nbaksalyar
> I see no reason to begrudge someone for doing what they love, no matter
> their age.

You're right - sure, one size doesn't fit all. But in my opinion it should be
a good reason for someone in his 40s to not protect his future.

First of all, working on your own is a matter of independence, as it just
doesn't guaranteed that he wouldn't be fired someday and can find a new decent
job at 50+.

------
jrajav
I think the main issue here is generational. The first generation to grow up
with computers permeating many aspects of their lives has left college and
entered the workforce in full swing. The internet generation is just about to
get there. The "iPad generation" (not comfortable removing the quotes yet)
will follow in less time than you think. So, despite the fact that, yes, there
are currently 50-year-olds who have been programming and advancing the art for
their whole adult lives, it's not really a sizable chunk of the population.
This isn't a problem for them so much as it is for the new generations that
are starting to call the shots in this fast-paced, blogging hacker world.
_They_ can't possibly relate to the experience of being around to see and
learn from everything that led up to this.

So, uh. I'm honestly not sure where I was going with this! The future will be
pretty cool.

------
paulsutter
There are three kinds of work:

1\. Owner

2\. Manager

3\. Worker

Most of us start out as (3), and some move on to (2). Entrepreneurs are
immediately (1+2+3), which explains why it's so difficult.

When we're young we have a lot of energy and not so much wisdom. 3 is a
natural fit. As we get older we gradually have less energy but hopefully more
wisdom and experience. I'm 46, and I just can't do the all nighters that I did
so often as a young programmer at Apple. So the goal for me has been to
gradually move up the scale.

I realized this about 15 years ago after hearing the expression "the men who
manage money manage the men who manage men". That expression describes the
three types of work.

EDIT: For example, I'd put pg in category 1. So category 1 doesn't necessarily
mean managing money.

~~~
cema
This is all true, but... do you want to manage money, manage men, or write
code?

~~~
jebblue
It sounds like he gave up to me. We do need people who manage money though so
maybe he's happy.

------
lurkinggrue
Rather that than digging ditches at 50.

Never thought of programming as a thing you give up when you get older.

~~~
ianstallings
A lot of people do because after 20 years it kind of blends all together.
You're building the same thing you did 20 years ago and nothing has improved.
The tools are still buggy, the managers still have no clue, and the hours are
still insane.

I'm crazy, so I'm not really sure why others do it.

~~~
malachismith
Exactly why I stopped programming in my 30s. Figured I would try to solve
management problems as that could do more good for programmers than any code I
wrote. Turned out to be harder than I thought.

~~~
lurkinggrue
I never wanted to manage as that involved people and it is much harder to code
around those problems.

------
smoyer
tldr; = yes

In the past I've done both hardware and software engineering as well as roles
in management (manager to C-level) and now that I'm back to writing software
almost full-time, I'm enjoying my career more than ever. There's something
almost magical about creating something out of nothing; about finding a better
way to accomplish a task; about learning a new trick (especially one that
you've never seen before). I don't have gray hair (yet - although that may be
a foot-race with baldness), but it's also gratifying to teach thirty-some
years of programming wisdom to others. And it's not like they don't teach me
tricks of their own.

BTW: I'm now 48, so 50 doesn't seem so far off.

------
canistr
I think this is an insightful post that is equally applicable to people in
their 20s (such as myself). I've been asking myself the same question of what
do I want to do in the next couple of years of post-graduation. But I'm at
odds with myself over the prospect of maintaining a steady lifestyle and
income by seeking well-paying jobs in the tech industry, jumping head-first
into the startup world, or just chasing down other lifelong dreams that have
nothing to do with the world of tech or engineering.

Ultimately, it's a matter of what job gives you those three benefits (mastery,
autonomy, and purpose as the article points out). Will working at Google after
graduation satisfy that point? I'm not sure. Will doing a startup? I can't say
as I haven't done one. Will working in some other industry do that?

I struggle to figure out what to do with the next couple of years of my life.
So I'm keen to listen to what folks have to say about what they plan to do in
the long-term (15-30 years out), as well as the short-to-middle term (6
months, 2 years, 5 years, etc).

~~~
kingycd
I totally agree with you, as I am in the same situation. I am however slightly
ahead of you in the process (end of 20s). Right after graduation I chose the
first option you said ("maintaining a steady lifestyle and income by seeking
well-paying jobs in the tech industry"), but beside getting better at
programming (mastery) the latter two benefits (autonomy and purpose) are not
fulfilled.

So I quit my job just two months ago with no immediate plans, hoping to enter
the startup world, or pursue other dreams outside programming. I am as
clueless as you are at this point, but one thing I can tell you is that
seeking a well-paying job to begin with post-graduation is not all bad. You
are young and you have time, and money in the bank helps A LOT when you are in
my shoes. Having to worry about your account/juggle part-time jobs/living with
your parents is no fun.

On the other hand, I would also like to hear what people ahead of me have to
say as well. Should joining a startup be the first thing to do post-
graduation? What did you do when you were not quite sure where your purpose
was?

------
kami8845
No.

Programming is low-impact work. You can only write so many lines of code in a
day. The people that are changing the world don't do it by writing code.

~~~
kabdib
Strongly disagree. A strong programmer can make hundreds of millions of
dollars for a company, given the correct leverage. A good design can involve
only a few tens of thousands of lines of code and start a whole new product
ecosystem. I've seen it done.

~~~
kami8845
Can you talk about the times you've seen it done. Because I haven't, and I'd
love to hear more.

~~~
guylhem
Tell that to the guy who invented bitcoin, etc.

Programming gives you an almost infinite leverage.

Now if you attack a problem that doesn't interest you, maybe the problem is
not in programming but in the topic you chose.

------
at-fates-hands
This is pretty fascinating for me. I got into development relatively late
(30's) and just had a conversation with some of my developer mates about where
they want to be in 10-20 years.

A few said they will no doubt still be programming. "Technology is changing so
fast, we're the only ones who will be able to stay at the cutting edge, making
our positions as developers fairly insulated." said one.

I was also thinking about a career "pivot" in a few years into management. It
was really under the auspices of how employers prefer the fresh college face
and cheap labour rates as opposed to the seasoned mercenary who has high
contract rates.

------
ericb
I would love to be programming in a retirement home, should that day come.

------
krob
About 2 years ago, I used to think, old people are scary because they bring in
bad habits. But today, I think that older people with modern tech skills are
an amazing asset because of their experience. Working for years as a
programmer in many different languages means they have a huge arsenal of
knowledge in solving problems and using techniques most junior & even mid-
level software/engineers have not been exposed to. The older they are, usually
their solutions are more efficient, maybe more or less elegant, but they can
solve problems in many different platforms.

Today, If i wanted to hire someone, as long as I saw that they are still
working with modern languages & libraries, not constantly re-inventing the
wheel, I would be extremely interested in their abilities, especially to help
architect solutions.

------
khitchdee
As an engineer you are trained to optimize. As you get older you optimize for
the fact that you're more experienced and hence a better decision maker and
you have less patience for routine everyday tasks. You choose to take on work
that differentiates you based on your experience. You ability to analyze a
problem never goes away. You may take a little longer than before, but that
doesn't make a difference and if push came to shove, you could always perk up
for the moment. So you're like a processor that can go turbo at 1.8GHz but
most of the time you're running steady at 400MHz and your ability to execute
multiple instructions per clock is much greater than your younger peers. So
you're low power, long battery life and can speed up for short bursts of time.

------
mey
Not sure I will ever give up working on ideas and being creative. As such I
think I will always be programming as long as I can (mentally able to,
hopefully well into my 80s). Question really comes down to what and for who,
for me at least.

------
DannoHung
There are people I know who I would never hire at 50 because what they like to
focus on is what's trendy and what their friends are talking about and what's
getting posted here at Hacker News and places like it.

There are people I know who I would hire no matter their age or personal
hygiene because they have such an incredible clarity of understanding of
computation or software architecture that I am constantly in awe.

I hope that by the time I'm 50, I'm leaning more towards being like that
second set of people, regardless of whether it gets me a job or not.

------
sergiotapia
Either I'm finally losing my sanity, or I've actually seen this posted here
before. Same title an all.

Then follow up was "Yeah really I want to program at 50."

Am I going crazy HN?

~~~
plinkplonk
(author of the blog post here [1]). If you read the post (vs just the headline
;) ), you'll see that I link to the original post _and_ discussion that
happened on HN.

I wrote this post partly because I thought the HN discussion missed the main
point of the original post and veered into a discussion of ageism etc (which
is fine, but I thought the central theme of James Hague's original post was
worth pondering). I even commented on the original HP discussion, where you
can see the seed ideas of this post.

I've been thinking about the issue from the time I saw the original post (and
discussion on HN).

I often write to clarify my ideas. This post is just me thinking out loud,
late at night. Not sure why it was posted on HN.

[1] I didn't submit the post here btw. Honestly, and with no false modesty, I
am not sure it is good enough for HN.

------
jebblue
There was another article on HN recently along the same lines I think. Do
something else? I thought becoming a screenwriter would be cool. I've got some
great titles written down. Still I write the code for my sites sometimes help
friends and yes still write code for the man because it's more fun than
dealing with IRS rules for running my own business (I tried that already).

------
chunsaker
One reason to stay coding - even if you're not on the cutting edge - so you
can teach your kids, or even grandkids. My dad was 40 or 41 when he gave me
"BASIC for Kids" - I moved on to html and java, and if he had made it to 50,
it would have been super fun to hack through a weekend with him. I hope I can
do that with my daughters and granddaughters!

------
tambourine_man
What will the tech scenario be when I'm 50? I can't even imagine. I always
wanted to program because I was in love with the tools I used.

If future things suck, if it's mostly glue copy/paste code, large opaque
frameworks, no tinkering or puzzles, then I'm out.

But hopefully there will always be a place for the hacker type, even if gets
more and more of a niche.

------
dccoolgai
50? I will be coding when I'm 90...if people don't code anymore I'll be doing
whatever you do to make things.

------
ianstallings
I love programming so yes I do hope I still am. For a living? I think I can
hang. I'm 37 now so that's 13 more years. I'm still in after 18 years so I
think I'll be good to go. I really do love it. It can be so painful sometimes
but the results are worth it.

------
logn
Yes, I want to be. I have this nagging fear I'll be replaced by a code-writing
robot though. Maybe that's the next generation's worry though. I guess by then
they'll be meta-programmers.

------
orangethirty
Yes. I just expect to be able to program more by coding less. Plus the 3D
printing revolution that will take place soon is going to make programming
much more interesting.

------
keefe
it was the best game when I found the BASIC cartridge for my atari and even
though I've played enough go to know what that means, programming is still the
best game and I think it still will be in 20 years

------
paul_f
What a stupid question. Do you want to X at (some far distant date in the
future)?

Do you love what you do? Then you will do it your entire life.

Do you hate it? Then hell no. Next question!

------
Codhisattva
tl;dr programming (almost 50 too)

