23 ms·
Do You Really Want to be Doing this When You're 50?
- lukeholder 14y agoI just turned 29 and this depressed me.
- peterhost 14y agoYou'll see, turning 40 is even worse ;)
- tonyedgecombe 14y agoI'm nearly fifty and have found things get easier as you age. The things I used to worry about in my twenties just aren't on my radar now.
- Craigangus 14y agoYes, maybe I do! Just need to make the sure you end up being an ageing Rockstar programmer rather than retired Lounge singer
- jgrahamc 14y agoIn short, yes, and I'm in my 40s. I actually returned to programming after years managing programmers in part because I was unhappy. I realized that the further I got from the machine and _making_ the less happy I was. So, if you asked me whether I wanted to be 'managing' at 50, I'd say "Hell, no!". The enjoyment of making things work, learning and shipping it real. I hope I'm still able to feel those things at 80. I never got the same satisfaction and enjoyment from managing people and processes.
- arethuza 14y agoSimilar experience here - the more "managerial" my job was the more miserable I became. So I now have a reasonably high level job with a lot of variety but I usually spend a couple of days a week developing stuff - altogether not a bad combination for me. I do manage some people but as they are all smarter than me and very self directed it is actually a pleasure to do. [NB By far the most stressful job I had was as co-founder and CTO of a VC funded startup]
- bambax 14y agoI don't think this is about "programming" versus "managing". It's about "actual problem solving, and building things" (which is good and enjoyable at any age) versus "navigating oceans of constantly changing APIs" and getting bitten by minuscule oversights in enormous volumes of documentation, which requires a lot of stamina, and maybe optimism, that you have less of as you get older. I hate arcane APIs with a passion. I love programming and building things. Always have, always will. I think one's tastes don't change much with age; what changes is your willingness to put up with things you don't like. Like a grumpy old uncle who says inappropriate things at family reunions, at some point in your life you just stop pretending.
- anklos 14y agoI often see aged programmers are more tolerant with things they dont like,as they know most jobs are just boring from their years of working experience. Lots of them think job is just for paying the bill.
- AndrewDucker 14y agoSame here. I am interested in some process stuff, because processes can be "solved" in a similar way to computer problems. But I actively enjoy this kind of thing, and I hope to carry on doing so.
- Toenex 14y agoSimilar here, in my 40's and I must admit I also struggle with the management divide. However, I'm lucky that I work in a small company so I get to do a variety of work. I also have a lot of domain knowledge (medical imaging) which means I need to be engaged at a technical level. However, even when I'm working on strategic planning or market analysis I also manage to find a "reason" to write some little program to process data rather than just put it in Excel or hack up script to create a Gantt chart rather than use MS Project. I guess you can take the boy out of coding, but you can't take the coding out of the boy!
- krig 14y ago32 here, and so far programming is the best thing I've ever done in life. The stress I've experienced has all emerged from my own expectations of myself, from wanting to excel. My mother is in her late fifties and recently returned to working in a children's daycare after being a manager for many years because working with children was what she was passionate about, and she realised she had advanced away from what made her want to go to work. I feel the same way about moving away from programming - what I enjoy is digging my hands deep into the rich code, smelling the mix of coffee and ozone, feeling the flourescent glare burn into my retinas - THAT is what makes life worth living!
- bradshaw1965 14y agoWhat is it with fluorescent light and programmers? I left a gig specifically because of a mid-afternoon fluorescent hum that was soul sucking. Decent light and a good ergonomic work environment are so important.
- krig 14y agoIn this case I was primarily thinking of flourescent light from an LCD screen (would have mentioned CRTs, but that would have dated me a bit TOO much), but I agree completely about the life-killing quality of shitty overhead flourescent lamps. Sadly, the office I'm in right now is afflicted, although it mainly means that the ceiling lamps stay turned off and floor lamps are used instead.
- ryth 14y agoI'm with you, I'm rounding 40 myself, and was not happy for the brief couple years of management. When filling out a 'secret question' for some site, it ask what your ideal job would be. I didn't even blink, it was: developer. Do I want to be doing this when I'm 50, hells yea. If I had trillions of dollars, I would still code. It's who I am, it's what makes me happy. If you don't think you'll like development at 50, then you may have picked the wrong career.
- blisper 14y agoIts nice to know the grass is greener on my side of the fence..
- TwoBit 14y agoI love programming professionally at nearly 50. I doubt that is going to change. And I'm in the game industry.
- donpark 14y agoFYI, I am 50 and loving it still. More relevant question IMO is: are you doing what you enjoy doing?
- ryanlchan 14y agoA bit of a false dichotomy here. Don't do the work because it's expected of you, because it's sexy, or because it's "interesting". Don't do it because your friends are impressed, because the pay's good, or because your friends are there. Do it because it enables you to do what you love.
- 10098 14y agoWhat if suddenly, by the time you're 50, you find that you no longer love it, but it's the only thing you can do to put food on the table?
- snogglethorpe 14y agoSure, but there's nothing particularly programming-specific about that situation. It can happen with any profession, and I can't see that it's any more likely for programmers. [Personal note: I'm my late 40s, and have been a professional programmer my entire working life. I still love it, and can't think of anything else I'd rather do.]
- praptak 14y agoLate 30s represent, yo. The author of the article mentions high stress. My experience differs. In my case the stress sort of waned by itself. I think I moved a bit towards Wally character from the Dilbert series. I don't overcommit anymore and I certainly gained resistance to "aggressive schedules" and visions of doom and gloom tied to deadline skips. So I stress out less and less and I believe it comes naturally with age.
- muyuu 14y agoI think the crux of the matter is your job security and your financial stability (the economy where you live, etc). If you can afford to delay projects as needed without risking your position then of course that takes a lot of pressure off you and things are more enjoyable. In an ideal world, I'd be set financially by the time I'm 50 and I would work in my own stuff exclusively or almost exclusively.
- Surio 14y ago>> I think the crux of the matter is your job security and your financial stability (the economy where you live, etc). You nailed it. +1 :) My own comment further down below was exactly on similar lines.
- DennisP 14y agoIn my experience it's not so much about missing deadlines with impunity, as negotiating up front what you're willing to commit to delivering. A lot of times you can put off some "nice to have" features without anyone complaining, as long as the core functionality is ready on time. (That may be what you meant by "delaying.") The other part is renegotiating timelines when they make changes to stuff you've already built. Financial security helps but the real key is being skilled enough to accomplish a lot without breaking a sweat. As much as possible, build reusable components with nice APIs, even if it means putting in some extra time up front. Always think about how to make your own job easier down the road, and after a while you'll have an easy job.
- lifeisstillgood 14y agoThe frustrations of this are less than frustrations of almost every other job I know. I hope to mitigate the frustrations by simplicity - the idea of a few great tools I know inside and out
- lifebeyondfife 14y agoThe point is you have to be prepared to re-select the 'few great tools' you know every decade or so and invest time getting to know them inside out. That can get very tiring as you get older.
- danso 14y agoHow is that different from any other job? Listen even to people in traditionally creative/uplifting jobs...including artists and teachers. It's depressing to hear how much of their time is struggling with data entry/Excel/why-wont-the-font-stay-the-same-size issues...time (and energy and angst) that is probably substantial over their career
- lifebeyondfife 14y agoInteresting. I remember an industry teacher once saying to me that "You'll probably never put '10 years experience in Technology X' on a CV." because by the time it's been around for that long it will be pretty much obsolete. The fundamentals of computer science won't change (big-O, synchronised distributed systems, logic etc.) so I suppose it will just come down to re-learning the modern day tech. But that's the same for lawyers (fundamental laws / processes unchanged, need to be up-to-date on modern rulings and changes), doctors (fundamental human physiology unchanged, need to be up-to-date on modern techniques and drugs) sales assistants (knowing how to greet and assist a member of the public never changes, need to know how to use the latest cash register / Square-up card reader terminal). I suppose you can't escape it in another industry. I still stand by my point that your skillset as you get older will make you more appropriate for other duties.
- 14y ago
- pre 14y agoYes, course I still wanna be coding when I'm fifty in a decade's time. If I was rich enough to not need a job I'd be hacking on my homepage. I just hope my wrists hold out that long.
- tmerr 14y agoI enjoy it now and that's the best prediction of the future I could hope for. It would be silly to worry about something so unpredictable!
- plinkplonk 14y agoThe interesting idea in the post(beyond the programming vs age bit, which is sure to trigger some rage,) is this "To me, there's an innate frustration in programming. It doesn't stem from having to work out the solutions to difficult problems. That takes careful thought, but it's the same kind of thought a novelist uses to organize a story or to write dialog that rings true. That kind of problem-solving is satisfying, even fun. But that, unfortunately, is not what most programming is about. It's about trying to come up with a working solution in a problem domain that you don't fully understand and don't have time to understand." If this is a problem that affects you don't do 'most programming'. Nothing really stops a developer from learning a problem domain with economic potential. Sure you may have to go to school or read some books or get some experience, but so what? The idea that a programmer always has to work in a half understood domain transforming some one else's ideas into code is just that, an idea. It is a dominant idea, but nothing really stops anyone from mastering an interesting domain in addition to programming. Knowing how to program is like knowing how to write (in a largely illiterate society, so your knowledge has economic value). Or like knowing how to cast spells. Yes, if you spend all your life scribing other people's thoughts or casting spells to manifest other people's wishes, it could get boring. Could, but doesn't have to be. You don't have to be a scribe just because you know how to write.
- gonzo 14y agoI am 50. I had a large portion of the 'middle' of my career in management, including a couple CTO/VP Eng positions, with the traditional increasing stress. So I moved to Hawaii for nearly a decade, got rid of the stress, rediscovered programming, and I'm happy again.
- bostonvaulter2 14y agoCool, so are you in Hawaii right now? If so, which island? If you're on Oahu I might've already met you.
- kamaal 14y agoI think the reason you are even able(read afford) to move to Hawaii is because you went through a couple of CTO/VP Eng positions, with traditional increasing stress.
- k-mcgrady 14y agoI think the point is that if he kept programming (i.e. doing what he enjoyed) rather than taking the CTO/VP positions he might not have needed a break in Hawaii to de-stress.
- woodhull 14y agoAny American citizen can move to Hawaii anytime they like. It's not terribly hard to do, especially with a high demand skill that lets you find work anywhere, globally, like being a software engineer.
- saraid216 14y agoSome people actually seem to be missing a significant part of his point. He's not talking about "Do you want to be coding at all when you're 50?" He's talking about the dependency management that goes into building something large on the shoulders of others. That's a lot different from "hacking on your homepage" or throwing together a quick Ruby script utility to do some scraping.
- Surio 14y agoWell put!
- sentinel 14y agoYes. Maybe not exactly the same thing (because as the author mentions, technology is an ever-changing field), but it's very interesting to see and adapt to that change as it is happening. Especially now when the tech sector is at the core of everything around us.
- EwanToo 14y agoYes, because I can't guess what the world will be like in 20 years time, but I am 100% certain that I'll want to be working with the insanely powerful computers that we have then.
- laichzeit0 14y agoNo. I'd like to be retired before 50. I'll probably still code when I retire, but it will be in something like Mathematica or R while I sit around learning subjects that interest me.
- henrik_w 14y agoAbsolutely! I'm 46, I have been programming professionally for 21 years, and I still love it. I think we're lucky to be in such a creative and interesting profession where you get to learn lots (and it pays comparatively well too). I've written about the joy of programming in "Why I Love Coding" http://henrikwarne.com/2012/06/02/why-i-love-coding/ http://henrikwarne.com/2012/06/02/why-i-love-coding/
- geofft 14y agoI'm excited to see all the other folks in this thread who say they're 50 and they're programming! I've been worried that because everyone _else_ thinks "large scale, high stress programming" -- i.e., the kind of programming that's _fun_ -- is a young man's (or woman's) game, I won't be able to have a job like the one I have when I'm 50, and I might need to find some other career I enjoy in order to continue having a job I enjoy when I'm 50. I'm not looking for advancement, since advancement would be out of programming and into management, nor a pay raise, since programmer salaries are already plenty high. I just want to be doing exactly what I'm now doing in thirty years.
- thedealmaker 14y agoI think it is very important to understand the "real" differences in what it means to program vs. manage. In programming in most cases you are working on projects. Once you deliver the code that project is essentially over (minus support and bug fixing of course). In a management role many of the key activities never really conclude. For example, resource allocation overall and amongst various projects, is something depending on circumstance, you may have to revisit on a weekly or monthly basis. So you don't get the satisfaction of "delivering" anymore and items stay in your inbox much longer. This for me is the key difference.
- pyrotechnick 14y agoYes I do but we'll all be writing genomes by then.
- lifebeyondfife 14y agoI know and have worked with coders in their 50s, even 60s. They were very much what I'd call 9-to-5 coders though. They were never given big, important or new projects but as a consequence were never expected to burn the midnight oil. The main thing that looks unappealing to me about being a hacker decades from now is the constant cycle of learning. I'm on probably my 3rd generation upheaval. I've worked on a daily basis in a team of programmers with C, C++, C#, Java and Python. Getting familiar enough with those languages to do more than just tinker took a lot of effort - even for the languages that are pretty similar e.g. C# and Java. I'm now looking to do more front to back website coding (away from pure desktop/server stuff) so I'm trying a few things out before choosing on the main stack of technologies I need to master. In my early thirties I still have the enthusiasm to do this but I find it hard to picture doing the same ten years from now with the same smile on my face.
- Surio 14y agoI agree with the thrust of everything you mentioned. Just wanted to chime in. >>They were never given big, important or new projects<< Basically you have answered the OP's main angst. There are names for this kind of thing, you know ("Ageism"?). Also, because of these kinds of actions, these people are simply losing their 'relevance' within the context of the organisation's overall strategic direction. Now how bad do you think it is for one's morale and self-actualisation? In a way, damned if you do, damned if you don't, isn' it? Also, in some orgs, the "seniors" are "expected to understand the architecture" (read: more arcana and API call memorisations) so they can "guide"/"mentor" the "juniors" and "participate" in "propelling" the organisation, blah blah. And this invariably leads to what the OP's saying >>It's about skimming great oceans of APIs that you could spend years studying and learning, but the market will have moved on by then and that's no fun anyway<<
- lincolnq 14y agoOh, interesting. I love the learning cycle. If I wasn't constantly learning new tools and tech then I would get really frustrated with my job.
- Surio 14y ago
- dschiptsov 14y agoThat's solved long ago. There are some underlying concepts, foundation ideas which didn't change much since 1960-70-80s, the time when they have been discovered, studied and defined. Yes, people are piling up tons of crap in order to get money, and this is how we got a millions lines of meaningless Java code which no one could understand or maintain, which seems to work well only because most of unit-tests passed and hardware is so cheap. I don't even want to mention current Javascript madness. At the same time, however, almost nothing were added to the ideas expressed by John McCarthy, and followers. Yes. They are stuffing tons of useless crap into new Scheme standard, as they did with Common Lisp, but, the underlying ideas and the principles of "less is more" and "good enough" remain unshaken, like mountains in Nepal.) In a very rare occasions we still can witness some miracles. For example, the source code of this site - the engine and the language translator in which it written is less than one megabyte. (just imagine what amount of traffic it handles and how much money already created). There are also Plan9, nginx and few other wonders. So, in ones 50s one, perhaps, should enjoy knowing and applying these principles and ideas and produce ones own small wonders. Or teach others, as enlightened people like Gerald Jay Sussman or Brian Harvey do.
- eli_gottlieb 14y agoThat's how I feel. I don't want to be a programmer when I'm 50, or even, preferably, when I'm 30. Trying to run to the top of a dune made of quicksand just doesn't seem like a good career move. (Hell, every few months I find something new to feel obsolete about, usually to do with the fact that most programming nowadays seems to be web-dev and I'm just not into web-dev.) On the other hand, I'd love to keep being a computer scientist until.... I don't even know what age. Sure, eventually I'll have a family and other priorities to take care of, but the wonderful thing about the scientific frontier is that it doesn't actually move that quickly. In science, ideas have to actually be tested and percolate through for a while before they become something ever single practitioner has to know.
- wumpushunter 14y agoWould you mind sharing the the "few other wonders"? I've been able to pull many programming lessons from the other activity I enjoy, woodworking. When I first started, I was overwhelmed by the sheer number of items in catalogs and stores. I didn't know where to begin! And then I discovered Japanese woodworking, and traditional woodworking, and people like James Krenov and Roy Underhill. It is impressive what people have built with a small set of simple, sharp tools. I love seeing these gems, regardless of the domain!
- drstrangevibes 14y agogotta do it for the love man!
- bravoyankee 14y agoIt's about skimming great oceans of APIs that you could spend years studying and learning, but the market will have moved on by then and that's no fun anyway, so you cut and paste from examples and manage to get by without a full picture of the architecture supporting your app. Well stated. Man, do I feel like that. But I think this is a universal problem now. Information is freely available, and there's so much of it. An endless buffet, and it doesn't matter what field you get in to.
- lifebeyondfife 14y agoIt's not so much the field but rather your role within it. Someone with many years experience as a programmer working within a specific industry might have the experience necessary to make sound, informed technology decisions. Not saying that would be an easy job or not stressful but it's a better use of that persons skills and experience.
- jacquesm 14y agoHell yes! There are many different kinds of programming, some are fun and some are not. If you really want to be doing this when you're 50 make sure you get good enough that you can pick the projects that are fun. If by the time you are 50 and you've been doing this for 3 decades you are still gluing api's that's not the fault of 'programming', that's a direct result of choices made earlier. And one more thing: on the scale of things that you could be doing, look at your parents, grandparents and their grandparents and what they were doing when they were 50. Suddenly that api gluing doesn't look so bad at all.
- Surio 14y ago@Jacquesm, I agree with your FU money concept and I am actively working on that. I think this comment is a byproduct (side-effect?! (-;) of your having achieved FI. But what you mentioned here is what I would consider "Let them eat cake instead" advice. :) Not well thought out. Nostalgia is a very powerful emotion, and besides historical perspectives are based on whatever set of lenses you choose to wear. Actually, our grandparents (even parents) had more time in their lives, more variety in their lives that was completely unrelated to their 9-5 routines, their professional lives were (mostly) on autopilot, so they had more free time to pursue all kinds of hobbies and tinkering, while still working on a daily job! So, yes I am looking at grandparents too, but I chose to wear different lenses.
- danso 14y agoI want to be programming, but in the line of non-professional software development, whether it's making open-source tools or to advance the processes of a cause/organization/business that I support, on my own terms. I've been lucky that I haven't had to go into a purely software dev job at a company...
- kamaal 14y agoNo, Because I seriously would like to see myself retired by 40. Not even 50. Would I like to code in my spare time? Yes! But I'm dead sure and certain the nature of programming is likely to have changed so drastically in so many years I might find myself a losing horse in such a race. Not that I cannot compete,but after looking at my father I can say for certain priorities in life at 50 are very different than what they are 25. Solving problems is something that I would love to do even after retirement. But solving problems doesn't always mean programming. I love programming, but I just like money a little more!
- Surio 14y ago+1 Good to see I am not alone with views like these. I agree with you. It is also about where you are doing "programming" too ;-) See my comments elsewhere.
- 6ren 14y ago> ... a problem domain you don't fully understand and don't have time to understand. One resolution is to create products that address problems. Then, you can justify time in understanding and improving, because it's amortised over many users. Of course there's still pressures, and technology still moves, but it's not cut and paste and pray.
- cmdkeen 14y agoOr go and work in that industry. I work in finance and the office has plenty of older programmers who have been trained in the theory of what they're working on. Being a good software engineer still puts you in a large group. Being a good software engineer with good domain specific knowledge instantly puts you in a much smaller group. It can also be much more satisfying work. And an awful lot more secure (depending on the firm) compared to starting out on your own. Trying to be a rockstar competing on your coding merits alone is going to be damn hard to keep going for 30+ years.
- mikecane 14y agoWhen you reach your 50s, you have enough experience to see what is real bullshit and what isn't. He is basically talking about being a hamster spinning on a wheel made of someone else's bullshit. You are old enough to see that many things shouldn't be the way they are and you get tired of having to fight basically the same battle again and again with the same enemy that is just wearing a new uniform (API). Hm, maybe the solution is to have people in their 50s design APIs, so they can make sure the bullshit doesn't get in? BTW, I'm not a coder but I Follow several on Twitter and too often see their frustrations with bizarre APIs and things not working as documented -- and these guys are young!
- Swizec 14y agoMan, I hope I still get to program when I'm 50. This stuff is fun! That said, I sure hope it's not my day job by then. Programming is much more fun when you're just doing it for yourself than when you're solving other people's problems to extract money. Although even those projects can be made fun by making a valid business case about cool things to clients.
- dragondilesh 14y agoHell yes! Im only 20 and if I can program/code/solve problems for the rest of my life, I know i'll be content until I die.
- DanielBMarkham 14y agoI love programming and still consider myself a programmer first, although I do a lot of other things too. If I wanted to rag on programming, I'd point out how many dysfunctional programming workplaces we have, or how our tools are always 100 times more complex than they need to be, or how setting up and managing the programming environment can take the joy right out of actually doing the work. (I could go on at length here) But overall it's a great place to be. We're the Michelangelos of the great age of machine intelligence which is yet to come. We're sketching out how it's all going to look. We're at the forefront of solving incredible problems and creating magical devices. A guy told me something back in my 20s when I was just getting started that rings true today: technology development is the one area where you can create your own reality. Not only in terms of a virtual reality, but in terms of how you want your work day to go, how you want to interact with your peers, how you get compensated, how you spend your free time. It's all up to you. This is completely unlike many other professions such as doctors where everything is tightly regimented. I worry that as the job of programming matures, we are losing track of that fundamental insight. One of the reasons I like Agile and Scrum is, when done correctly, it liberates the teams and takes them back to the way programming should be. It is rarely done correctly.
- pirateking 14y agoCreating your own reality is at odds with correctness.
- TimGebhardt 14y agoGreat, now I've got the Mythbusters intro running in my head like an earworm... I reject your reality and substitute my own.
- kot-behemoth 14y ago> I worry that as the job of programming matures, we are losing track of that fundamental insight. Reminds me of the intro to SICP: “I think that it’s extraordinarily important that we in computer science keep fun in computing. When it started out, it was an awful lot of fun. Of course, the paying customers got shafted every now and then, and after a while we began to take their complaints seriously. We began to feel as if we really were responsible for the successful, error-free perfect use of these machines. I don’t think we are. I think we’re responsible for stretching them, setting them off in new directions and keeping fun in the house. I hope the field of computer science never loses its sense of fun. Above all, I hope we don’t become missionaries. Don’t feel as if you’re Bible salesmen. The world has too many of those already. What you know about computing other people will learn. Don’t feel as if the key to successful computing is only in your hands. What’s in your hands, I think and hope, is intelligence: the ability to see the machine as more than when you were first led up to it, that you can make it more.” — Alan J. Perlis (April 1, 1922 – February 7, 1990)
- ibisum 14y agoI will code until I'm dead. No harm in that, right?
- lazyjones 14y agoFor much of this frustration I blame the modern practice of letting some committee design a protocol or other standards and then force that down the throats of programmers. This leads to bloated designs and deficient implementations and documentation and last, but not least, far too many revisions and alternatives. Back in the day, protocols (tools, languages, ...) were designed by people who thought very hard about the implementation, the required resources and the programmers whom these were inflicted upon. In contrast, entities like the W3C display complete ignorance for the implementation details (look how they've failed to provide even a half-assed implementation of a browser as proof-of-concept for their "designed by committee" standards). Whatever builds on top of such lackluster work is doomed and will frustrate programmers endlessly ...
- colomon 14y agoI don't know squat about your specific examples, but I couldn't agree more with the general principle. In my sub-field, the obvious example is the ISO-designed STEP file format, which several times longer than the older IGES standard (exact count is hard to get because the STEP standard is split up into dozens of books, not all necessarily relevant) yet is drastically less specific about how you actually put together a meaningful file. For instance, the STEP AP203 standards document is 500+ pages long. (That's the old edition, I don't have a printed copy of the second edition handy.) But those pages don't tell you how to use the hundreds of classes they define to actually create a meaningful file. For that you need the supplemental "recommended practices" document (http://www.steptools.com/support/stdev_docs/express/ap203/recprac203v8.pdf http://www.steptools.com/support/stdev_docs/express/ap203/re...), which has been marked "preliminary" for the last 14 years and is itself not particularly clear. (On the bright side, at least it's free!) Of course, that only applies to one of the many different STEP application protocols, and while I did find a reference to an AP214 (which I also need to support) recommended practices document, the link to it was dead.
- bryanwb 14y agoI really started programming at 30. Prior to that I spend 5 years managing medium-sized groups of IT staff (telephone, wan/lan,satellite). Managing the IT groups was a billion times more stressful. Programming is so much more fun and rewarding.
- GnarfGnarf 14y agoI'm 63, been programming since my student days in 1965. Programming is one of the greatest jobs in the World. I'd rather program than play golf. All my life I've been incredulous that they actually pay me to do this. (I'm not sedentary, I walk 3 km/day, 8 on week-ends).
- nathan_f77 14y agoI'm 23, so I have no idea, but I'm pretty sure that I will still love programming as much as I do now. I started as a kid, so it's a big part of me. However, a lot can change in 27 years. Programming is a huge passion of mine, but music and charity work can also steal all of my focus if I let them. I'm a Ruby on Rails specialist at the moment, and I absolutely love the framework and community. GitHub and rubygems are amazing. Google and Stack Overflow are like all-knowing genies. I'll go out on a limb and say that right now is the best time in history to be a developer, and tomorrow will be even better.
- noonespecial 14y ago30's here. I'm actually calling "still doing this when I'm 50" my best case scenario. It will mean the joy I take in making was able to outrun the creeping cynicism that seems to catch up with far too many people as they get older. It's about getting derailed by hairline fractures in otherwise reliable tools, and apparently being the first person to discover... I actually live for these moments. When I google the error, in quotes, and get 0 responses. Its a total rush to know that I'm the first one there. Its even better when I figure out a decent fix and then light out across the forums to share my new-found knowledge.
- edw519 14y ago57, programming for 33 years with hardly a day off, and having more fun than ever. My motivation? It's not about the technology, the tools, the apps, the business, the customers, or even the money, although any of those can provide plenty of motivation. And believe it or not, it's not even about the happy dance feeling I get when something I built works for the first time. It's about the achievements of those who use what I built. Hopefully that'll keep my busy for another 33 years.
- daliusd 14y agoSo it is about achievements of your paying customers using your technology business's apps you wrote using tools at your hand. Simply put you are happy that you have created something useful to others or there is something more?
- 127001brewer 14y agoMy father worked with his hands for his entire working life; at the time, he tells me, he worked on the U.S. Coast Guard Eagle more than anyone else (such as replacing the entire decking, etc). It's something that he's extremely proud of and something he can actually show his grandchildren. On the other hand, I build things that are, for the most part, abstract and virtual. I enjoy what I do because it allows me to be creative using technologies and tools that I enjoy working with. (And I really enjoy building entire applications from scratch, so much so that I will be creating businesses to really scratch my itches.) I'm proud that an application that I built half a decade ago is still being used. But, for the most part, most of my work has a limited life-span. Is that so bad?
- IanDrake 14y agoI had a poster of that ship on my wall for about 10 years. It's beautiful. Your dad should be very proud.
- ken 14y agoI think that the example of a military sailing vessel (!) shows that almost everything people build with their hands has a limited life-span, too. In many cases the lifespan is longer, but in other cases it's shorter. My malloc() is older than my car, even though they both still get regularly used.
- gexla 14y agoTaken to extremes - if it's not worth doing at 20 then it's not worth doing at 50. If you feel that you don't want to be doing this at 50 then you should probably get out as soon as possible. He also mentions something to the effect of not being able to take the time to completely understand everything. But the problem is, it doesn't matter if you are being paid or not. Your lifetime will always be a constraint. You will never completely understand everything you are working with.
- lrobb 14y agoWould you ask that of a lawyer or an accountant.... Or even a civil engineer?
- b4c0n 14y agoReading the mostly positive replies of "Yes, I definitely want to keep doing this well past 50!" gives me manly tears of happiness.
- Surio 14y agoRemember the mantra - "location, location..", and also context. In other words, where you are working (geolocation of company, and therefore the strategic operations concentrated in that place, company size, technology, etc.), what you do on a daily basis, whether you are doing things like "skimming great oceans of APIs, but the market will have moved" day in and day out. (There's a lot of gems in that article, BTW) Add to my above para, this other gem of an observation: <blockquote> If you're fresh out of school, there are free Starbucks lattes down the hall, and all your friends are still at the office at 2 AM, too...well, that works. But then you have to do it again. And again. It's always a last second skid at 120 miles per hour with brakes smoking and tires shredding that makes all the difference between success and failure, but you pulled off another miracle and survived to do it again. </blockquote> That article really resonated with me. And, no I can't see myself doing it at 50 :-) EDIT: One more thing to add with regards to context of operations, rewards are also skewed in favour of management rather than "engineers", so at some point mortgage, loans, education and medical expenses will overshadow 'fun'.
- henrik_w 14y agoFrom codinghorror, on the subject of working as a programmer "Programming: Love It or Leave It" http://www.codinghorror.com/blog/2008/12/programming-love-it-or-leave-it.html http://www.codinghorror.com/blog/2008/12/programming-love-it...
- daven11 14y ago50 next month, and yes :-), and do cutting edge development still. I'm worried I wont be able to do it when I'm 70
- michaelochurch 14y agoI enjoy programming and would like to be doing it at 50, but with regard to the software industry itself... not in its current state. If you want to be able to survive more than 10 years in the software industry, you need to get manager-level clout and full autonomy over your work. That's non-negotiable. This industry destroys you if you don't have those things. The terrifying thing about the software industry is that if you don't continue to get good work, you decline pretty quickly. Also, I honestly think 90% of what makes some engineers great and most not (once filtering for natural talent has taken place) is past experience: you need a continual stream of high-quality work to become and remain decent at this job, and the good stuff is rare. The actual work of programming can be a lot better (more interesting, more rewarding) than anything that managers do. The hard part is figuring out a way to be a full-time engineer but retain manager-level clout. Many engineers think that actually becoming managers will give them what they need to enjoy engineering again, but the problem is that this strategy doesn't work. If you're a manager and your reports figure out that you're taking all the interesting work for yourself and throwing them the scraps, they'll get pissed off and either underperform or leave.
- joshyeager 14y agoThere is another option: find a really good manager who is able and willing to give you what you need, make sure they understand your value, and stay with them. I don't really know how to do that, I just got lucky. I moved into management myself about five years ago (still working for the same guy), and I'm trying to be the same kind of manager for the people who work for me.
- michaelochurch 14y agoI like that idea as well, but the problem is that your manager will, over the long term, change. Most people have no insurance against some person they've never met being hired above them. You need enough independent credibility to protect yourself against that. You have 5 years of managerial experience, so you probably have enough work experience that any job move would be a likely promotion, so your company has incentives not to treat you badly. I used to think the software industry was about programming: writing great code to solve hard problems. It's not. It's about credibility and technical risk. The software industry is 90% industry and only 10% software. Most of your time will be spent convincing people to allow you to do useful stuff, not actually doing useful stuff. The ironic thing is that, as software jobs increasingly slide toward looking more like widget-making and less like research, programmers become a lot less effective. Valve established that open allocation works. (http://michaelochurch.wordpress.com/2012/09/03/tech-companies-open-allocation-is-your-only-real-option/ http://michaelochurch.wordpress.com/2012/09/03/tech-companie...) Every other software shop has proven that the alternative (still more popular) doesn't. The Death of R&D, I think, will be looked upon as the "conscious" decision (of course, large groups such as nations do nothing "consciously"; it's a historian's metaphor) of the United States to go from a world leader to third-rate in a few decades.
- anil_mamede 14y agoIf you look for achievement in programming field you have to plan it for a long term in specific area. Unfortunately many programmers turn to be jack of all trades, working in many things at the same time and without a long term purpose.
- adamc 14y agoI'm fifty, and I still enjoy programming, but my interest in incidental complexity -- the details of APIs, say -- isn't what it once was. And the likelihood that I will put in a ton of overtime to meet an arbitrary schedule isn't what it once was either. I'm less interested in the technology than I once was, and more interested in how people are using it to solve problems.
- raganwald 14y agoIf you're young, be sure to read the responses here very carefully. There are lots of people like me who love what they do at fifty or beyond. Yay! But of course, this sample has survivor bias. How many people who left the profession in their forties are going to post on HN? How many people who are fifty and hate their jobs are going to post on HN? I love what I do and try to share that love. But my advice to you is this: Don't pay attention to how much we love our jobs at fifty, pay attention to how we got to be fifty without burning out.
- rapind 14y agoAre you seriously trying to give unsolicited advice to the young here? Have the years taught you nothing? ;)
- MattSayar 14y agoSo how did you get to fifty without burning out? The advice I've always seen is a mix of: have a healthy work/life balance, exercise, find satisfaction outside of work, enjoy people more than products, and make sure you actually like what you do and where you do it. Anything else?
- jackbravo 14y agosounds like you have all the right parts identified. Now its only a matter of doing it =P, best of lucks!
- blisper 14y agoIn my personal experience, resisting the urge/pressure to get into management (vs. staying in engineering). Management in a larger setup invariably involves having political skills of some sort.
- ww520 14y agoYou are right. The ones who stick around have done something right.
- jstrayer 14y agoI really want to be doing this when I'm 70(14 more years). And then I still want to be doing it, just part-time and probably for free.
- xyzzy123 14y agoYes. But not actually for technical reasons. I program to be a part of something, to participate in a vision or shared goal. I program because the experience of creating something is (currently) the major way that I have fun with people. If I'm working on a projects/products I care about I think I could easily do that for the rest of my life. At times, it's the enthusiasm of others which pushes me along, while I provide technical expertise / experience. Other times I will have a silly idea of the way the world should be, and I can use that to gather others around me and make their lives better. Programming at its best, for me, is vision enabling :) How could you ever grow out of that?
- talmir 14y agoI am at 29 and finally after years of wanting it I landed my first software developer job(Didnt have the uni degree needed, but now I do, hells yeah!). I know that I will be happy doing this until the day they pry the keyboard/neural-thought2ascii interface from my cold, dead hands/brain.
- nsxwolf 14y agoIt would be nice to have that kind of job security.
- unsigner 14y agoGame development in a fairly NIH-ish studio can be very close to the good scenario: very little API wrangling, very little red tape, the "client" (game designers and artists) are in the next room and generally reasonable. I'm not terrified by the idea of doing this 15 years from now, aka when I'm 50.
- deleted 14y ago[deleted]
- override 14y agoI love programming too, but I agree, high stress programming for other people is what you do early in your career not late.
- kabdib 14y agoI'm 51, and having a blast. I'm still learning. I'm an ACM member and read at least a paper a week from one of the journals. I keep trying to improve my skills. (A couple months ago I realized I hadn't done much work with trees in a few years, so I spent a week going through tree balancing algorithms from several books. It was fun). Hardest thing: Having to learn new stuff that isn't designed right. I'm going through a fair amount of that now. Having to move in with a large, not very well designed system and make serious additions to it is . . . irritating.
- akadien 14y agoI want to do exactly what I'm doing now in seven years. Like several stories, I drifted out of programming and into various management roles over the past few years. I'm super-fortunate to be out of Excel and Word and back into a command-line and VIM. As a side note, I work with a well-known researcher/developer in his 70's, and it's like working with Yoda. There is so much to learn from him.
- rapind 14y agoI think the key, just like any career, is to truly make an effort to reduce your cost of living (yes even with dependents, or what I like to call barnacles). This will help you get the stress under control and free you up to be a little pickier with the projects / products you work on and the people you work with. Still happily coding away @ 37 here.
- brooksbp 14y ago> But large scale, high stress coding? I may have to admit that's a young man's game. 2.5 yrs out of college. Code monkey. Really, really good at monkey programming. Used to get upset when people made claims that it can't or shouldn't be done. "Of course it can be done you lazy #$%*$%. You call yourself a software engineer??" Then I pull it off. A couple more people love me, a couple more hate me. I become the monkey programmer. I am the one who brings designs to life the quickest. That's the gist, and it's getting old. Requirements change. Social issues. It's like trying to drive a ferarri up switchbacks of a mountain. No wonder companies love hiring new grads. The largest benefit from this is: reading & writing a lot of code. There is no substitute for this. It has helped me identify design areas that I need experience with. It has also helped me reason about code more efficiently, which is a very useful skill when interacting with other programmers. Edit: And then I go home and read HN and /r/programming and play with other programming languages and build stupid little programs and read my books and try to figure out my next move...
- mgkimsal 14y ago"It's about trying to come up with a working solution in a problem domain that you don't fully understand and don't have time to understand." Hrm... it's like that for me, but it's not like that for others I know. Some people I know have worked in the same industry for several years and have a good grasp on the problem domains they address. That doesn't mean they know the solution to everything off the top of their head, but it does mean they'll likely have time to figure it out, as they're in that business for the long term, and have incentives to get it right vs 'fire and forget and move to the next project'. I'm in my 40s and have been programming, for 30 years. Initially as a hobby (obviously) but getting paid to do it, first part time, then full time, for about 20 years. I had this same conversation with an uncle last year - shouldn't I be doing something else (OK, not quite the same tone as the OP, but we had the discussion). I have skills that allow me to solve problems for people. Many people do as well, but with software, I do it with electrons, and can do it wherever and whenever I want. In contrast to many other types of work which dictate location, tools, timing, software work is incredibly flexible. But... more to the point, as more of the world continues to become software-based, the opportunities to offer my problem-solving skills to people increases at a rate few other industries/skills have enjoyed (or will continue to enjoy). Even if I switched focus to work in "company X" vs "company Y", my core ability will still be "problem solving with software" - I just don't see that changing for me over the next 20-30 years. The 'how' and 'who' may change, but probably not the 'what' so much.
- velebak 14y agoI've been doing software development for a total of 16 years, with a stint as an IT manager for 5 additional. Did some side work here and there to keep skills sharp, but I recently got back into full-time development after I realized I like creating more than I like maintaining. I'll be 42 in November, and my experience gives me a guided path to understanding and solving problems, independent of technology, language or API. I don't need to chew through espresso and lattes until 2am, because I've gotten smarter over time. I can identify patterns and problems faster than I did 20 years ago. I work more efficiently and don't need to take a scatter-shot, unfocused approach to work. I don't disagree that software is a continual source of frustration to develop, but I think that's because we expect at some point to be super-experts for any problem domain. Yes, tools and frameworks change. Sometimes they suck. Sometimes they don't. If you don't love learning new things and investing yourself in continually keeping up to date, then you doom yourself to being miserable in this profession at any age.
- andyl 14y agoI was a manager in the dot-com era, made good money then took a decade off to climb mountains and raise my kids. Now approaching 50, I've taken up programming and just loving it. Today's tools are incredible - I can do myself what used to take a whole team and literally millions of dollars. Ruby/Rails/Sinatra/Rspec/Postgres/Backbone/Coffeescript/Erlang/Elixir/Chef/etc/etc - we are blessed. Creating with my own hands and having a direct relationship with my customers is so much better than hassling with investors, attorneys, employees etc. I hope to do this the rest of my life.
- outside1234 14y ago40 year old here. The key to a long enjoyable career is making sure you really love 80% of the work you do in your role. You'll never enjoy 100% but if you find yourself only loving 20% of it then you need to examine what that 20% is and figure out how to make it at least 80%. I made a long (5 year) detour into management because "I was supposed to" and it took me 4.5 years to realize that I hated 80% of my job. That isn't to say management is "bad" but you need to understand what makes you tick and what doesn't and then find a role that matches that. Don't worry about the money - the money will find you if you love your job.
- btilly 14y agoLet's draw an important distinction. There is programming, writing code that helps computers do what people tell them to do. Then there is the experience of programming that this author seems to have, which involves a lot of long hours, and nights until 2 AM. It is rare for competent and experienced people to be tolerant of the toxic environment that was assumed for programming. Over time you learn that there are lots of professional programmers with reasonable lifestyles, and you'll want to become one of them. However programming itself, if it is enjoyable for you, is likely to remain enjoyable for a long, long time. (Mid-40s here. Didn't learn that I liked programming until around 30.)
- mark_l_watson 14y agoI am 61, started programming in high school in the mid-1960s, still really enjoy it. But, that is the issue: enjoyment. The author of the article is not enjoying himself (apparently) so time to try something else. I enjoy the tech and helping people. My only frustration with my work comes when occasionally projects, for whatever reason, don't work out well.
- nydev 14y agoI will still enjoy programming at 50 and will still want to it for money. But will the ageism in this industry permit that to happen? It feels like the tech culture must change to accept that there are good programmers who aren't in their 20s.
- ef4 14y agoNo matter what you do, you should absolutely be asking yourself "do I want to still be doing this in N years?". It isn't just a matter of trying to have a fulfilling life -- it's a matter of survival. People who don't look up once in a while and consider their larger place are the people who get steamrolled when a new technology kills their entire industry.
- happywolf 14y agoI have been programming for 10+ years professionally (not counting those 'Hello world' days in school), and I need to admit the OP hit the nail at its head. Yes, I still believe programming is fun, problem solving is fun, and solving a hardcore problem is fun. But putting all these in the context of a tight deadline, management who has no clue about technology, and changing requirements, I really am tired to pull the miracle off by working my ass off. A quick glance through the posts here reviews a lot of folks here have better luck and it is a good thing. To put things in perspective, I have been working in Asia Pac and now in China. Now I am in the business dev turf where a technical background is proven useful.
- agentultra 14y agoYes and I hope to continue programming well into my 60s and beyond if I will be so lucky. However I hope that by then I won't be working for a boss and stressing to meet deadlines. I hope that I will be conducting research and working with fellow hackers to seek out the next frontier of the future. While I think the present we live in now is full of wonders, I don't get a very gratifying sense that it's going to last. It seems more to me that we're finally able to apply the things we've spent enormous amounts of time and money learning over the last thirty years -- we're not out seeking the future so much as we're claiming a stake in the present.
- epo 14y agoPeople are being very selective in what they are responding to. The final words are "But large scale, high stress coding? I may have to admit that's a young man's game." High stress coding is what companies can get away with when they hire kids fresh out of college, i.e. young, stupid and inexperienced. And before people throw a hissy fit about being called 'stupid', look back at 10 years ago and tell me you weren't stupid with regard to what you think is important now. No one is saying you can't (or shouldn't) code in your 50s or beyond, but the older you get the more particular you get about what you work on and what your working conditions are.
- nprasanna87 14y agoAfter being inspired by a Team Lead in my office, 2 years into my career as a software engineer, I chose to focus all of my efforts onto Programming. The main reason it seemed attractive than any other option was that I liked the feeling of having found a solution to a seemingly hard puzzle or a challenge. The small victories. But of course now the reasons include the prospect of creating something of value for which I could get paid passively. Thanks to hacker news! And yes, I like it and don't see myself doing any other thing that programming!
- scrozier 14y ago54, programming for 34 years. Numerous adventures in entrepreneurship, one of them successful. Came back to programming in the last few years because it's the most satisfying work for me. Making stuff that amazes people and makes their lives better is totally rewarding for me. Nothing wrong with being a craftsman, using your intellect, and making others happy. In some ways, pursuing the elusive "big win" seems a little shallow by comparison.
- tremendo 14y agoFifty? Pfft, sure! I'm almost there, and yes, I want to continue… Now Sixty… I'll confess that my evil "plan" from many moons ago was to—by then—be able to balance this with my other loves, being outside and moving (not just my fingers). I suppose many professions suffer from the same disadvantage, but programming is a slow killer. Eyes, joints, all that clot-inducing sitting, disrupted cicardian-rhythms, too easy to get trapped in bubbles disconnected from reality, you need to be extra-vigilant and pro-active if you care at all about your health and those that love or at least put up with you.
- genbattle 14y agoI definitely feel this. I'm only 24, but already I can feel the effects of being in a chair for 8-16 hours a day. It's sad that it is happening so quickly, but it has really made me realize how much I need to break the cycle and start thinking about this now, rather than just deferring it till when I have time. Also I deeply feel the mental bubble that forms around me when i'm programming. It makes it scarily easy to just start withdrawing from other people and the world around me.
- deleted 14y ago[deleted]
- deleted 14y ago[deleted]
- Stratoscope 14y agoI'm 60 and have been programming for 44 years. This year I'm working on election maps for Google. I still like learning new languages - this year it's PostgreSQL and PostGIS, Go, Autohotkey (a very strange language!), and now TypeScript (not quite a new language). One thing I get an odd pleasure out of is when other programmers use phrases and styles I came up with years ago. A recent example is the $ prefix on a JavaScript variable containing a jQuery object: // Set $test to a jQuery object and test to the DOM object var $test = $('#test'), test = $test[0]; I just saw someone explaining that on reddit last night and it gave me a smile. Much longer ago, I coined the phrase "fire an event" back in the 80's when I was designing the VBX interface for Visual Basic (then called Ruby). Alas, not all the names I coined for that project survived: VB Controls were originally called Gizmos, which I thought was a much more fun name. But still it's neat to see people talk about firing an event.
- Zigurd 14y agoIt really depends on what you mean by "programming." Following some dullard's waterfall plan to put sludge data in one server into a database of sludge on some other server would make anyone depressed. Writing books, consulting on multiple interesting projects, and being well-remunerated is a very rewarding way of making a living. Can't complain.
- tharris0101 14y agoI think it depends on WHAT you're programming at 50. Anyway, my philosophy is that I want to be defined by what I'm doing away from my job/career. It is extremely depressing to me to think that my career will be my driving force through most of my life.
- azakai 14y ago> But large scale, high stress coding? I may have to admit that's a young man's game. Was there a reason to use "man" instead of "person" here? Being a man doesn't seem important to the article.
- wbharding 14y agoWhether I'm still programming when I'm 50 (currently 33, programming for about 20 years), will depend on whether I have the same appetite for being wrong that I do today. To constantly program, you have to constantly learn, and to constantly learn, you have to constantly be confronted with the fact that you're doing it wrong. Not using the right API, the right language, the latest technique, etc. The best programmers are the best learners. The author here doesn't seem to be particularly passionate about learning from his battles with Hard Problems. I don't blame him, because it's hard and painful to be in a constant battle. But for my part, I hope that I still have a taste for the pain of learning when I'm 50; the day I stop wanting to learn is the day I become bored & boring.
- Joss451 14y agoI've been programming for 37 years. Programming is learning and learning makes me happy. I don't hunt, fish, play golf, chase women or drink in bars. I learn. I discover. This vocation is perfect for me.
- robomartin 14y agoProgramming, by itself, the mechanics of it, isn't something that I find stimulative enough to derive long-term enjoyment. I think the author is right in pointing out that there's an ugly side to programming that includes bugs, bad API's, bad tools, bad documentation, etc. This is what I have come to term "programmer on programmer violence". We certainly can't blame anyone else for these issues. This I don't enjoy. Not to single them out --because EVERYONE has these issues-- but you look at the bullshit you have to deal with when doing iOS programming and, yes, it can be down-right demoralizing. Horrible documentation, an IDE that looks more like an iTunes-styled toy than a professional development system, bugs, bugs!, no feedback, huge delays in fixing problems, etc. Again, this isn't just about Apple, as nearly every system I've worked on over the years has some kind of bullshit that you have to deal with, like it or not. This, I do not enjoy. That's why, when justified, I've always gone for projects where I can "own" all of the code. Two typical cases are FPGA-based projects where you start with a blank slate of sorts and develop it into a useful signal processing subsystem. Or, embedded systems where I've had the chance to roll my own RTOS from scratch. These projects are fun. And you don't have to deal with other people's bullshit, laziness, incompetence and technical baggage. These projects I really enjoy. The other side of this question is: If you didn't program, what would you do? I am an odd duck. I am equally at home designing multi-gigahertz digital circuits, programming embedded systems, FPGA signal processors, iOS apps, workstation apps, websites, doing mechanical design and even running a CNC shop. I've been lucky enough to have had the opportunity to learn tons of disciplines through hours-upon-hours of hard-work and dedication. I've enjoyed every minute of it. What I have not enjoyed --and I'll try not to get too political here-- is when your efforts are affected or even destroyed by external --political-- forces. I recently had to close down a beautiful electronics manufacturing operation that took me fifteen years to build. Typical story: Started in the garage. Worked my ass off. Learned a ton of stuff I didn't know. Worked some more. Grew it to a 15 employee company in a 10,000 square foot building with top-notch manufacturing equipment. That's the good side of the story. While I was busy doing this, fucking idiots, otherwise known as politicians, where busy meddling with free markets and passing laws and regs that would, ultimately, cause the economic implosion in 2008. My customers couldn't finance their purchases (this was B-to-B in a mostly leased-equipment environment) and orders went to zero or nearly zero instantly. There's a lot more to it, but that's the basics. At one point no option remained but to fire everyone and shut it down. How does this relate to the "Would you want to be doing this at 50?" question? Be careful about doing something or falling in love with something that external forces can seriously affect, damage or take away. For me I'll generalize and call this "manufacturing". No, I don't want to be in manufacturing any more. Not now, not when I am 50. It's a shit business in the US and, between our politicians and what's going on in China, it is getting destroyed a little more every day. Here's a case of having invested fifteen years of my life into something that the government destroyed. I did not destroy it. None of my actions caused the economic downturn. None of my employees or my customers caused it. It was government policy that allowed millions of people making $50K a year to buy $500,000 homes they could not afford. And so it went. The software industry, as fucked-up as it can feel from time to time, can have a lot more isolation from these issues. That's not to say that it isn't affected by economic ebbs and flows, it is. There's a fundamental difference between the nature of a software business and, say, a manufacturing business. At any given time I had to have one to two million dollars in inventory, tools and equipment (parts, assemblies, raw materials, manufacturing equipment, tools, infrastructure) in order to be a small manufacturer. And, when things go bad, this infrastructure is sitting there, right above your head, ready to squash you, ready to kill you off unceremoniously. It can happen almost literally overnight. Software is different in that infrastructure is minimal and there is no real inventory investment. You can do software from your bedroom and build a nice lifestyle business or million dollar venture. Most importantly, software is incredible in that you can pivot overnight. You can be doing children's educational apps one day and a real-time process monitoring system the next. This allows for great security and potential stability for years and years. This is a huge advantage and, yes, this is something that would be desirable to have in your life at fifty and beyond.
- stantonk 14y agoIf that's been your experience of programming either: 1. You're doing it wrong. 2. You work for some sort of agency / programmer-for-hire outfit where you never work on the same project for longer than a few weeks or months.
- ww520 14y agoYes, I do plan to be doing this when I will be 50 or 60 or whenever. There's always something new coming up, new platforms, new hardware, new languages, new tools, new problem areas. For example, I've just learned a new vision algorithm that came up couple year ago that makes one of the vision problems solvable with modern hardware, that opens up the possibility to build solutions for this kind of problem. We are slowly but surely automating life with software, and we developers are in the middle of it. Why stop just because you've aged?
- njharman 14y agoI will always program, for myself, solving my problems, exploring my interests. I doubt I will always program for someone else, solving their problems. I'm sure I'll do it for another 8yrs at least. Which will put me at 50.
- wglb 14y agoI'm not gonna say by how much, but I passed that mark some time ago. So the answer is emphatically yes.
- tptacek 14y agoPlease note extremely effective demonstration of "privilege". Two employee candidates interview successively. One is 25, the other 53. Both are comparably conversant in technology, evince comparable cognitive capability, are equivalently literate in the problem domain being tackled by the role they're interviewing for. Privilege: the 25 year old is not asked (overtly or subtextually) whether they "want to be doing this". It is simply assumed that the 25 year old's head is in the game. No demonstration of lifestyle commitment to the craft is required. Take the idea and turn it around in your hands for a little while. Try this: imagine that instead of software developers, these were master woodcrafters; luthiers, say. Notice how the subtext changes: age is an asset. A lifetime spent designing guitars is a signifier of passion and competence. Flip the switch back to development and notice how age suddenly connotes something else, like "career failure forcing person to retain technical role". You will get old someday, if you're lucky. But controlling for spectacularly unlikely values of "lucky", you are aren't going to strike gold in this field, such that you'll have no career concerns when you're 45-50. It is unfortunate that our field manages to devalue competence and experience that way it does; here's a second-time Rails gem author instead of a virtual memory system designer, see you at SXSW!
- mechanical_fish 14y agoIt's about the rate of change. Luthiers are practicing an art that would be recognizable to Stradivari, three hundred years ago. The tools are made of more modern materials but they're basically the same. The product has a more modern design (both functionally and stylistically) but is basically the same. More importantly, the culture and business of instrument-making is largely the same. You have a shop in your garage or basement, or in the back of your store. You make instruments by hand a few at a time and sell them, preferably for cash, to individual buyers. You learn by apprenticing with someone who knows, or reading books and practicing like crazy for decades. Maybe you'll scale up to a factory with a few dozen journeymen cranking out instruments… like Stradivari did, three hundred years ago. The problem with programming is that it's unstable. And I contend that it isn't even the unstable languages and platforms that hurt (as everyone says, experience makes it easier to learn new languages). Nor is it the eternal brokenness and turnover of APIs. This is not a new problem, nor does the patience to deal with it necessarily decline with age. Indeed, to an extent the opposite is true: experience has taught me not to panic when my favorite API is shot out from under me. (The first time it happens is a really awful surprise and a test of your patience, but the fifth time it happens you're probably used to it.) No, I think the real problem is the constant turnover in culture. Programming in the late 1980s, for example, was a completely different social universe than web consulting in PHP, or iOS development: Different typical org structure, different business model, different way of learning the trade, different communities and communications channels, different career tracks, different project management styles, different constraints, different everything. Immersing yourself in a new culture is hard. You're going to get schooled by kindergarteners, so check your pride at the door. And you're going to have to relearn your whole approach to the business, not just a new syntax or a new set of APIs. You're even going to need to learn new jokes. And the biggest challenge of all is that your old culture rarely dies cleanly, so you're never quite sure if you're doing the right thing by becoming an expatriate. Why not just go home, where you have the seniority and the contacts, where you know the old stories and can visit the old hangouts? The old way is shrinking, but is it really time for the funeral?
- deleted 14y ago[deleted]
- dumb-dumb 14y agoI think this is the reason VC need kids to build hyped contraptions of unneeded but usefully obfuscating complexity that can be pitched to investors as "the next big thing". Adults would just skip the hype, the faux productivity, and do things efficiently in the simplest way possible. Case in point: the author's small image composition program built using C and Erlang.
- genbattle 14y agoI'm literally going through this at the moment. I'm currently 24. I do still love programming, and I'd like to think i'm pretty damn good at it. But do I want to be doing it as a job in 30 years time? I'm not so sure anymore. I've been through one software job at the very loose-and-fast end of software development, but the pace (and a huge amount of overtime) burnt me out. I got to the stage where I couldn't get myself out of bed to go to work the next day. Over time I recovered somewhat, but I just wasn't enthusiastic about the work anymore. My current job is at the complete opposite end of the spectrum. Medical software development is very slow, conservative, and methodical. To be honest I can see why most of the companies in this industry are at the thousands-to-tens-of-thousands scale; you literally need that critical mass in terms of staffing to deal with all of the overhead associated with a medical product. Reports, standards, committees, meetings, audits. And yet this company is doing it with less than 10 people. It's really feel-good work, but it is really easy to get bogged down in the day-do-day drudgery and overhead, to the point where you completely miss the big picture of helping save peoples' lives. Do I want to be doing this when i'm 50? I don't think so. In general in software development there's a couple of things that I've realized you have to work really hard at to have as a software developer. I've also discovered that both of these are much more important to me than I used to think: -- Physical health and fitness: if you're sitting statically in a chair for 8-16 hours a day you have to really watch your diet and make continuous conscious efforts to exercise at every opportunity: it's going to catch up with you eventually (especially by the time you get to that 50 mark). -- Varied and changing environments: both of my parents have "desk jobs", but both have extensive trips out of the office to visit customers or other sites. As a programmer I don't get this variety (the spice of life), so it's very easy to get bogged down and forget the big picture. I think this also leads to getting stuck in mental and emotional loops, due to a lack of external stimulus (kind of like what people who work from home report). Nothing prepares you for actually being in a 9-5 programming job. At university it was obvious that there were people who were able to pass tests well enough, but would obviously struggle to code their way out of a paper bag. What about the people like myself, who are competent and practical, but are not prepared mentally to handle the rigors of 9-5 programming? Maybe that's why there is a shortage of labour in this sector: not only are we struggling to find people who are excited about programming and skilled at it, but we also struggle to find people who can handle working in these commercial scenarios? There are also a number of companies that aren't like the examples above, especially in SV. But the problem with that is that not all of us are, or want to be, in Silicon Valley. Could I start my own company? Maybe, but that's not where my competencies or passions lie, at least currently. Some deep thought is required about where exactly I will go next, given the time and effort I've invested up till this point into electronics, computers and programming.
- iRobot 14y agoI turn fifty in 3 months and love it more than ever. These days I get to design hardware on an FPGA that would take up several square meters of circuit boards in the eighties. Bring on the next thirty years I say..
- mandeepj 14y agoI think those who hate IT, programming are the one who does not understand the computer architecture, compilers, programming languages, protocols (http, tcp), OS, does not becomes friends with tools, never try to improve themselves. They don't know what is happening behind the scenes like how code gets compiled, how inter machine, inter process communication happens. How browsers work, what is the work involved when someone requests a web page from a server. How to debug issues? Effective debugging requires great knowledge of the components involved and creative thinking and above everything else lot of patience.
- donebizkit 14y agoFinally an article that tells it like it is. A word to the commenters trying to disparage the author. I am sure wherever you live, in la la land, you wake up smiling, sipping your coffee, checking tech blogs, dev sites, spending couple of hours learning a new technology and then when you feel like it you write a single PHP page and call it a day. But let me tell you how the rest of us do it. You wake up with a headache because you spent last night dreaming about all the meetings you had the day before. You chug your coffee hoping the headache will go. You spend 15 minutes catching up on emails and if you are lucky 15 on reading tech blogs and then the misery begins. In 15 minutes increments you jump from coding project 1 to a meeting to fixing project 2 to a meeting to learning about the domain of project 3 ... And then some douchebag in a meeting says why don't we use technology X and spend many days learning about it to build something we could've coded in couple of hours. And then management says why don't we use technology Y because all the douchebags on the internet are talking about it. You try to make you case that we don't need any of that i.e. we don't need to use Hibernate for COUPLE of select/update/delete queries SQL is not that evil! and then even though most of the team agrees with you, no one has the guts to say it out loud. You return to you desk trying to remember the algorithm you were designing in your head but part of it is gone. You jump from JAVA to .NET to PHP to javascript to C++ to SQL to Hibernate to jquery to YUI to MVC to mapper to, to, to ... You go back home, do whatever nightly routine you do and call it a day. Sorry, passion is not the problem here. Software developer is a tough job and I know I can't do it when I am 50.
- droope 14y agoFUCK YES!!!!! of course I do
- rbanffy 14y agoIf I can still build planes in the sky and herd cats when I'm 50, I'll be happy. I've been building planes for my first 20 years and herding cats for the rest of my career and there is probably nothing in the world I'd be happier doing. Note: those may be obscure references for some. http://www.youtube.com/watch?v=Y7XW-mewUm8 http://www.youtube.com/watch?v=Y7XW-mewUm8 and http://www.youtube.com/watch?v=m_MaJDK3VNE http://www.youtube.com/watch?v=m_MaJDK3VNE should help.
- michaelwww 14y ago- But large scale, high stress coding? I may have to admit that's a young man's game. This statement verges on ageism, which I forgive you for because it is common in the tech industry. Ask Rob Pike (b.1956) if high impact programming is for young men.
- theoa 14y ago65 and coding harder than ever. All the things I have wanted to do for years are now becoming easy. It's not that I am getting any smarter. There are so many new tools and so many new techniques with thoughtful discussion to back them up, that creating cool new stuff is becoming a piece of cake. My world is all about 3D. WebGL and libraries like Three.js are breakthrough tools. Stuff that would have taken weeks to code gets dashed off in hours. I would not stop coding even if you paid me to stop. It's way too much fun right now!
- bbunix 14y agoI had to reply... more than a comment, an entire blog post :) http://blog.maclawran.ca/hell-yeah-hacking-at-50 http://blog.maclawran.ca/hell-yeah-hacking-at-50
- bshock 14y agoI'm 50, I'm a proud software engineer, and I hope to be usefully employed as some sort of software engineer until the day I die. I love what I do. I love the problem solving, the analysis, and the design. I love diving into a massive, tangled jungle of code and mastering it. I love taking a highly complex plan and turning it into living, breathing system. I love learning new languages, new libraries, new methodologies. Most of all, I love that "aha!" moment when a once-vague notion suddenly crystallizes to the point where I realize, "I can code that!" And I love becoming a better software engineer. I've known and admired some truly brilliant programmers, and while I may never reach their level of knowledge and skill, I am damned well determined to try!
- lambda 14y agoSo, what do you do instead? As someone whose only job has ever been programming, what else is worth moving to that pays about as well, has similar job prospects, and is suited to the type of person who is drawn to programming?
- grownseed 14y agoI liked that article, it's a question I've asked myself numerous times. I love programming, been doing it for about 14 years now and I regularly find renewed interest. I think one point that's maybe not stressed out enough here is that the passion for the activity itself doesn't necessarily have to do with a passion for the job related to that activity. I very often do things at my work I honestly wish I didn't have to do, a lot of it is really, really numb. Consequently, sometimes I think I wouldn't want to do that for too long, but then I realize the problem is the job itself, not programming. There's also the question of whether I'll still be able to keep up with all the new stuff when I get older. I've often relied on the fact that I can adapt and learn things pretty quickly. Then I think back and it turns out that it's not so much a 'mechanical' problem, it's more of motivation problem. So I suppose as long as you can keep yourself motivated, you'll keep going.
- eda 14y agoI'm 51 and I've been programming since I was 21. I write code every day. I love what I do and I have never been more productive than I am now nor have I ever written better code than I am writing now. I write highly complex multi-threaded algorithmic code that operates on extremely large graphs (up to 3.5 billion nodes). I have no interest in getting into management. I did get "lucky" in that I was a member of the founding team of a publicly traded company and am now a technical co-founder and chief software architect of an up-and-coming engineering software startup. I've written 3 blog posts in career and, except for LinkedIn, I participate in no social media/networking. I've never posted on StackOverflow. Outside of my niche industry, I'm sure that no one has ever heard of me. And, that's exactly how I like it. Just my $0.02