The Worst Programmer I Ever Met
Submitted by Steven Deobald (@stevendeobald) on Tuesday, 19 January 2016
Relationships are hard. Software is hard. FOSS communities often represent the most difficult intersection of these two axes. Attendees will come out with practical lessons and tools for working in teams, bettering themselves, and avoiding some of software’s most expensive mistakes.
Six years ago, I met the most destructive programmer of my career. He wrote huge systems full of complexities and interdependencies that no one else on our 10-person team could easily understand. His attitude was dismissive, poisonous, and adversarial. When confronted, he would work harder, faster, and often in secret to mould the codebase into a shape he preferred. Even in a closed environment, he at one point created a fork. After he was fired, it took years and millions of dollars to undo the damage he had done.
And yet, we all make many of the mistakes he made. Some of these mistakes we make on a daily basis. Some on different scales. It is important for us to understand, technically and socially, the cost of the actions we take – and the actions we don’t.
This talk will walk through specific examples of code, abstractions, architectures, and collaboration styles which can break software systems, destroy teams, and make your project’s community unhappy. We will, of course, learn how to avoid these pitfalls and heal the wounds when we inevitably come across them.
Steven has a made a lot of mistakes in his career, some more serious than others. There are costs – both quantifiable and elusive – to every action we take. Recognizing and understanding these costs has been one of the most profound learnings in his short 15-year career which has spanned a variety of teams: healthy and unhealthy, open and closed, insightful and destructive.