Any given sunday for a software craftsman

Posted by Sourced Blog on April 16, 2017 1008 words, 5 minute read

There are a couple of movie scenes that stay with you for the rest of your life. They transcend the screen and bury themselves inside your side, becoming a part of how look look at life and how you treat yourself and the people around you. For me, one of those scenes is Al Pacino’s speech in Any Given Sunday. Granted, not the best film by itself, but the pre-game speech is one of the most inspiring collection of words to ever been said with only a few exceptions. Sure, it’s fictional and part of a movie, but they are words worth living by.To me, it’s the summary of a life of a software craftsman. We’re in hell right now. We’re a relatively young movement, as far as IT goes. Most people tend to look at us as ‘difficult’ people. We’re always defying the current status quo in our industy. We challenge the ‘laissez-faire’-mentality that we have seem to have accepted as a reality.

It’s really a grassroots movement. Software craftsmen tend to flock together and have meaningful discussions, such as the SoCraTes meetups in Europe. And we’re not alone, just have a look on to see the sheer number of meetups on Software Craftsmanship in your neighborhoud: there’s a good chance you’ll find one. And I whole-heartedly promote going to one of these meetups. It’ll expand your horizon.Recently, a 30 minute talk of mine at a SoCraTes meeting resulted in a 2 hour discussion. It was about enforcing an ethical code in IT. In hindsight, I was probably more acting like an instigator in the discussion, trying to draw out the passionate positions that software craftsmen are prone to take. The conclusion on the original question was that ethics are a purely personal aspect and therefor cannot be enforced on an entire industry. But the discussion broadened on what it means to be a software craftsman and what the consequences are once you embark on that path. And that’s where things got really interesting.

Being a software craftsman is not easy. They’re often seen as disruptive forces within an established team because of their level of passion. Most of us have either been fired or have quit a job because we’re just fed up with the lack of software craftsmanship. So if you’re willing to take the easy road, just follow the crowd and stay out of the wind, because boy, we take on quite some of that. We take pride in our job and we have a set of principles we won’t bend or break. Personally, I’ve always tried to take a pragmatic approach but at the end my true nature always surfaces and yes, I’ve been fired for my beliefs (mainly because situation that consistently force me to break my beliefs bring out the worst in me). It’s risk that I’m willing to take but something that I wasn’t aware of at that time. Getting fired hurt like hell and took me on a wild mental ride which took some time to recover from. Now, months later, I realize that I was right the entire time, although I made mistakes along the way, but my intent was pure. I don’t have any regrets but I learned a great deal out of that experience.

Software craftsmanship is about being in a team. Not by name, but by nature. It’s about being in a group of people that are willing to go that inch together with you. To be willing to die for that inch alongside you. And that share the same level passion as you or even surpassing it. I’ve met people in the last year that I respect tremendously, more that I have in the last 10 years. People that I’m quite sure aren’t easy to work with (but neither am I), but will deliver at the end in the most professional way possible. After 10 years, I’m fairly certain when I say that the only true teams in our industry are built out of software craftsman. At the same time I’m saddened to realize that in the last 10 years I’ve not really have been part of a true team if I take into account my current definition of a team.

In February I wrote an article where I said that I didn’t see myself as software craftsman yet. In hindsight I might have been wrong. If software craftmanship is about passion and the pursuit for a better future, then yes, I’m a software craftsman. I have still a lot to learn, but everyone in our industry does. It’s our drive to learn that makes us great. So if you’re wondering whether you’re a software craftsman or not, just look in the mirror and ask yourself how passionate you are about your profession. Go and attend a meetup, preferably an open space and do a talk on what you’re passionate about. If nothing else it will free you from your boundaries and you don’t ever have to be afraid that someone would ridicule what you’re presenting. Whether you have 1 or 10 years of experience, it doesn’t matter, everybody’s on equal footing.

In my experience, many cases software craftsman are seen as Chicken Little telling the world that the sky is falling. While the situation might not be as dire as that, we’re not sitting on a bed of roses either. There’s still too many shitty software being delivered and shipped to clients, all in the name of short-term profit. Our industry is capable of so much better that that and that’s what software craftsmanship is about. We’re not in this for our individual gain or enrichment, it’s quite a selfless movement.

So what’s my stance on software craftsmanship? Well, to paraphrase: if there’s any professional life in me, it’s because I’m willing to be and remain a software craftsman. And I look around me and see people that are willing to go that inch together with me. I see the light and I’m going for it.

So… what are you gonna do?