Warning: This is really long. Also, reading it may render you unemployable at some startups.
In the beginning
I started my programming career in the vast military-industrial complex. I worked in a cubicle. I filled out TPS reports.
The thing that used to baffle me the most about working there was that no one seemed to care about programming as a craft. Whenever I tried to have a hallway conversation about stuff that I’d read on Ward’s Wiki, it wouldn’t be long before my conversational partner’s eyes would start to glaze over.
To the vast majority of people who worked there, programming was just a job. You did it for eight hours a day, and then you went out for beers and watched the game. On the weekend you didn’t hack on open source; you went fishing.
Somehow I spent nine years in this environment before finally moving on. But when I finally made the jump, I made sure things were different. I went to a company filled with developers who loved to code. Where I could have long, satisfying conversations about refactoring without feeling like I was just being humored.
I’ve never looked back. It’s been years since I’ve had significant contact with “wage slave programmers”. In my work, in the conferences I travel to, in my social media circles, the programmers I come in contact with love what they do. And I like it this way.
I say all this just to clarify that when I write about passion in programming, the baseline that I assume I am writing to is people who already care a lot about their craft. You probably wouldn’t be reading this blog if you didn’t fall into that category.
The passion problem
Recently I wrote about the rising use—overuse, in my opinion—of the word “passion” in job ads for programmers. The response was larger than I expected. There were hundreds of replies on the blog itself, and on Hacker News, Slashdot, Reddit, and Twitter.
The vast majority of the replies were in agreement. People wrote over and over again to talk about how, in their experience the word “passionate” had been used as a euphemism for “we expect you to work yourself half to death”.
— Noel Rappin (@noelrap) January 31, 2014
Learned from yesterday’s “passionate” discussion: many people (including me) feel/felt deeply exploited by an employer, & the pain persists.
— Seriouspony (@seriouspony) February 3, 2014
I’m very happy so many people found something to identify with, even a sense of vindication, in my post. At the same time, the more responses that came in, the more I felt like there was a deeper piece that I had missed.
As I’ve reflected on this subject more, I’ve realized that the expectations of burnout-levels of effort is only one symptom of a much bigger problem. A problem of narrative. To wax grandiose for a moment, I believe that there is a battle in progress for the very souls of programmers. But more on that in a bit.
First, I want to briefly address some of the common objections to the assertions in my last post, as best I can. Then I’ll get back to the heart of the matter.
The most common objection went like this: “You’re just quibbling over words. When people write ‘passionate’ they just mean ‘motivated’ or ‘enjoys their work’. Everyone but you understands this.”
Honestly I think David Mitchell addresses this critique better than I can:
As that video makes wonderfully clear, this use of “passion” to talk about doing one’s job isn’t just strange to me; normal people find it weird, and laughably so. If what you really mean is “we seek people who are enthusiastic about programming”, say so. But consider why you are saying so. Is it because you want people who will do a good job because they care? Or is it because you expect the long hours to be their own reward?
Caring about the craft
Others said that while they are not passionate about a particular job, they are passionate about the craft of programming. To this, I’ll re-raise my original question: we’re all people who care deeply about our craft here. But is passion the right word for that? This is a word people use to describe the deepest desires of their hearts; things they would sacrifice and perhaps even die for. As I said in the original post, my enthusiasm for programming is tremendous, but compared to how I feel about giving my children a safe and fulfilling life it’s not even in the same category. One of those topics can bring me to tears, and it isn’t programming.
On the other hand, if coding does bring you to tears, I would like suggest, as gently as possible, that this may not be an unmitigated good.
Passion is defined, among other ways, as “barely controlled emotion”. At one of my past workplaces, there were these two programmers, let’s call them Felix and Oscar. Felix and Oscar didn’t see eye-to-eye on how the system should be designed. And they felt strongly about it. In fact, they disagreed so profoundly that they would literally have screaming arguments about it. I half expected them to start throwing office supplies at each other.
I’d like to give this tale a heartwarming ending and say that the result of all those yelling sessions was a better design. But that’s not what happened. What happened was that a lot of time was wasted, and it wore down team morale. Other team members had to spend time they could have spent coding, acting as mediators instead. It was just a bad situation all around.
When I look back at the times I myself behaved passionately about how software should be designed—all the times I’ve gotten mad at someone for being obstinately wrong—I regret every instance. Even when I was right, I put an obstacle in the way of achieving resolution by putting others on the defensive. And when I was wrong, my passion for my own opinion delayed my learning.
I respect and admire the dedicated programmer, the passionate programmer is often a liability.
— Gregory Brown (@practicingruby) February 3, 2014
The word “dispassionate” is defined thus: “not influenced by strong emotion, and so able to be rational and impartial.” I submit that taking a dispassionate position is more likely to result in writing good software, especially when working in a team. When it comes to solving problems with code, it’s not a contest for who feels the strongest about their solution.
Learning every day
Still another objection I received went like this: “I’m not passionate about the job, but I’m passionate about learning“. In this case, it may be that my background colors my opinions. I was homeschooled. Among the other homeschooled kids I grew up with, a distaste for learning was generally regarded as a “public schooled” malady. A hunger for knowledge was considered normal, and learning itself was regarded as something you ordinarily did for fun every day.
We don’t call someone who eats three square meals a day “passionate about eating”, and similarly I don’t see the point of using a superlative as strong as “passionate” for something that’s as natural as breathing. I want and expect to learn something new every day. That’s not passion, it’s just a healthy appetite. I’d rather identify the lack of this natural impulse as what it is: a disorder. But maybe that’s just me.
Passion is for founders
One more point of contention people had was that while my point of view made sense for employees or (especially) contractors, founders should have passion for their work.
I don’t buy this. I am a founder. I damn near killed myself creating RubyTapas episodes while also working as a consultant. I built new tools, I marketed, I learned video production. Now it supports my whole family, better than consulting ever did. I can’t even list all the reasons I care deeply about this creation of mine, or all the reasons I love what I do now. And I won’t bore you by trying.
But am I passionate about it? Can I compare how I feel about this business of mine with the feelings I have for my kids, my wife, or for causes like ending childhood hunger? No. In the end, it is a [tremendously enjoyable] business. It does not define me as a person. And that “damn near killed myself” remark? If I didn’t think that the end product had a good chance of improving my family’s wellbeing, I wouldn’t have done it.
I don’t need to know that the founders of IRCCloud are “passionate about connecting people” or some similar fluff to know that they offer a darn useful product, one that’s well worth my $5/month. I don’t think passion is necessary to found great products.
The prosperity gospel
Now that 90% of readers have gotten bored and lost interest, it’s time to get to the real heart of the issue.
This is Joel Osteen. Mr. Osteen is a preacher, and a very successful one. There are 40,000 people in his church. Over 20 million people watch him on TV. And his books can be found everywhere.
Osteen preaches the latest iteration of what has come to be known as the “prosperity gospel“. In essence it is similar to many other “health & wealth” teachings. “God wants you to be rich”, it says. “You just need to have the right attitude and intentions, and the universe will pile wealth at your doorstep”.
The reason Osteen’s message is so popular is that it’s easy to swallow. It is something people want to believe. “Good news!”, it happily proclaims. “Religion is a one-stop shop! Not only can your faith give your life meaning and purpose, but it will bring you wealth and happiness as well!”
I’m increasingly convinced that there is a similar gospel gaining traction in the software community. I know this sounds goofy, but bear with me for a few more paragraphs.
I said earlier that the demand for “passionate” developers was just a symptom. Here’s another one: the increasing expectation that developers will also be evangelists for their company or product 24/7.
Many tech companies have developed an overt or implied cultural expectation that all employees function as evangelists and brand ambassadors for the company… In San Francisco, Silicon Valley and the Bay Area, the streets are teeming with evidence of the phenomenon: startup workers wear “staff” swag, hoodies and t-shirts emblazoned with their company brand everywhere they go. Corporate identity takes over the physical presentation of its workers, on the clock and off. Even in online spaces, tech worker bios often state their role and employer solely, or before any other biographical or identity information. And individual profiles on Github, Twitter and even personal blogs are all declared the new resume.
In tech, it’s hard to know where companies end and we begin.
I’ve long found the obligatory, effusive “joining the team!” blog posts written by new startup hires to sound a little forced. Especially in light of the fact that if you look back six months or a year, you’ll usually find the same person using the same breathless language to announce their excitement at joining a completely different team.
Another symptom is the grandiose terms applied to tech work. We’re not just hacking code; we’re Makers. We’re Creators and Innovators. But more than all that, we’re World Changers. From The New yorker:
A few years ago, when Barack Obama visited one Silicon Valley campus, an employee of the company told a colleague that he wasn’t going to take time from his work to go hear the President’s remarks, explaining, “I’m making more of a difference than anybody in government could possibly make.”
We could be heroes
This is Tim Draper. Mr. Draper is a Sillicon Valley investor who has his own cult-esque “startup school“. It doesn’t have students; it has “heroes”, comparable (according to Draper) to soldiers and firefighters. They chant slogans like “I will do everything in my power to drive, build, and pursue progress and change!” and “My brand, my network, and my reputation are paramount!”. When they graduate, they will be given the title “Change Agent”.
This brand of crazy may only be bottled at cask-strength in Silicon Valley, but I think it’s seeping out into the tech community at large.
It’s telling that Draper uses the term “hero”. What he’s selling is nothing other than the oldest myth in the book. You are a hero! Throw yourself heart and soul into this adventure, and with your special skills, you will defeat the old order and prove yourself as a person!
When I was in my late teens and early twenties, like most people that age I had a tremendous amount of latent energy and passion. And like so many, I was trying to figure out to what I should devote that burning need to make a difference. I also, coincidentally, had a talent for, and love of, software development.
The evangelists of the “passion gospel” have crafted a message which is purpose-built to appeal to younger-me. And fundamentally, it’s just Joel Osteen’s prosperity gospel, only flipped around. The prosperity gospel says “Relax, you’ve arrived! The thing that gives your life meaning will also give you wealth and ease!”. The passion gospel says “Relax, you’ve arrived! The same thing that brings you pleasure and money can also give your life meaning!”
It’s an easy pill to swallow. It’s what you want to hear. Forget wrestling with the hard questions of what to dedicate your life to.
God your merits have lead you to be a Maker. Now just throw yourself into your work (which you enjoy anyway!) and we promise, The World Will Be Changed. Trust Us.
Which would almost be OK if the world actually were being changed, and for the better. But back in the real world, the biggest difference Silicon Valley is making is changing the rich into the very rich. And nine times out of ten, the “disruptive” idea these “makers” wind up working on is Facebook for Ferrets, or some other equally vapid and ephemeral folly.
In rare cases the product is useful and/or successful. But even then, usually the only way it can be said to have “changed lives” is in the sense that it changed “people who don’t use product” to “people who use the product”.
When you’re working from within the passion gospel you’re surrounded by people who will eagerly validate your project as “disruptive” and “important” no matter how inane it really is. They have to; to do otherwise would be to question their faith in the whole self-congratulatory belief system. I’ve had a number of conversations with people who have swallowed the passion gospel hook, line, and sinker. It’s a surreal experience. I think College Humor captured it best:
Show me the money
None of this is to suggest people should stop thinking up new product ideas and instead work on stuff I happen to think is important. But it calls into question why there is such an emphasis on passion in an industry which, for the most part, turns out small conveniences and passing amusements.
The gospel of passion, like the gospel of wealth, is a belief system. An ideology. And as with most ideologies, there are two factors which make it successful: 1) there is something that makes it emotionally attractive; and 2) someone stands to gain from it. We’ve already discussed why the passion gospel is attractive. Now let’s follow the money.
Joel Osteen and the people in his ministry make millions. But they are small potatoes next to the people behind the passion industry.
A skilled developer can make enough money to comfortably support herself and even a family. A founder can occasionally strike it rich, although you’d be about as likely to win the lottery. But there’s one group of people who always make money, and lots of it: the investors.
Remember Tim Draper? He doesn’t just get the $9,500 entrance fee from students.
Like tech incubators Y-Combinator and TechStars, which are rewarded for their early support of start-ups with a fraction of future earnings, Draper stands to profit from any successes that sprout from the program. Draper’s son, Adam, has set up a tech accelerator, Boost VC, across the street from the school, where students can apply to polish their idea. When it’s ready for the big leagues, one of Draper’s venture-capital firms will be there, ready to pick up the company for funding. “It all helps itself,” he says. “These guys will all have leads for me.”
Individual startups come and go. Most of them fail. But the investors always get paid. And it’s in their best interest for startup founders and employees to throw themselves 100% into the project, in order either to secure an “exit”, or to prove an idea nonviable as quickly as possible.
They need heroes. Heroes to work long hours. Heroes to sacrifice health and friendships to their (investor-incubated) vision. But also, heroes to sell the hacker-hero archetype to the next generation. To write blog posts, speak at conferences, and populate Hacker News while validating the message that to pour yourself heart, mind, and body into a software project is not just cool, but noble.
So far this sounds pretty startup-centric. And I wish this was just a Silicon Valley startup phenomenon. But while the true benefactors may be startup investors, the ideology is not confined to that world. The seductive notion that we need not look beyond hacking for purpose and meaning has spread virally, far beyond its place of origin.
Losing my religion
So what’s the point of all this? Is this just a great big buzzkill for aspiring hackers?
From here on out I’m going to assume that you are a young, enthusiastic programmer getting started in the industry. Others may benefit from what I have to say, but that’s the target audience. Here’s what I hope you take away from this post.
Right now, you probably have more energy than you ever will again. You definitely have more time than you ever will again. Part of maturing as a human being is choosing where the majority of that time and energy will go. You have to work out for yourself what you are passionate about.
Passion is not the same as enjoyment. More often, passions bring heartache, exhaustion, and painful choices. People who are passionate about humanitarian work invite illness, discomfort, and mortal danger into their lives. People who are passionate about art may experience decades of poverty and rejection.
By choosing to embrace my passion for family from a young age, I closed the door on countless other possibilities. I limited the jobs that I could take. I gave up my dreams of carefree globetrotting, or of a bohemian lifestyle. I put aside at least a half dozen hobbies. I chose long sleepless nights, and the terrible fears that accompany being completely responsible for another person’s wellbeing.
I once read some advice for working out the purpose of your life: start listing things that are important to you on a piece of paper. When you get to the one that makes you weep, stop.
Working out your passions in life hurts. It involves difficult revelations, and tough choices. If someone tries to tell you otherwise, do not trust them. They are selling something.
No product or company deserves your passion. You can choose to throw your passion into anything you want, but no project inherently deserves it. Not even if you are the founder. What you are passionate for is something deeply personal, and it should flow from your most closely-held values.
It is possible that those values will coincide perfectly with a project you work on at some point. Just as an example, I think the people at the Sunlight Foundation are passionate about democracy, and they get to pour their passion into code. Depending on your passions, you may or may not be able to work towards being in a position like this.
And that’s OK. I’m not telling you to devote yourself only to highminded pursuits. Most projects don’t deserve your passion, and that’s OK. You can still be enthusiastic and conscientious about your work. You can still love what you do, and care deeply about your team and about creating something of high quality.
But be jealous of your passion. There’s a Buddhist saying: “my actions are my only true possessions”. When everything else is gone, the things you worked passionately for are the things that will be associated with you. More than anything else, they will define you as a person.
I can’t tell you what to be passionate about, nor would I want to. Be passionate about enacting social justice in the world. Be passionate about creating music. Be passionate about a lover. Be passionate about improving healthcare. Be passionate about your faith. Be passionate about code, even—but be aware that true passion about code looks more like this than like this.
Or, if you must, be passionate about building Facebook for Ferrets. But let it be your choice, based on your values, arduously discovered. Not based on what some Silicon Valley televangelist sold you.