Johannesburg, 15 May 2014
Many people are familiar with the medieval concept of guilds, craftsmen, journeymen and apprentices. The guilds, which were associations of craftsmen, existed to protect their members' interests. In the European guild system, only masters and journeymen were allowed to be members of the guild. An aspiring master would have to pass through the career chain from apprentice to journeyman before he could be elected to become a master craftsman. He would then have to produce a sum of money and a 'masterpiece' before he could join the guild. Most of the business practices in the guild system are today illegal but many of the concepts survive, particularly the idea that an apprentice in a craft acquires skills by hanging around a master and helping with his work.
Some niche industries still use this idea to produce skills but according to Richard Firth, serial entrepreneur and CEO of MIP Holdings, software developers are also looking at the idea of craftsmanship as an approach to career development.
"Software development can be characterised as a craft very easily," notes Firth. "It is the process of producing a polished, finished software product from raw materials using skills and experience built up over many years study and practice. It is very like carpentry in many respects: the beginner needs to first become very comfortable with the basic building blocks before they can construct something original. And the industry is too young - 60 years old - and the finished work too ethereal for there to be many masters around. This suggests that we have an enormous opportunity to adopt the guilds' approach to skills development and produce a new generation of journeymen and eventually, masters."
But as Firth points out, the modern workplace is not really one where an apprentice can be mentored by a craftsman.
"Today's workplaces are hostile to the idea of software craftsmanship," he says. "In Dave Hoover's book Apprenticeship Patterns, which explores the idea of the software craftsman, he writes that 'most people have to claw and scratch their apprenticeships out of less-than-ideal situations. They might be facing overbearing and/or incompetent managers, de-motivated coworkers, impossible deadlines, and work environments that treat novice developers like workhorses, storing them in small, rectangular stalls with a PC and a crippled Internet connection.'"
Firth says that organisations can promote the pursuit of craftsmanship in their developer bases by first attending to the basics.
"Do your developers have quiet workspaces? The very best workstations and Internet connections? Do they attend the very minimum of meetings? Are there senior developers on the team who can actively mentor them? If none of these conditions are true, then your apprentices will remain apprentices."
Share