Entry #7: Software Craftsmanship

“Software Craftsmanship with Bob Martin” is a 59 minutes long podcast produced by Software Engineering Radio in the year 2009. The podcast talks about Software Architecture and Agile Development to design software.

Software Craftsmanship is an approach to Software Development that focuses on the coding skills of the Software developers. This "movement" was conceived to detect ills of the mainstream software industry, including the prioritization of financial concerns over developer accountability.

To become a good Software Craftsman, we should take in consideration the following recommendations:

  • IDE: We should take a moment to understand the features of the IDE that we use to code.
  • Version Control: Any software developer must use one of the many free Version Control Systems and introduce it in the project's repository.
  • Bug Tracking: We should use a bug tracker with a web interface.
  • Unit Testing: We should implement Unit Testing on our source code.
  • Acceptance Testing Tool: This tool will help us to ensure that the features that have been done in the requirements document actually are what the customer is expecting.
  • Make sure that you spend personal time in understanding more about of our field. Learn new programming languages like Lisp. Study about the evolution of language paradigms and other topics.

Software Craftsmanship mentions some important points that make craftsmanship a good idea. One of these ideas is the advantage that gives you knowing everything of your code, this knowledge makes you able to handle errors more easily.

Another idea is the added value that every change has to have, because it gives sense to the change and leaves a good reason to take this paradigm. It is also mentioned that the craftsman shares its ideas for the benefit of a community, this idea remembers me to the open-source code. This action helps all the developers and creates a self-learning attitude.

As Bob Martin says, we should see software as a crafting work, with everyone in the team aware of the design, code, and documentation; while we follow an Agile Development approach focused on the client requirements, using the best software practices we can.

Podcast: Software Engineering Radio. (2009). Episode 150: Software Craftsmanship with Bob Martin. Recovered from http://www.se-radio.net/2009/11/episode-150-software-craftsmanship-with-bob-martin/

Comentarios

Entradas populares