Professionalism ∝ Passion-¹

In the 1990s, we were all searching for passion. Passion leads to Excellence, and we were all in search of that. In the 2000s, geeks took over, and geeks are just people who show their passion. The passionate, geeky software developer is a cliché, albeit a common reality. Many businesses and thought-leaders welcome that passion, and even try and motivate it

They enjoy the benefits of the drive and attention passion incites in software developers. They love the passion-fired momentum geeks have for “their” features. Build and support engineers can get passionate about their parts in a process even if customers never see it. But businesses also call on a different aspect of their workers from time to time: their professionalism

Compare the meanings of professional and its antonym amateur: the latter term might mean less-skilled (than a professional) or a dilettante. but originally it meant that one was not paid for the activity. In times past, only the rich could afford to work at something that would not earn them money, but the Maker movement today indicates that many people are designing and constructing things, often with superior skills and experience, for their own passions

Geek is the opposite of cool1; passion is the opposite of cool, and, in business terms, cool is professional. Professionals’ reward is payment for delivering value for their hire rather than the joy of satisfying their passions. Professionals can hand off work to others, or simply drop it, at their employer’s whim, without any sense of loss. Professionals fulfill the needs of their role rather than the value of what they produce; those who hire them determine the value

Agile Methodologies tend towards the professional side of the scale. Work is divided into incremental steps towards a feature rather than starting a death march until it’s done. The user-representative part of an Agile team defines the goal because their satisfaction is the definition of Good and Done, not any specific design, implementation, or functionality. Each story contributes to a goal, and that goal can change from sprint to sprint. Depending on how an organization works, a scrum team might never see how individual stories actually benefits anyone

When markets change, when start-ups pivot, when companies and divisions merge, the goals that geeks have developed passions for change under their feet. Sometimes passion can redirect into a new feature or new goal or project; sometimes, it cannot. Asking a developer not to take the cancellation of their feature personally, or to “be professional” about it, when only the week before, their employer was stoking their passion2 and asking them to take personal responsibility for shipping it on time, is hypocritical and unlikely to work well

Many engineers are happiest when they can be passionate about their work (as they define it), yet software companies need to change the work to fit changing business realities. When these two tendencies collide, management should acknowledge the cost of deflating passion, and they should budget for the staff suffering it

  1. remember high school? 

  2. and voluntary overtime? 


Now read this

Single Responsibility Lines‽

From Wikipedia: The Single Responsibility Principle (SRP) is a computer programming idea: every module or class should have responsibility for a single functionality. All its services should be narrowly aligned with that responsibility.... Continue →