This post ain't gonna be a speech of Uncle Bob's Software Craftsmanship Manifesto. We've all known that. And to people who don't, for God's sake. Google.
Well crafted software means regardless how old the application is, developers can understand it easily, side effects are well known and controlled, high test coverage, clean design, business language well expressed in the code and adding or changing features does not take longer than it used to take when the codebase was small.
Software craftsmanship, by all means, is an approach to software development. It features and highlight the coding skills of the developers themselves.
Craftsmanship plays a vital part in engineering excellence, and it's not a low hanging fruit to grab within a day. It takes time to master, it reveals a lifestyle that developers choose to take responsible for their career path. It's about improving the crafts and be the best version they can. A craftsman takes pride in his work and strives to turn the best into better.
A problem knocks on the door, we dig into the root cause and draft the first version of a solution. Things can't be perfect. but it can always be optimized. We make things happen first, then make it right, then make it better. That flows among the organization DNA, or doesn't exist at all.
It isn't a set of certificates. It's a progress of try, fail and learn. You don't pour experience over your skin and hope it absorbs, you understand once you start doing it yourself. It's good to know what the final result could be, but putting that into practice is a whole different ball of wax.
Craftsman don't form a reputation by preaching the craftsmanship philosophy. They live it.
Subscribe for “The Next Bytes” where Han & the crew draft up our observation in the industry.