Today we will take a first look at the book ‘Apprenticeship Patterns: Guidance for Aspiring Software Craftsmen’. by Dave H. Hoover, and Adewale Oshineye. A collection of patterns meant to guide budding software developers into a mindset that allows them to become the best possible ‘Software Craftsman’ they can be. In This post we will take a look at what it means to be an apprentice, some of the chapters describe the mindset of an aspiring Software Craftsman, and how these can be used to create a mindset focused on career growth.
This book first opens up with a problem that it immediately answers and then builds upon, a theme that is seen throughout every chapter this book has to offer. In this specific case, a question is raised, “What is Software Craftsmanship?”. The answer to this is given to us shortly afterwards. Craftsmanship is not necessarily just an idea or a qualitative measure of one’s skill, but can also be interpreted as a trait, specifically the willingness of one to learn and commit themselves to a practice.
To be an Apprentice is to be in a state of mind, to focus on your own growth. You must accept that there are and will always be better ways of doing things than how you are now. So instead, seek knowledge wherever it may be, from among your peers, from a mentor, whatever resource is available to you.
This is where I fall right now and as I make my way about my third year of college, I have a acquired a surface level knowledge to a variety of different coding languages and seek to learn more. My peers and professors are the main sources of my growth in the field. I am even seeking internship opportunities to surround myself in experienced craftsman that can mentor me.
The Authors then delve into 6 chapters worth of patterns that can apply to many Apprentice craftsman, splitting them into overall topics by chapter. Every chapter begins with a title that is described in its intro text with, chapters two and three’s standing out to me the most. ‘Chapter 2: Emptying the Cup’, ‘Chapter 3: Walking the long road’, and ‘Chapter 5: Perpetual Learning’ are simple mindsets to understand but essential in order to improve your craft.
To “Empty your Cup” is to erase your mind of bad habits, and set aside any pride in your skill to open yourself to different approaches of your colleagues no matter how much you think you know.
To “Walk the Long Road” Is to realize that the path to expertise is walked with diligence. You will not learn anything over the course of a week or even a month but must commit yourself over many years in order to fully understand your craft.
To engage in “Perpetual Learning” you must realize that your craft is always evolving and you must be able to evolve with it. A mark of a truly talented Apprentice is their ability to learn.
These aren’t special at all, these can be learned, you can set your own expectations of yourself and not only meet but exceed them. Since the start of the pandemic, I have lost touch with these ideals always seeking the path of least resistance. I did not learn as much as I could have, and while reading this book has not changed me overnight, it is at least a start to developing a mindset that allows me to improve myself and my craft.
From the blog CS@Worcester – George Chyoghly CS-343 by gchyoghly and used with permission of the author. All other rights reserved by the author.