I'm Not a Passionate Developer
koodihommia.blogspot.com
koodihommia.blogspot.com
When you go to the grocery store, some cashiers are better at their job than others, right? Probably most of them, good or bad, don’t love their jobs and are not passionate about “cashiering”, but some care about doing a good job regardless.
I probably wouldn’t be considered a passionate dev, I don’t have open source projects for example. But I do care about my work and try to do it as good as I know/can. After all, even if I don’t do programming out of working hours, I still have 40 hours weekly devoted to it, so that’s plenty of time to practice.
Not to mention that I’ve met incredibly passionate devs… that were passionate about their stuff, not their employer’s. I’ve caught some of them working on their open source stuff during working hours, in fact.
It's one thing if passion is a requirement for success. In software development, the bar is so low that while passion may be of huge benefit, it's by no means a strong predictor of career success. If you enjoy coding just enough that you get your job done adequately every day and don't feel burned out, that's perfectly fine.
When recruiters are looking for "passionate" developers, that means they want you going above and beyond in order to guarantee they get their cut after N-months with your company. That doesn't mean you actually need to live and breathe code.
Moreover, I hope nobody after age 29 actually lives and breathes code, even if they really like programming. There's a lot more to life than software. Work at a sustainable pace, maybe do a few unambitious hobby projects, and spend the rest of your time doing things with people who matter. A lot of those high-passion types are overly intellectual douchebag types who slow down the development process because someone didn't use their preferred design pattern. Do you really want to be one of them?
There's a lot more to a banana than the interior. Like the peel and the tree and the backbreaking labor to grow it and the Phoneutria!
> Work at a sustainable pace, maybe do a few unambitious hobby projects, and spend the rest of your time doing things with people who matter.
You had me at the first
Sorta lost me at the second (hobby projects: good, but necessarily unambitious?)
Devastatingly puzzled at the third (can I work on ambitious hobby projects with these as-yet-unidentified people?)
Why 29, that feels like a really arbitrary cutoff.
Are people in their 20s not allowed work-life balance?
It may be more understandable for someone to get the experience of "living and breathing code" early on, while it's harder to see what might motivate a person to continue doing so after gathering a decade or more of experience in the IT profession.
Someone in their 20s is still new to their career, and it's exciting to be paid to do this thing you would be doing for free anyway... its totally understandable if that person dives into the deep-end and is totally immersed for a while.
There's also just the exuberance of youth - one thing I miss most about my 20s is the ability to get excited about something and go head-first into it. Some combination of age and random other responsibilities and concerns that one picks up over the years makes that much harder in my middle age.
Some people (like me) tend to need to learn the hard way - the downside of going hard at work all the time was a lesson I needed to experience. It's better I did it young than now, I'm not nearly resilient enough anymore to make that mistake.
On the other side of the coin, I've lived enough years in my 30s and have met enough 30-somethings and beyond to conclude that, besides rare exceptions, having the same "passion" when you're no longer that young is probably not the best thing for most people. If the fact that your company doesn't actually value excellence or that your coworkers aren't interested enough still bothers you if you're older than 30 then it's a sign to start caring less. If I cared as much in my 30s as I did in my 20s about workplace excellence, I'd be fat, single, and friendless. Just saying. It's not like that for everyone, but I think everyone should consider whether that's true for them.
If passion really was so important, they wouldn't do so much to turn it into a joke and make all their workers meek or jaded.
> many projects need people who actually care about improving the product performance
I object to the idea that this requires passion. A person who is not passionate can still be competent at their work and solve problems like product performance. It just doesn't mean that they're going to care as much about things that satisfy developers but don't actually improve the end product, like toolchains, design patterns, the latest and greatest frameworks and transpilers, the "correct" way to do OOP, etc.
> people tend to be happier when they get more done with less effort.
That is true, but it doesn't necessarily follow that a team of passionate developers equates to less development effort. It certainly can, but it's not a guarantee. If you get people who are so passionate that they must die on every hill when it comes to a the team not agreeing over something as simple as tabs-vs-spaces (just an example), that can result in more effort that an individual developer needs to make in order for their code to be approved. Developers who care to the point that every rule needs to be carried out to a tee, even when it sacrifices code clarity and developer happiness, can make everyone including themselves miserable.
That's the point I was attempting to make, not that developers should work hard a few years and then kick back and stop caring at all, like a certain other individual in this thread (not you btw) believes.
> maybe management is your calling?
Good heavens, no. lol But the suggestion is appreciated.
This post covers most of the typical angles, and they're all bad, all roundly degrade everyone with passion. The possibility of the Joyous Warrior (who isn't also a hopeless mess to work with or a terrible bore with no life or otherwise awful) isn't permitted.
I personally like to temper myself with a little more optimism. Leaving the box open for hope, too, seems reasonable. And I feel like I've met so many people who might not be as maximally obsessed, but who do really relish the incredible fantastic wide open world in which software devs get to tred & lead the ways.
IMHO the problem with passion at work is that usually when companies say they value passion, they really mean that they want workers who are passionate about doing exactly what the company wants all of the time. When you're green, it's easy and feels good to believe all the BS rhetoric about how we're One Team, working together to benefit society, etc, so you channel your passion into your work. But after one spends a few years in the corporate environment, one learns how rarely a craftsman's passion aligns with the goals of a profit driven entity. I don't hold much passion for using shit tools to quickly pump out mediocre software employing user-hostile patterns that will probably be binned in a few years because someone certified as clueless decided so. The changes required to modern development to make me passionate at work are just a total nonstarter. So I withhold my passion for my personal life.
> Moreover, I hope nobody after age 29 actually lives and breathes code, even if they really like programming.
and
> A lot of those high-passion types are overly intellectual douchebag types who slow down the development process because someone didn't use their preferred design pattern. Do you really want to be one of them?
Do you realize that none of the software you use day-to-day would exist if people thought like ravenstine? Like I said, some people are not cut out for this kind of work at all and would be better to leave the industry. Actual programmers will read ravenstine's comments without context or research and believe they're reading career wisdom, rather than the anti-intellectual frustrations of mediocrity.
In context, ravenstine is saying "I should have stopped caring after a few years working as a software developer" which was their situation at 29. Commendable self-awareness, but this isn't therapy.
So a guy hiding behind a throwaway account offers us his opinion on how experienced someone must be before they can provide their opinion?
An opinion is all you have, because we know nothing about you other than that you think that a number means anything.
> who was working a warehouse job
That's some grade-A elitism you have there, btw.
> Do you realize that none of the software you use day-to-day would exist if people thought like ravenstine?
What exactly do you think I do all day? Are you hiding behind your cute little throwaway account because you want to dig into people's history on HN and casually insult them without anyone figuring out who you are?
Do us a service and provide your real HN or LinkedIn so we can all know what company not to work for.
> Like I said, some people are not cut out for this kind of work at all and would be better to leave the industry.
Pure elitism. No, we don't need people like you in the software industry, or really any industry. You're an insufferable jerk, and I hope you don't treat your coworkers this way. Nobody cares how smart or experienced you are. If you think that people who don't drink the passion kool-aid are a bunch of do-nothings that ruin codebases and get nothing done, and that viewpoint informs how you work with other developers, then you're the one who doesn't belong.
> Actual programmers will read ravenstine's comments without context or research and believe they're reading career wisdom
Because "actual" programmers can't think for themselves?
> rather than the anti-intellectual frustrations of mediocrity.
sigh
> In context, ravenstine is saying "I should have stopped caring after a few years working as a software developer"
No. If you were accurate, you'd have paraphrased me as saying "I should have cared less earlier in my career as a software developer". Not "stopped caring", you fool.
> which was their situation at 29
Wrong again, okbuddylol or whatever your actual name is. Maybe you can share your identity with us? Just give us your real HN account so I can determine what level of coding wizard you are.
> Commendable self-awareness, but this isn't therapy.
Spare us, why don't you.
* "overly intellectual douchebag types who slow down the development process"
* "fat, single, and friendless."
Sounds a lot like "NERDS!", forgive me for reading between the lines to find glaring ad hominems https://www.youtube.com/watch?v=gZEdDMQZaCU
Interesting that I'm not cut out for work that I voluntarily partake in, have an interest in, and am continually paid for.
> It's offensive for you to offer this kind of negative advice
I'm not one of those people who cares about whether people are offended more than calling a spade a spade, so don't waste your breath telling me that I'm offensive. It's one thing if you're personally insulted for some specific reason, but I'm not sorry if you or anyone else are offended because I have a perspective.
By the way, if you carefully reread my comment, you'll see that I didn't state that all passionate developers are bad or are suckers. Passionate developers can be the best asset or the worst asset on a team, and some people believe that passion is of upmost importance without considering whether their expectations of the 68.3% of software developers is reasonable; there's nothing wrong with being an adequate developer, and overly passionate developers tyrannizing others with their standards is a form of douchebaggery. If telling passionate developers to question whether their passion is making things worse for themselves and those around them is offensive, then offensive I shall be.
> not even ten years under your belt
You were that offended that you had to find me on GitHub in order to find my LinkedIn to figure out how long I've been in the industry? Wow. That's some real motivation you have. As if a resume can accurately represent how much actual experience someone has programming, interacting with other programmers, or working with passionate people in any industry in general.
Maybe you should stop hiding behind that throwaway account so we can dig into your history, bub. At least I'm open about mine.
> you know nothing about industry arcs and what makes a sustainable long career.
Oh, yeah? At what point does one finally know anything about industry arcs or sustainable careers? 15 years? 20 years? 30 years? Is it when I finally get a gray pube?
> Treating 29 (or 30) as an age cutoff for serious professional effort as an IC screams immaturity and total unawareness of the breadth and depth of the field.
Where did you get the idea that I was suggesting an age cutoff for serious professional effort? Effort is related to passion, but they are not the same thing. One can be a dispassionate about programming but still put in serious professional effort because they code to live, not live to code.
The point of the "29" thing is that nobody is young forever, and that life will not wait for you; there are lifestyles that are may be appropriate for young people but not necessarily for someone who is no longer that young. Being a "passionate" programmer can lead to workplace stress and reduced time living outside of the world outside of software, and while young people are going to pay their dues more or less, aged programmers should question whether intentional passion is a diminishing return at their experience level. Unnecessary stress isn't associated with prolonged lifespan, to say the least, and having good relationships with your coworkers is usually more important than whether code is elegant (a codeword for intellectually satisfying). Life outside of software shouldn't be postponed forever. Like I said in another comment, if I maintained the same passion as I did when I got started, my life in my 30s would be a lot less rich and vibrant than it currently is, and life is full of opportunities that present themselves only once.
> With your background, you could only have scratched the surface by that age.
Gee, I'm really sorry I didn't go into engineering targeting systems for Raytheon, or AAA console games, or LLMs for OpenAI, or some mass psychological experiment for Facebook. If I had, then I'd have real passion!
> Selfishly I'd like you to continue dispensing this kind of advice because attrition reduces competition, but I have to wonder, why are you even here commenting?
One could ask you the same pointless question, but I'll neither do that or dignify it with an actual response.
> Shouldn't you be walking your son or something worthy of the gravitas of three whole decades' life experience?
I could have made different choices in life that would have lead to me having children by now, yes, but what the purple fuck does that have to do with whether career passion can be counterproductive or harmful?
To recycle your verbiage, you are exhibit A of why passionate careerists can suck. Is the way you responded to me how you treat your coworkers when they don't meet your standards? Do you review their LinkedIn profiles when they don't use your favorite design patterns or don't code enough outside of work?
All you did was attack me without addressing whether what I said was valid, regardless of my experience level. The fact that you seem to care almost solely about the prestige of years spent coding, which is a number, says a lot about you. Passionate coders should consider whether their view of coding makes them insufferable; do you agree?
But I think this sometimes misses some of the real upgrades that exist out there:
- Strong typing really gives a benefit when you're refactoring, and other benefits in expressiveness when you can express what you want the solution to look like before you write the solution.
- Going from "pile of interleaved CRUD / if statements" to designing thoughtful abstractions for your domain can simultaneously reduce code complexity and reduce the number of bugs you encounter.
I think we sometimes overfit on "well, you say you're doing this for code quality reasons, but really you're laundering new-and-shiny distractions with code quality as a justification. In the end nothing will be different and we'll have wasted a lot of time".
But in reality, these things do accrete over time, and some teams are dramatically more effective than others due to judiciously picking "exciting" things to work on.
I think boring / exciting is a surface characteristic that doesn't correlate well with the actual metric you want, which is effectiveness and velocity gained. It's like arguing all day about whether your car should be red if you want it to go fast, it's just completely ignoring the facts on the ground about how things work.
Executing in a deterministic and expected way, to me, is _passion_. It demonstrates a care for the craft of software development.
R E A L L Y , R E A L L Y B O R I N G .
That's as it should be.Shipping a product (as opposed to "writing code"), has a lot of repetitive, silly stuff.
I just spent the last half-hour, making one-pixel tweaks on the presentation of table headers in my app, to accommodate the designer's wishes. He's come up with an excellent aesthetic, and the app will be great.
On the other hand, I’m very passionate about my personal projects and how and why I work on them. But I’ve found that a health dose of “I don’t care” actually keeps the wheels moving, rather than get stuck in an endless cycle of revisiting technical choices, design etc.
Not being a passionate developer ≠ being bad at your job.
There's nothing wrong with side projects, being passionate about development, blogging, etc. but it should never mean that person is a quality engineer.
How did you know if they were "passionate" or not? I don't think being "9-5" is a good litmus test. Maybe an indicator, but far away from a certain one.
For example, I can be very passionate about things, but I've also learned to timebox and not burn myself out over the years. (Or at least to recognize the signs, and take the proper steps when applicable, along with some precautions like counteracting when I work too long or hard on something.)
Other than that, I don't know if people who are passionate about something necessarily let on how passionate they are, especially to any random coworker. It's much more obvious with hobbies, since you chose to sink a portion of your time into it.
The Latin root of the word passion is patior, which means to suffer or endure. And I think that’s significant: having an affinity or appreciation for a thing isn’t the same as being passionate.
In the same way that I don’t see how working for (and being compensated for) 8 hours a day can be described as suffering, I don’t see how “passionate” is an appropriate descriptor for someone who only programs between the hours of 9 to 5 For their job.
When someone says they have a passion for programming, I usually take that to mean that their evenings are dominated by programming time, instead of hanging with friends, other hobbies, etc.
And don’t get me wrong, I don’t think people necessarily should be passionate about programming (nor expected to be).
I don't see that at all. Honestly, there is a lot I disagree with here.
First, a word's etymology is not prescriptive for its actual usage. For example, the English word "eventually" and the German word "eventuell" both directly come from the same French word, and have very conflicting meanings. That's just one example of countless ones.
But even if I accept your premise that passion is persevering in the face of suffering, I don't see why that "suffering" cannot be timeboxed in a sense. I've certainly had private passion projects that I could only work on during certain times, very passionately and with significant "suffering" during debugging, though.
> In the same way that I don’t see how working for (and being compensated for) 8 hours a day can be described as suffering
Why not?
But moreover:
> When someone says they have a passion for programming, I usually take that to mean that their evenings are dominated by programming time, instead of hanging with friends, other hobbies, etc.
How does OP which I replied to even know that about their coworkers, unless they talk about it, which was my point? I do program outside of work. I don't think all coworkers in my own team know that I do.
And about that second part: Are you saying that someone who hangs with friends, has other hobbies etc. cannot be passionate?
I would call myself a very passionate programmer. Two of my favorite languages are Haskell and BQN (an APL-like that looks like line noise). My last private project included a self-designed 4-layer PCB with, just for fun, my own PAL encoder composite output analog circuit and digital modulator, where I could have just gotten off the shelf parts. In another project I reverse-engineered a bespoke discrete chip MMU in a computer from the 80s, by looking at the disassembled OS kernel and staring at pictures of the PCB. The platform has been obsolete since the early 90s and there is no modern use for that, not even in a niche.
Sure, here I talk about that, but this is "Hacker News".
Outside of HN and my projects, I still love hanging with friends, have other hobbies as well that have nothing to do with programming, and take care not to sit at work too much. Not passionate?
To me, passion at work might be something like making out in the broom closet with a (willing) coworker 8-)
Passion is an inherently emotinal state, not always the best basis for clearly thought out action.
The idea that this is all a management ploy to get more work for the same money is already well represented here, so I won't dive into that, but that is also a significant part of why I don't like this concept in HR recruiting.
That doesn't mean, however, I prefer to solve problems with code, just that it's the skill I've developed the most. My joy comes from seeing someone who had a pain no longer have that pain.
I'm of the opinion that if more developers thought of themselves this way, we'd sidestep a lot of the angst and consternation around the actual development process. No longer would it be about The Best Code, instead the team would focus on The Best Solution, and the new question would be, "How can we build something that can be worked with over time?"
I'm very passionate about the technologies, but only if I use them personally. C? Hex yea! Databases and containers and CI pipelines? I don't really have cause to ever use those at home, so I'm like zzz.
Not for a promotion but because that is why I am there. Anything less would be mind numbingly boring.
To me, passion at work might be something like making out in the broom closet with a (willing) coworker 8-)
Passion is an inherently emotinal state, not always the best basis for clearly thought out action.
The idea that this is all a management ploy to get more work for the same money is already well represented here, so I won't dive into that, but that is also a significant part of why I don't like this concept in HR recruiting.
So doing the job you were hired for is being passionate?
IDK who these people are that are vandalizing code bases and making life more difficult that others are calling passionate, but it feels like someone heard the word used wrong and ran with it.
That's true, but personally I don't think that even with strict 9-to-5, I could stomach sinking so much time, energy, and attention (with more menial tasks I could listen to podcasts all along the way) into something I don't care about at all.
I am very "life outside work", more than some people I know, but there's only a limited amount of waking hours, and with so many of them allocated to "working", I hope it's a little bit more meaningful to me than just paychecks. YMMV if your work arrangement is very different, especially timewise, of course.
nothing wrong with lacking passion, but it was never about your patron.
AP got a job as an intern in a local small company, and has worked in the same for over 12 years. His company is a Java shop that cranks out run-of-the-mill enterprisey applications.
AP doesn't build microservice architectures or large scale services. He doesn't get to use the latest and hottest technologies either. In fact he hasn't learned many new techs, except when the odd client comes up with a new requirement. AP doesn't make tons of money, only slightly above the average national wage. Still that afford him a comfortable standard of living in his small, low cost of living town.
AP job might sound boring, but he enjoys it. He goes to work every day, writes features, and get backs home. He knows and gets along well with everyone in the company. After so many years, he knows the codebase inside out and the work is easy and comfortable. He goes out for lunch with his colleagues and takes it easy most days. The company hasn't really been growing, but it hasn't gone bust either, sort of keeping a stead stream of work and revenue.
AP is not a passionate developer by the American standard. For him, his job is a way to pay the bills and put food on the table. He doesn't follow tech blogs or podcast, doesn't fiddle with new frameworks or languages. Sometimes might get a passing interest in some cool new tech, but doesn't spend hours of his own time invested in pet projects or open source. In fact I hardly ever know what he is up to at work since he seldom talks about it.
So what is AP passionate about? He might not tell you about his latest exploits in Rust, but he'll tell you all about his new road bike. He doesn't attend software conferences, but has run half and full marathons around the world. He doesn't spend 3 hours after work coding a personal project, but having a beer and dinner with friends. He doesn't have a 6 figure job, but his income allow him to pay for his living expenses (including a mortgage in a new 2 bed flat) and hobbies such as travel. He might not work on "cool" projects and "make history", but his job doesn't leave him mentally exhausted, so that he can use his energy doing things he actually care about.
If you made it this far, I want to make clear that this isn't an allegory. AP is a real childhood friend and everything I said is true. AP is not an ambitious person, and might not be "successful" for some. He is also one of the happiest people that I know.
I always found a bit weird the cult of hustle that we have in the dev world. Not many other professions people would be expected to go above and beyond and feel the passion that is expected of us. I suspect that a good chunk of our profession are closer to AP that we think, but we are oblivious to it because those are the folks that don't frequent HN, write blogs, post on twitter or record podcasts.