Episode 150?: Uncle Bob´s tips for Software Craftsmanship


In this podcast, we heard Bob (better known as Uncle Bob) talking about Software Craftsmanship, a very interesting title for what the architects (should) do. The first argument that Bob tells us is the one I will be focusing on this article; the best kind of architect is the one who codes. So, what did Bob meant with this?



As we have talked about on the past entries, there is a big distinction between a boss and a leader; being the latter the one that brings some kind of balance between directing and acting. While the boss is the one that only points at what needs to be done, the leader works with the team towards that goal. Bob points out that the separation of leaders of the team from coding is a huge problem, that’s why architects must get involved with the work that is being made.

Why is this important? Because leaders that don’t get involved make critical decisions and then unbind themselves from the project. This “urge” to get everyone involved in the project is the reason why EX programming and the Software Craftsmanship surges. Something curious mentioned in the podcast is that the Manifesto for Software Craftsmanship is based on the Agile Manifesto, but with some added features; focusing on well-crafted software, steadily adding value, building a community of professionals and get productive partnerships.

Something curious that Bob pointed out, was the importance of, not only knowing about the programming language you are using, but also know inside-out the IDEs used. This helps making faster code, quicker debugging, and applying other tools the IDE may have. And one final observation was the importance of getting to know one dynamic, static, functional and one logical language, as getting to know how each “paradigm” works will improve the way people code and how they approach challenges.


Finally, the important part of software projects that needs to be stressed out is that software leaders shouldn’t be segregated from the coding teams; architects must act as a guide for the whole team to tackle obstacles that initial “planning” could lead to. It is utterly important that leaders can help by, not only proposing ideas, but implementing them. 

References:
Martin Robert (2009). Software Craftsmanship. Produced by Software Engineering Radio, available on: http://www.se-radio.net/2009/11/episode-150-software-craftsmanship-with-bob-martin/

Comments

Popular posts from this blog

Chapter 4: Architectus Reloadus vs Architectus Oryzus

Chapter 11: Metaprogramming

Chapter 9: Microservice Architecture: A whole new Architectural world.