Through a very fortunate accident, I’ve been involved with the Software Craft movement almost since its beginnings. It’s been almost 10 years of non-stop learning, meeting people who I respect and learn from, and meaningful conversations. Yet I always felt something was missing.
Software Craft is a loose, young, complex, and evolving social movement. It represents different things for different people. Some see it as a belief system. Others see it as a renewal of old guilds. Some see it as a metaphor, while others recognize its realities. For others, it is a pragmatic idea, required for an industry in its teenage years.
All these viewpoints, despite being contradictory, make sense. From a logical perspective, I understand all of them. But what was missing was my personal answer to an important question: what is so appealing about the Software Craft idea?
Why did I spend many days at Code Retreats? Why did I pair with so many people? Why do I practice TDD, refactoring, software design, and software architecture? Why did I facilitate hands-on events? Why did I speak about Software Craft? Why was I part of SoCraTes and I TAKE Unconference? Why do I still want to travel and talk about it? Why am I writing about this?
You might think I have nothing better to do. Well, I enjoy geeking out about Star Wars, MCU, or Star Trek. I like to read. I play Starcraft II and Civilization. I like to cook. I love single malt scotch (the smokier the better). And that doesn’t even mention work. I could go on, but you get the point. So why Software Craft?
I’m writing this just minutes before leaving to my brother to have a grill together. While I was prepping the ingredients, in one of the rare moments of sudden discovery that can only appear in a relaxed mind, I finally understood my emotional bond with Software Craft.
You see, I couldn’t just go to the grill. I spent about an hour to make the right cuts, to make a marinade, to plan the next steps. In the same way, I can’t just play Starcraft II; I practice my builds, master my keystrokes and improve my micro. I can’t just write; I’m reading about phrase structure, creating flow and improving my English. I don’t do these things because I want to, I do them because I feel that I have to. And software development just gets the same treatment as everything else.
It boils down to this: I strongly believe that whatever is worth doing, it’s worth doing right.
This simple and direct statement explains a lot. It explains why I choose to work only on certain things. It explains why I’m focused on education. It explains why I’m always seeking for improvements, and why I’m never fully happy with my work.
The Software Craft movement is the opportunity to learn what is right for software development. It’s not a promise. It’s not a certainty. It’s not perfect. But the things I’ve learned, the people I’ve met, the meaningful conversations I’ve had are very good reasons to continue.
Everything is much clearer now.