I keep seeing this word listed in job ads. When I think of 'passion', I think of people like Kanye West, Dennis Rodman, and Ernest Hemingway. People who follow their heart and don't give a crap what other people think.<p>In my experience, the programming industry doesn't tolerate people like that. You're expected to be a great communicator, be nice and courteous, have good people skills, and follow directions. That seems to me to be the opposite of passion. Am I correct?
No, those qualities you list in your second paragraph are orthogonal to passion. They are also good qualities to have. They can exist with passion in the same person.<p>They way you describe passion in your first paragraph approaches passion.<p>What job ads mean, when <i>they</i> use the term passion, is that you will spend long hours and weekends slogging and slaving to get something delivered in half the time that it should have taken, something that will either ultimately be killed anyway by management or something done for a company that will kill itself while, ironically, it shaves away anything resembling passion from its employees.<p>If you are passionate about programming, or anything, you should generally not work for a company clueless enough to use that word in a job ad, description or interview, because that word does not mean what they think it means.<p>The only things that <i>deserve</i> passion are your family, and whatever grabs you in life. You don't have to be passionate about your job to be an asset to an employer. You just have to ship and be pleasant.
There's the cynical take on this, the non-cynical take, and the reality, which is somewhere in between.<p>The cynical take is that "passionate" means "exploitable".<p>The non-cynical take is that it's somebody for whom programming is not just a job but a vocation. The average programmer reads one or fewer books about programming a year. That's why they're an _average_ programmer. A passionate programmer is the opposite of that, somebody who is constantly learning and growing as a programmer, whether it's through books, experimentation, learning new languages, talking with fellow programmers, etc.<p>The classic definition (from the early days) is the person who is still occasionally boggled by the fact that people will PAY him (or her, these days) to do something you'd do for fun anyway. To paraphrase Steven Levy, you had the engineering priesthood, then you had the other guys - the guys to whom these devices were fascinating toys to be taken apart and put back together, simply for the sheer fun of it.
As you pointed out, passionate programming is at odds with a job where lots of other people are passionate about other things. For instance, a passionate programmer would not respond to a job ad that lists off the technologies they have to use, which is every job ad out there.<p>Most people in jobs don't want passionate programmers. If someone is free to be as productive as possible it causes problems for all kinds of people: The people who's jobs are replaced, people who look like they're not in control of subordinates, people who want to bill customers for lots of hours and work, people who want to maximize their political capital by controlling what features are delivered and who they are delivered to.<p>A person that truly wants to hire passionate programmers would give them a general description of the problem and business constraints, and then let the programmer take it from there. You don't see many job ads offering this.
People who follow their heart, or believe their own clippings? Ernest Hemingway built up an image to live up to, and invested an awful lot of time and energy in it. The other two, I really can't say--though if DR didn't give a crap, why did he have somebody ghost-write an autobiography?<p>In job ads it probably means long hours without commensurate pay. If it were to mean something that didn't make me smirk, it would be someone who cares about finding the best possible solution to the problems at hand.
I think of passion as some degree of obsession. You pour over content about your craft in an effort to learn the subtleties not because you're striving to better your position but for the love of the work. You could say you have an affection toward your subject matter.<p>A good sign of someone who is passionate is that they often speak with great conviction when sharing some debatable viewpoint.
> In my experience, the programming industry doesn't tolerate people like that<p>good observation :)
business doesn't work like that. the industry is always on the lookout for people who work hard, make sacrifices and get things done and who treat the work and the company and its wellbeing as their own (except when it comes to money)
"passionate" doesn't need to be described in the context of a programmer. Any "passionate" employee, is simply someone who cares about their job and takes pride in their work. People who are just punching in/out for the sake of collecting paycheques would typically not be very passionate.
I think that passionate by HR standards means someone who will put the company first, and not argue about finances (pay). As in the passionate programmer who works long hours for not so much pay.