4 ms·
Why passion is not what you need in a programmer
- jey 17y agoYou're just battling a strawman here. Nobody uses "passion" to mean "ignore everything and only care about coding". Passion means you care about your work, and care about the outcome, as opposed to being a drone who just cares about getting a fancier job title or "just paying the bills".
- TheTarquin 17y agoAgreed. Also, none of the coders I know are passionate about programming. Rather, they're passionate about making cool stuff. As the saying goes, programming is not a what, but a how. Hackers don't get passionate about the act of coding any more than carpenters get passionate about driving nails.
- ryanwaggoner 17y agoWhoa...is this true? I thought I was like this because I'm not a hardcore developer.
- mquander 17y agoIt's true for the great majority of programmers I know (good and bad), but it's not true for me. I care a great deal about programming and I'm not particularly interested in making cool stuff. So there are both sorts. I'm interested in programming as a tool to give myself a clearer mental model of language, mathematics, computation, and thought, and I'm interested in writing and reading code that I find artistically aesthetic and elegant. (Then again, I wouldn't call myself a 'hacker'. I think 'hacker' implies a large degree of making-cool-stuffmanship.)
- TheTarquin 17y agoInteresting. So, out of curiosity, are you just not particular about projects? If you had to choose between two arbitrary projects to work on, on what criteria would you base your choice?
- mquander 17y agoI updated my comment to answer the obvious question of what I am interested in. I program to fulfill my practical needs and for work, but I really am interested mostly in learning as I do it and in producing code that is really high-quality, beautiful code (to the degree that the problem domain, my ability, and my personal taste allows.)
- yters 17y agoYes, I had the same reaction. Cool stuff is alright, but I really like elegant code and algorithms, the more mathematical side of it all.
- MaysonL 17y agoI may just be strange, but building tools for a clearer mental model of language, math, etc, sounds like really cools stuff.
- TheTarquin 17y agoIt's largely been my experience. The best programmers and the best hackers I know are all more passionate about what they're DOING with code rather than the minutiae of code itself. Which isn't to say they aren't interested in technique. After all, carpenters still like to geek out over tools once in awhile . . .
- andrewcooke 17y agocurious - does the distinction between cabinet makers and carpenters not exist any more? only the former were considered craftsmen by my grandfather.
- TheTarquin 17y agoWhat was the distinction there? As far as I understand things, "cabinet maker" would be a proper subset of "carpenter".
- andrewcooke 17y agoas far as i understood things, a cabinetmaker made "fine" things like, well, cabinets, tables, chairs, while a carpenter made things for construction, like window frames, or flooring. [edit: well, wikipedia has a whole pile of different things listed under carpentry, so perhaps i remember wrong, or this was a local thing (my grandfather was an odd-job man in leeds, uk)] [edit2: ah, perhaps the distinction was between carpenters and joiners, which is explained here - http://en.wikipedia.org/wiki/Joiner http://en.wikipedia.org/wiki/Joiner - and is a uk-only thing. certainly "joiner" is a word i remember, but that you don't hear any more...]
- TheTarquin 17y agoInteresting! I did not know that. Thanks for the explanation and link.
- dminor 17y ago> Rather, they're passionate about making cool stuff. And also, just like carpenters, the tools they use.
- imack 17y agoI've worked at a place where "passion" meant "ignore everything and only care about coding". It also meant "work more hours, just because". It was a software startup run by someone with a management consulting background (won't make that mistake again), and since the founder/CEO didn't know how to filter good programmers, he just sought "passion" and "fire in the belly" thinking that would make great developers.
- j_baker 17y agoI think that's a totally different problem though: a manager who isn't a programmer trying to hire programmers.
- imack 17y agoI actually believe the two concepts are tied, and I get that sense from the article as well. A lot of people look for "passion" because it's something the believe they can detect and think it translates into more code and more hours worked. I think the idea of a super-productive introvert who never shows emotion doesn't fit well with the idea of what a productive employee looks like to a non-programming employer. Of course, employment situations like this can be "hacked" by doing little Dilbert-esque things like closing ticket tasks at night rather than during the day to make it look like you're working later since the system sends emails to the management. That turned out to be one of my most productive career moves, which meant it was time for me to find a new job.
- j_baker 17y agoThere's a difference between "passion" and passion. Passion is a good metric to judge candidates by. "Passion" isn't. :-)
- dasil003 17y agoThe irony of your first two sentences is crippling. There is real truth in the quote: Passion is fleeting, transient, momentary on the timescales that achievement requires. You can certainly dance around the issue and claim that passion is in fact the same as interest, but then you're redefining well-established connotations in order to do an end-around on the guy's main thesis and shoot it down a priori.
- anonjon 17y agoThe problem is that passion doesn't have 1 definition, it has a dozen. You and the guy who wrote the article are taking passion in the 'lust' definition of the term. Those of us who think a passion for programming is important for programmer take it to mean a fondness or desire to do it. It fulfills a non-temporary need. The point is that the guy did an end-around of what others meant in his main thesis. It only makes sense to shoot it down a priori. It is the same as if someone had said 'I think programmers should have passion!' and I responded 'well, i think that is a little harsh, programmers shouldn't have to suffer!'
- dasil003 17y agoI get where you're coming from but it's only true if none the thousands of articles about the importance of programmer passion take it in the "lust" sense, and having read a good chunk of those articles, I'm quite sure that is not the case. Whereas my critique of the GGP was just about this specific article.
- Daniel_Newby 17y agoSEMANTIC FAIL. From a dictionary: Boundless enthusiasm: His skills as a player don't quite match his passion for the game. The object of such enthusiasm: Soccer is her passion.
- steamer25 17y agoYep, semantics. The author is focussed on the transient connotation that 'passion' can (but doesn't necessarily) imply. Substitute 'intrinsic motivation' or 'disciplined enthusiasm' and we're all in agreement.
- nlwhittemore 17y agoNot to pile on, but the article also seems to somehow assume that passion and diligent practice/training/hard work are mutually exclusive
- pw0ncakes 17y agoIn the short run, there is a bit of tension between passion and "diligence", at least under some definitions of "diligence". This is because people with passion tend not to have the unconditional work ethic that is desirable in a grunt or subordinate, but counterproductive in a creative or a manager. In the long run, some level of passion is required in order to maintain diligence. Not necessarily "work 80 hours per week because X will make me rich" passion, but a deep desire to do things well and correctly, and to learn the skills necessary in order to continue doing so.
- raganwald 17y agoYou are not piling on, you are making an incredibly important point. Are Olympic athletes passionate about their sports? To the exclusion of practice, training, and hard work? Come on.
- markdennehy 17y agoWhat distinguishes Olympic athletes from enthusiastic athletes is that they don't have passion; they have dedication. Day in, day out, regardless of how they feel, they follow a structured training plan. Feeling enthusiastic on a day scheduled for resting? Tough, you rest. Feeling down on a day scheduled for training? Tough, you train. It's not about being passionate, it's about what our fathers tended to call stick-to-it-ivness. Perhaps a better example is going for a doctorate. Everyone with a PhD will tell you the critical requirement for getting a PhD (if they're being honest) is neither raw intelligence (beyond what you needed for the primary degree), nor passion for the topic, but the dedication to spend four to six years of your life in the focussed, deliberate and pragmatic pursuit of a goal. Passion will do nothing but cripple your efforts - you have to remain objective, be able to drop an approach if it's not proving useful without a second thought, and not get married to the central thesis lest it distort your results. Same principle applies to programming. Dedication, professionalism, these are the real virtues - passion just produces fanboys for whatever the method de jour is.
- wglb 17y agoI think this is way off the mark. Professional (and I do believe pg has a good essay on this) suggests standard approaches to problems and suits and such. Passion about programming is what drives a programmer to solve that last bit of the problem at 2 am. These are the people that you want on your team. On the other hand, if you are building an enterprise software organization, you are more likely to look for a suit and tie than passion in a programmer. To answer the question What does it take to be a good programmer? I would say that first the passion or drive required to work on a problem that seems impossible in an environment where 50% of the time 80% of the stuff is broken.
- markkanof 17y agoAlso, if you are building an enterprise software organization, your primary concern might be something different than having a team that builds the best software possible. The goal may be to get the bare minimum done for minimal cost. So passion may be necessary to build truly great software, but not all organizations that build software are necessarily trying to build great software. I suppose that speaks to the passion or lack thereof in management.
- dasil003 17y agoIncidentally if greatness can be measured in bugs per line of code (which seems a reasonable, if not complete metric) then NASA writes some of the greatest software of all time, and I suspect they aren't often up at 2am hacking away on it willy nilly.
- afterburner 17y agoThere is more than one way to skin a cat. (There is more than one way to be motivated about work.) Why do some assume their way is the best way, or only way? It works for you; great, thanks for sharing. Now don't diss other peoples' motivating factors.
- danw 17y agoSurely passion can be the motivation for all that training and effort?
- mgrouchy 17y agoI don't understand how passion for programming/software dev/hacking in general means that its your only focus in the workplace or a signal that you should be taken advantage of. I'm passionate about programming because I am passionate about making stuff. I'm not very handy(carpentry, etc), so in this case a computer, editor and programming language scratches that itch. Contrary to the post I think that this is a fairly good indicator of how I am in the workplace and why I work for a (what a believe to be)cool startup. It gives me an opportunity to scratch this itch at work so when I am there it has my full effort/attention.
- tomlin 17y agoThis article is nonsense. Passion generates ideas. Ideas have the potential to make life (and programming technique) more intuitive all around. Get a new job. Don't hand out your single perspective gripes in the form of fact.
- synnik 17y agoI saw the large, red, bolded sentences centered between paragraphs, and my mind just filtered them out, assuming it was an ad. It took me a minute to figure out that the bold red text was actually relevant content.
- zb 17y agoThe response linked in the comments from the author of the original blog post he's complaining about sums it up pretty nicely: http://itscommonsensestupid.blogspot.com/2008/04/passion-does-not-mean-total.html http://itscommonsensestupid.blogspot.com/2008/04/passion-doe...
- lucifer 17y ago"[W]hen you get prostate cancer and the oncologist puts you into the IMRT machine to zap an area close to your gonads with a dozen different beams of radiation, you’ll probably find yourself hopeful that a professional wrote the controller’s software rather than someone who was always chasing the next hot thing in computing (and maybe never worrying about stupid dull things like documentation, specifications, tests, code reviews, quality control or that sort of old-fogie stuff)" +1 I think it may be helpful to extract a couple of more layers from the analysis model. Clearly software "engineering" has been confronting the expected (required!) transition from an art and craft discipline to a full blown industrial discipline, and in my reading, the OP is really (only) addressing the required mindset and the necessary changes in self-perception of the practitioners. Equally clearly, we are still confronting the transition and frankly are stumped by some very (very!) fundamental issues that need to be resolved before software "engineering" can be industrialized to meet the industrial scale demand for software. (Consider: data persistence and logical process impedance mismatch; concurrency; etc.) So, in my view, to argue uniformly against "passion" (we all know what it means: software geek born to code ;) based on a completely fanciful projection of the process of software development to the analytical test bed of a established, industrialized, nearly-scientific, discipline, such as any sort of applied physics (MechE, EE, whatever), chemistry, etc. is inherently flawed. Yes, you don't need (nor want!) "Fuck you" starlets with attitude in your engineering department. But that is precisely the type of personality that is going to be constructively useful on the road to industrialization of software development. Because it is the "passionate" geeks that typically produce breakthroughs, and that is what we need as of now. Once we have solved the conceptual problem of how to produce software as an industrial product, then would be a more appropriate time to focus on the ideal psychology of a "worker" in the software engineering industries.
- antirez 17y agono passion -> no fun -> no superb code. Many good things spreads from playing. You can do good things with N professional programmers, but they'll not think out of the box, they'll not be imaginative. You'll be good but not outstanding. And when I talk about superb code I'm not talking about the code itself, but from the point of view of users.
- isleyaardvark 17y agoIt seems like the majority of posts I've read about "passion" in programming are aimed at discouraging people from becoming programmers. Or to put it another way: encourage people whose motivation for becoming programmers is mainly to get a well-paying job to pursue a different vocation. The article might've been more interesting if the author had discussed it in terms of discipline being more important than passion.