The apprenticeship discussion

Thanks to Dave for clarifying, again, his concept of an apprentice as someone who’s been working in Software Development for less than five years.

I think that even within my first five years of software development, there were levels of promotion which may have been less clear-cut than a move into management. Becoming a software designer, learning to write customer requirements and convert them into acceptance tests, and mentoring junior developers were roles which I took on during this apprenticeship as I felt ready for them. So I understand and agree with Resist the Promotion, but I still think it’s important to recognise your own growth and take the next steps as they come to you.

Dave, you don’t have comments turned on in your blog, so I’m putting this here. A couple of phrases in your post gave me the impression that Resist the Promotion vs Step On Up might have annoyed you; if so, I apologise. My image of you and Pat as masters was based on my perception of your blogs, and your lovely website, not through any personal knowledge of you or your client work. As ever, perception is an interesting phenomenon, and again I learn something that should have been common sense: just because people know things that you don’t doesn’t mean they’re more experienced than you are.

This entry was posted in Uncategorized. Bookmark the permalink.

2 Responses to The apprenticeship discussion

  1. anonymous says:

    I think y’all should be careful with the apprenticeship discussion. In particular, there’s a danger of building reference upon reference to get very high level abstract concepts and not realizing that the foundation is on sand.

    For example, Dave sets a time period of “at least 5 years” for apprenticeship, and says in his blog that due to various circumstances will commonly be much longer. However, this is based on statements made in the book Software Craftmanship plus some of his own modest experience. This book, while excellent, isn’t a factual reference or based on rigorous research. It’s primarily an opinion on how software can be built. As the author himself says “The concept of software craftsmanship has been around for a long time, the book is my interpretation of those ideas and the challenges that face software developers and the users of software”.

    A big problem Dave’s blog is that he justifies and clarifies often by quoting works such as Software Craftsmanship. For example, he says “According to Pete McBreen, ‘An apprenticeship will last at least five years'”. By making this reference Dave seems to asserting that it’s authoratative. But it’s not.

    You end up in an interesting chain. McBreen is summarizing many developers, projects, and people in a book that’s largely opinion. Dave is then basing ideas based on that book. And you are referencing Dave. Along the way people forget that the entire chain is based on assumptions and opinions with very little raw facts mixed in. I think you do OK in recognizing this but Dave et al do not.

    I hope that you don’t fall into the same logical hole that Dave does (ultimately I don’t think you will). Specifically, Dave is focusing so hard on specific definitions and the process, and inadvertently turning opinion into facts, that he’s putting the cart before the horse and letting the tail wag the dog.

    In fact the whole “craftsmanship” idea is a very loose analogy and should not be taken too far. When you go too far you can worry so much about the analogy that you forget to do your job. And in particular I find that most of Dave’s comments and details are based on highly arbitrary definitions and transition points and he shows signs that he’s getting sort of married to these artificial definitions. In these sorts of discussions that’s really dangerous, because what it really means is that each person can concoct their own arbitrary definitions and transition points willy-nilly, and the end result is that no one is discussing reality anymore. If you read his blog entry today clarifying all this, you can see that he’s speaking highly authoratively. But the ‘authority’ is primarily his opinion and the opinion of another book author.

    Dave does wiggle out of this by stating “For the purposes of the apprenticeship patterns, I am basing my understanding of these concepts on Software Craftsmanship by Pete McBreen and Mastery by George Leonard”. But he needs to recognize that just because he has picked these references does not mean that they are universally recognized (or that even a fraction of developers agree with those viewpoints).

    In all I think your flowing, loser interprations of the underlying gestalt of craftsmanship is much more appropriate and based on true reality than Dave’s rather abstract and arbitrary pursuits.

  2. sirenian says:

    Thank you.

    I think I have a bigger world view than the software developers at which Dave is aiming his patterns, largely because I’m going through an apprenticeship as a writer and a poet too. It’s sometimes hard for me to work out where the boundary between writing and software development lies.

    In terms of providing guidance for newbie programmers, I think Dave’s doing a really good job. It’s the kind of advice I could have used when I started out. If I had followed the advice implicit in the patterns and combined it with a good reading list I could probably have been two years ahead of where I am now in software development terms – but then, I probably wouldn’t have become a poet.

    I think that writing poetry has improved my ability to communicate both on a written and a personal basis, and given me an appreciation of other people’s point of view that no amount of technical ability could. So while I think that the apprenticeship is important, I still maintain that one should prepare for the future – the “journeyman” stage – too. There’s no point becoming a technical expert if you get to the end of five years with no social skills. That was the thinking behind my original proposal for “Step On Up”; because there are skills that can be lost in the pursuit of technical excellence as well as gained, and it’s only by making the transition to an interactive / customer-facing (Dave says “managerial”) role that you really learn to appreciate their importance.

    I’ll point Dave to these comments (assuming he isn’t lurking already); he should have a say here.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s