QCon Session - "Danger: Software Craftsmen At Work"

21 views
Skip to first unread message

Jason Gorman

unread,
Dec 11, 2009, 3:29:23 AM12/11/09
to software_craftsmanship
I'm signed up to do a turn at London QCon in March, and noticed this
session from David Harvey (organiser of SPA, if I'm not mistaken):

-------------------------------------

Presentation: "Danger: Software Craftsmen at Work"
Track: Software Craftsmanship
Time: Wednesday 10:30 - 11:30

Location: To be announced

Abstract:
Many - maybe all - of the ideas and practices being paraded under the
banner of "Software Craftsmanship" are far from new. Skill, knowledge,
expertise, pride in work are fundamentals of any creative endeavour:
their re-packaging, and associated manifestos, positioning, posturing
and advocacy, is building walls between developers, organisations and
customers that we've been trying to break down for the last two
decades. This talk will explore the contrarian position that
craftsmanship is not enough, and that Software Craftsmanship is at
best a distraction, at worst a danger.

Keywords: Craftsmanship, software practice

Target audience: anyone with a role or interest in the development of
software

-----------------------------------

It's interesting for a number of reasons. Firstly, is it a
substantiated claim that craftsmanship is "building walls" in the way
he describes?

Secondly, David spoke to me after the last SPA offering financial and
logistical support for Software Craftsmanship 2010. We were going to
"do lunch", but I never heard from him.

Where's this il wind blowing from, I wonder? Has he had experiences
that we could learn from?

Discuss :-)

Jason Gorman
http://www.codemanship.com

Markus Gärtner

unread,
Dec 11, 2009, 4:01:58 AM12/11/09
to software_cr...@googlegroups.com
Hi Jason,

in late November I had a dialogue with Alistair Cockburn. We noticed
that the construct
of Practices, Principles and Values are used all the time and we jump
up and down on
the scale on these in Agile projects. I noticed that over time we
start to reflect over the
values and need to adapt them, and he asked me whether I had noticed
the manifesto
from the Software Craftsmanship where exactly this value-shift was
done. Reflecting back
what we did with the manifesto and later on with the Ethics is a
reflection over the values
of the Agile manifesto and the underlying principles and revise them
to reflect the
understanding we gained while dealing with the underlying system for
quite some time.

Since we made a value-shift, it becomes obvious to me that not everyone is fully
supporting this value-shift. In fact, the values we have identified
are circling around for
some time and even software engineering had similar ideas about twenty
years in the
past.

Our values of Software Craftsmanship are however worth to be mentioned, since we
reflected on our previous value set, thought wisely on how to improve
it and came up with
a set of values we think that should be followed at this point in
time. Please notice that
just like quality of software for customer the perception of
value-sets in software
methodologies change. This does not mean that our step was less
relevant. Our timely
perception of software development at some point in time is the right
thing to do now.
I'm pretty sure that in some years from now we'll do another
value-shift, since we noticed
another degeneration, over-commercialization, or whatever else, when
the value-system
was followed for a long enough time with success.

For example I claim that currently some people know a bunch about
apprenticeships and
how to teach new colleagues what developing software really means.
This knowledge is
tacit at the moment and the training material mostly informal. Over
time we will get a
better understanding of teaching software development and maybe a new
movement of
more formal trainings will be grown out of our current work. This may
be something,
maybe something good, I'm not that good at fortune telling. But this
would be again another
value-shift of the values we identified about a year ago.

Kind regards
Markus Gärtner
> --
>
> You received this message because you are subscribed to the Google Groups "software_craftsmanship" group.
> To post to this group, send email to software_cr...@googlegroups.com.
> To unsubscribe from this group, send email to software_craftsma...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/software_craftsmanship?hl=en.
>
>
>

Corey Haines

unread,
Dec 11, 2009, 8:33:23 AM12/11/09
to software_cr...@googlegroups.com
I noticed the 5th session is free. I emailed kevlin to see if i could
talk. I'd love to give an overview of where we've been, where we're
going, why we're doing anything at all.

It would be interesting to mine the old XP and agile lists to find the
parallel 'fear of division' arguments that were posed against those.

-Corey
> --
>
> You received this message because you are subscribed to the Google Groups "software_craftsmanship" group.
> To post to this group, send email to software_cr...@googlegroups.com.
> To unsubscribe from this group, send email to software_craftsma...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/software_craftsmanship?hl=en.
>
>
>



--
http://www.coreyhaines.com
The Internet's Premiere source of information about Corey Haines

Mark Nijhof

unread,
Dec 11, 2009, 8:58:06 AM12/11/09
to software_cr...@googlegroups.com
Looking forward to hear your sessions!

Doug Bradbury

unread,
Dec 11, 2009, 9:03:26 AM12/11/09
to software_cr...@googlegroups.com
"Building Walls" is a tough pill for me to swallow. I'd be curious to hear the argument fully fleshed out, but just taking a look around at the open studio days and craftsman swaps and apprenticeships I'd say that if we are building something between developers and organizations, it's bridges, not walls.

Doug

cory...@gmail.com

unread,
Dec 11, 2009, 9:14:54 AM12/11/09
to software_cr...@googlegroups.com
The wall building may not be about walls between developers - but the business. I've heard the argument that the Craftsmanship movement shifts the focus away from the real problem that needs to be addressed with systems thinking.

And to some degree, it's interesting watching what is happening with the Agile Development Skills movement and here. They are quite similar, but to an outsider this seems more of an egotistical movement.

Which is hogwash, of course. But I've seen that perception. Has no one emailed the person doing the session to understand their viewpoint?

Cory (from mobile)
Sent from my Verizon Wireless BlackBerry

Mark Nijhof

unread,
Dec 11, 2009, 9:17:00 AM12/11/09
to software_cr...@googlegroups.com
Just to mention that I was directing my last reply to Corey ;)

I think that the walls is perhaps a perceived conception that
Craftsmanship has such high standards that nobody except for a select
few that are good enough to join it. And that is sort of the message
that gets send out; as a Software Craftsman you have to do this, that
and such, which makes it hard for developers that are new to it to
approach, it is easy to feel not good enough. I assume that the whole
idea of teaching and guiding is not taken into account here.

-Mark

Dave Hoover

unread,
Dec 11, 2009, 9:31:08 AM12/11/09
to software_cr...@googlegroups.com
On Fri, Dec 11, 2009 at 8:14 AM, <cory...@gmail.com> wrote:
> Has no one emailed the person doing the session to understand their viewpoint?

I'm trying to contact him now, I'd like to understand where he's coming from.

Corey Haines

unread,
Dec 11, 2009, 9:35:50 AM12/11/09
to software_cr...@googlegroups.com
I spoke with Kevlin, and I'm slotted in the fifth slot. I'm not
planning on arguing his points, although I think it would be
interesting to hear his arguments, then scan the old XP mailing list
archives to find the same ones. :) There are some fantastic things on
the horizon on the craftsmanship front in 2010, both public and
not-quite-public, so I'll probably focus on some of those things.

I've heard bits and pieces of similar thoughts that are mentioned in
Harvey's abstract. Cory Foy and I have had similar conversations, as
well. In the end, it is a lot of people assuming that what we talk
about is intended to be a message for everyone, everywhere in every
situation. I don't believe that. Saying that, I might title my talk
"If you aren't a member of our movement, you fail." :)

Over the next couple months, I'll be putting thoughts and perspectives
up, as I talk to different people in order to research my talk.


-Corey

Jason Gorman

unread,
Dec 11, 2009, 9:44:09 AM12/11/09
to software_craftsmanship
I'm not a member of any "movement". Perhaps this is what David's
talking about :-)

Jason
> >>> For more options, visit this group athttp://groups.google.com/group/software_craftsmanship?hl=en.
>
> >> --
>
> >> You received this message because you are subscribed to the Google Groups "software_craftsmanship" group.
> >> To post to this group, send email to software_cr...@googlegroups.com.
> >> To unsubscribe from this group, send email to software_craftsma...@googlegroups.com.
> >> For more options, visit this group athttp://groups.google.com/group/software_craftsmanship?hl=en.
>
> > --
>
> > You received this message because you are subscribed to the Google Groups "software_craftsmanship" group.
> > To post to this group, send email to software_cr...@googlegroups.com.
> > To unsubscribe from this group, send email to software_craftsma...@googlegroups.com.
> > For more options, visit this group athttp://groups.google.com/group/software_craftsmanship?hl=en.
>
> --http://www.coreyhaines.com
> The Internet's Premiere source of information about Corey Haines- Hide quoted text -
>
> - Show quoted text -

Corey Haines

unread,
Dec 11, 2009, 9:48:18 AM12/11/09
to software_cr...@googlegroups.com
That's the beauty of when I say 'it isn't for everyone, everywhere,
every situation.' :)

I am part of a movement, and I know a lot of people who share that
mindset. The best part is that, if you choose to not use the term
'movement,' then it is okay. In fact, one might even say you are good
enough, smart enough, and goldarn it, people like you.

-Corey
> For more options, visit this group at http://groups.google.com/group/software_craftsmanship?hl=en.
>
>
>



--

Dave Hoover

unread,
Dec 11, 2009, 9:56:54 AM12/11/09
to software_cr...@googlegroups.com
I'm glad you're speaking at QCon, Corey! I don't really get the
title, though. Maybe it's a joke and I haven't had my coffee yet? :)

Corey Haines

unread,
Dec 11, 2009, 9:58:33 AM12/11/09
to software_cr...@googlegroups.com
Totally a joke. Have some coffee.

Dave Hoover

unread,
Dec 11, 2009, 10:19:35 AM12/11/09
to software_cr...@googlegroups.com
Getting some now....

<mumble>caught in a bad beer => coffee => beer feedback loop</mumble>

Sonya Lowry

unread,
Dec 11, 2009, 10:32:42 AM12/11/09
to software_cr...@googlegroups.com
Speaking as a person who has spent some time on the conference
circuit, it is all about filling the seats. I've often seen
controversial sounding titles and abstracts used to disguise
relatively benign topics. It may be that he isn't speaking against
software craftsmanship at all, but simply warning about the dangers of
taking it to the extreme. I can see lots of fodder there. Just a few
off the top of my head:

Developers: Want to alienate the development community and fast?
Build a school sending the message that you are only a software
craftsman if you are one of the lucky few that get in.

Organizations: After spending the last decade finally bringing IT
focus back on the business to fulfill business needs, suddenly, IT
takes the center of attention back and wants us to just support their
need to be proud of their work?

Customers: If the software engineers focus on building a high quality
product above all else, who is going to make sure it does what I need
it to do?

These, of course, don't reflect what I think most of you believe the
movement stands for, but we all know from experience that everything
gets taken to the extreme by someone along the way. If a warning
against this is what he is giving, then it is a good message to send.
That is, of course, my own conjecture given that I have not had any
discussion with him that might inform these statements. I'm simply
keeping my mind open to the possibility that it isn't an attack at
all.

Sonya

Enrique Comba Riepenhausen

unread,
Dec 11, 2009, 10:43:40 AM12/11/09
to software_cr...@googlegroups.com
Blogged my response to this thread :)

http://blog.nexwerk.com/2009/12/11/danger-software-craftsmen-at-work/

Enrique

Kevlin Henney

unread,
Dec 11, 2009, 1:22:07 PM12/11/09
to software_cr...@googlegroups.com
2009/12/11 Sonya Lowry <sonya...@gmail.com>:
> Speaking as a person who has spent some time on the conference
> circuit, it is all about filling the seats.

As someone who has also spent a lot of time on the conference circuit,
and as the person who is organising the track, I can say that's
perhaps more cynical than the reality :^)

My goal is to make the track informative, interesting and diverse,
something that people want to talk about... which already seems to be
happening!

> I've often seen controversial sounding titles and abstracts used to disguise
> relatively benign topics.  It may be that he isn't speaking against
> software craftsmanship at all, but simply warning about the dangers of
> taking it to the extreme.

This gives some idea of where David is coming from:

http://www.teamsandtechnology.com/dh/blog/2009/05/25/software-craftsmanship-can-we-just-get-over-it/

And is why I invited David to speak. I wanted to bring some
point/counterpoint balance to the track, to offer critical reflection.
David's thoughts and reasoning are normally worth listening to as he
does not say things lightly or without due consideration. I believe
the same is also true of the other speakers I've invited.

Kevlin
--
________________________

Kevlin Henney
+44 7801 073 508
http://curbralan.com
http://kevlin.tel
________________________

DavidH

unread,
Dec 11, 2009, 1:35:55 PM12/11/09
to software_craftsmanship
Hey Jason!

1) re lunch - no sinister motives, just a crazy second-half-of-year.
I'm sorry we've not had a chance to catch up, and not bumped into each
other at xtc etc...

2) On the broader topic: I think these things are worth talking about.
I'm glad that we're talking about them!

Best.

Dave Hoover

unread,
Dec 11, 2009, 2:10:39 PM12/11/09
to software_cr...@googlegroups.com
Thanks for the link. I'll go read that.

Adewale Oshineye

unread,
Dec 11, 2009, 2:13:39 PM12/11/09
to software_cr...@googlegroups.com
David has some interesting points:
1- "I have a problem with the language of software craftsmanship. The
notion that somehow we’ll solve our nascent profession’s problems by
calling ourselves, or regarding ourselves, as “apprentices”,
“journeymen”, “masters” and so on is more than faintly absurd."
I don't think anyone is saying that a mere name-change is enough to
solve our profession's problems. Instead people are actually doing the
work to help each other get better with reading groups, apprenticeship
programmes, code katas and coding dojos. Furthermore I don't think any
of us are arrogant enough to believe we can solve the problems of our
_entire_ profession. Instead we work in our companies and our
communities to help people who want to improve.

2-"Building a community of practice around technical skills is
guaranteed to lead to a “guildification” of the field."
This is a baseless assertion. It has no data and thus it can't be
refuted. It seems to rest upon a belief that none of us has done
research into the failings of the medieval guild system or considered
the ways in which we need to adapt it's lessons if we are to achieve
our limited goals.

I don't see much value in these arguments about strawmen. Whilst I'm
sure it will help sell tickets to QCon if there's the promise that SC
(or a straw man equivalent) will be demolished I don't think it's
really going to help anyone get better at their work. I hope that the
SC track at QCon:
http://qconlondon.com/london-2010/tracks/show_track.jsp?trackOID=327
doesn't become a venue for various speakers to ignore their audience
in favour of jabbing at each other.

I'd like to see a track that helps people answer the following questions:
- What is SC? Is it just romantic tosh or are there some useful ideas here?
- Is SC right for me, my career path and my organisation? If the
interesting conversations "are about breaking down barriers — between
companies and their markets, development organisations and the
businesses in which they’re embedded, software developers and the
users of their software" then maybe it's not right for me.
- If I'm in a non-enterprise environment (remember some of us work in
places where IT is our business and improved skill translates into
increased revenue) does SC apply to me or should I be looking at
Agile?
- How do I tell if my team/organisation/company's biggest problem is
craftsmanship or the lack thereof?
- If SC is right for me then how do I hone my skills? How do I choose
which skills to hone? How do I assess my skills?

P.S.
Yes, I am selling a book about software craftsmanship so I'm biased.
However the most interesting conversations where I work are largely
about the acquisition, growth and transmission of skill(s). This isn't
just computer science or software development but also covers our
interactions with all the people around us.

2009/12/11 Kevlin Henney <kevlin...@gmail.com>:

Sonya Lowry

unread,
Dec 11, 2009, 2:43:15 PM12/11/09
to software_cr...@googlegroups.com
Kevlin,

Thank you for lending credence to my position by extracting only those
portions of my post that were most controversial. :-)

The blog entry you linked does certainly support the suspicion that
the session is intended to be a warning against extremism. Again, I
wholeheartedly agree with the need for such a message. I am happy to
hear that you have included this in your track.

Sonya

Jason Gorman

unread,
Dec 11, 2009, 2:57:56 PM12/11/09
to software_craftsmanship
I was rather hoping for a day of practical sessions and minimal
philosophical debate :-)

I'm not a subscriber to the "master-apprentice" malarky myself. I
wouldn't go as far as to say it's "absurd", but it's definitely not my
cup of tea. It's got a distinct "Big Pointy Hat" feel to it ;-)

Can we separate the debate about whether we should care and take pride
in the quality of our code and practice to get better at doing it from
the path we choose to take on that journey?

Jason Gorman
http://www.codemanship.com
> 2009/12/11 Kevlin Henney <kevlin.hen...@gmail.com>:
>
>
>
> > 2009/12/11 Sonya Lowry <sonyalo...@gmail.com>:
> >> Speaking as a person who has spent some time on the conference
> >> circuit, it is all about filling the seats.
>
> > As someone who has also spent a lot of time on the conference circuit,
> > and as the person who is organising the track, I can say that's
> > perhaps more cynical than the reality :^)
>
> > My goal is to make the track informative, interesting and diverse,
> > something that people want to talk about... which already seems to be
> > happening!
>
> >> I've often seen controversial sounding titles and abstracts used to disguise
> >> relatively benign topics.  It may be that he isn't speaking against
> >> software craftsmanship at all, but simply warning about the dangers of
> >> taking it to the extreme.
>
> > This gives some idea of where David is coming from:
>
> >  http://www.teamsandtechnology.com/dh/blog/2009/05/25/software-craftsm...
>
> > And is why I invited David to speak. I wanted to bring some
> > point/counterpoint balance to the track, to offer critical reflection.
> > David's thoughts and reasoning are normally worth listening to as he
> > does not say things lightly or without due consideration. I believe
> > the same is also true of the other speakers I've invited.
>
> > Kevlin
> > --
> > ________________________
>
> >  Kevlin Henney
> >  +44 7801 073 508
> >  http://curbralan.com
> >  http://kevlin.tel
> > ________________________
>
> > --
>
> > You received this message because you are subscribed to the Google Groups "software_craftsmanship" group.
> > To post to this group, send email to software_cr...@googlegroups.com.
> > To unsubscribe from this group, send email to software_craftsma...@googlegroups.com.
> > For more options, visit this group athttp://groups.google.com/group/software_craftsmanship?hl=en.- Hide quoted text -

Robert Martin

unread,
Dec 11, 2009, 3:24:23 PM12/11/09
to software_cr...@googlegroups.com, software_craftsmanship


Sent from my iPhone

On Dec 11, 2009, at 14:57, Jason Gorman <goo...@parlezuml.com> wrote:

> I'm not a subscriber to the "master-apprentice" malarky myself. I
> wouldn't go as far as to say it's "absurd", but it's definitely not my
> cup of tea. It's got a distinct "Big Pointy Hat" feel to it ;-)

Malarky? Are you saying that a young developer would not benefit from
working with people who have many years of experience and who have a
record of reliable delivery?

Is there a perfect corelation between the Apprentice/Jouneyman/Master
model? Clearly not. The analogy can only be taken so far. On the
other hand the Software Craftsmanship movement does not focus on this
analogy overmuch. Rather it puts the emphasis on professionalism in
the real world.

Jason Gorman

unread,
Dec 11, 2009, 3:44:40 PM12/11/09
to software_craftsmanship
I think it's the language and the connotations some people object to.
We used to call it "mentoring" (and then "coaching", of course), which
had a slightly friendlier, less elitist feel to it. It _does_ put some
people off who really do care about the quality of the code but would
rather eat sand than be labeled an "apprentice" and doth their caps to
someone calling themself a "master".

There are many other ways. If we lose sight of this and keep labouring
the master-apprentice angle (at least, that's what the perception
seems to be, which _is_ our problem even if it's not our fault) then
we may very soon end up in "Agile = Scrum" territory. We don't have to
say it. If the connotation is there, even unintended, it will probably
get siezed on.

The safest route is to stop debating it (because language inevitably
fails us) and, as Ghandi once said, be the change we want to see in
the world :-)

Jason Gorman
http://www.codemanship.com

Nevin Liber

unread,
Dec 11, 2009, 4:20:13 PM12/11/09
to software_cr...@googlegroups.com
2009/12/11 Robert Martin <uncl...@objectmentor.com>
Malarky?  Are you saying that a young developer would not benefit from
working with people who have many years of experience

Who are the people with many years of experience that are an active part of the SC movement?  Are there enough of them to go around (can the movement scale)?

and who have a
record of reliable delivery?

Where can we find this list of software that was reliably delivered by people directly applying the principles of SC?

Is there a perfect corelation between the Apprentice/Jouneyman/Master
model?  Clearly not.

I agree.  But SC has been around for a while now.  There should be more than just rhetoric to support it.
 
Rather it puts the emphasis on professionalism in
the real world.

The theory being that if the underlying focus is on the people who create the products, they will create better products.  But it is just a theory.  One can also theorize that if the focus is on product design, the products and the people who work on them will both get better.

I'm not looking for straw man arguments where these things are diametrically opposed, because they aren't.  Rather, where should the focus be?  Is SC creating demonstrably better products?  If so, what are those products?  If not, why not?
--
Nevin Liber  <mailto:ne...@eviloverlord.com>  (847) 379-5572
Sent from Chicago, IL, United States

Adewale Oshineye

unread,
Dec 11, 2009, 5:52:27 PM12/11/09
to software_cr...@googlegroups.com
2009/12/11 Nevin Liber <ne...@eviloverlord.com>:
These are excellent questions. I'm hoping that others on this list
will have more answers.

Personally I'm not convinced that we have any masters yet. However I
see SC as an aspirational movement. We're not claiming to be the best
we're just claiming that we want to be better and we're looking for
ways to get better.

So in my view it's perfectly legitimate for someone who sees
themselves as an apprentice to find someone who sees himself/herself
as a journeyman to provide mentoring. If we help each other and push
each then one day we may see the kind of qualitative difference that
suggests mastery. But for now that's largely a distraction. We're
better off focussing on improving on yesterday.

Nevin also asks if this movement can scale? I suspect that any attempt
to pass on tacit knowledge by working directly with people won't scale
but I can live with the idea that we won't reach the entire industry.
Trying to reach everybody is one of the ways that the Agile movement
became the watered down concoction we have today. I'd rather make a
meaningful difference in the lives of a few people than have a diluted
impact on large numbers of people.

If you want to see concrete examples of the impact of SC then you'd
have to talk to the clients and staff of companies like Obtiva and 8th
Light. Personally I'm a little suspicious of testimonials and prefer
logic + data.

Dave Hoover

unread,
Dec 11, 2009, 6:15:42 PM12/11/09
to software_cr...@googlegroups.com
On Fri, Dec 11, 2009 at 1:57 PM, Jason Gorman <goo...@parlezuml.com> wrote:
>
> Can we separate the debate about whether we should care and take pride
> in the quality of our code and practice to get better at doing it from
> the path we choose to take on that journey?

To quote my current President: Yes we can! :)

So, now that we've separated those, should we debate...

...whether we should care and take pride in the quality of our code
and practice?
or,
...about the paths we choose to take on that journey?

I can't imagine debating either of these, actually. Who would argue
against caring about and taking pride in one's work? And who would be
willing to dictate a single, correct path to choose on the journey to
mastery?

But I *can* imagine having some interesting discussions around our
experiences on both of these topics. And like Jason has been saying,
let's *show* each other the ways that we're raising the bar. Is
http://katacasts.com a good example of this?

Markus Gaertner

unread,
Dec 11, 2009, 6:28:32 PM12/11/09
to software_cr...@googlegroups.com
> I can't imagine debating either of these, actually. Who would argue
> against caring about and taking pride in one's work? And who would be
> willing to dictate a single, correct path to choose on the journey to
> mastery?

As a swimming trainer I was taught that I reach some of my students with some
exercises, some of my students with some tactile impulses while some others
need to be taught the model by showing them my movements. Keeping in mind that
"correct" is an interpretation from some human, I don't think there is one and
only one correct path to teach anyone anything. People vary in their ways of
getting the hook on something.

I agree that we should stop debating about the course, what to do, whether to
do this or that. Instead we should show each other ways of what proved to have
worked for us. How can we grow and teach students or apprentices what we're
doing? How do they learn what we know how to do?

Kata Casts is one particular way of showing this. Coding Dojos, Code Katas
another. Dave and Ade patterns from their earlier years in software yet
another. Jason's conference in London last year was a great place to show and
share how different successful developers are working. Within their companies,
withing their projects, how they collaborate with other people involved in the
development cycle, etc. Please continue these success stories, and stop the
debates on a "good" or "right" path to follow.

Kind regards
Markus Gärtner

Dave Hoover

unread,
Dec 11, 2009, 6:41:46 PM12/11/09
to software_cr...@googlegroups.com
On Fri, Dec 11, 2009 at 2:44 PM, Jason Gorman <goo...@parlezuml.com> wrote:
> I think it's the language and the connotations some people object to.
> We used to call it "mentoring" (and then "coaching", of course), which
> had a slightly friendlier, less elitist feel to it. It _does_ put some
> people off who really do care about the quality of the code but would
> rather eat sand than be labeled an "apprentice" and doth their caps to
> someone calling themself a "master".

I don't see the problem here. If they don't want to be called an
apprentice, then they shouldn't call themselves an apprentice.

I found the term "apprentice" useful to me. It helped me understand
where I was when I was lost at the start of my career, and it led me
to choose a set of behaviors to help me to become a journeyman.

When I had the opportunity, I created an "apprentice" role at my
company for people who find that role helpful in furthering themselves
as craftsmen. These apprentices receive some mentoring while with us,
but they certainly don't pay reverence (or doth their caps) to our
senior people, and certainly not to any "masters". No one at Obtiva
claims to be a master craftsman. I consider myself a journeyman, and
only transitioned into journeyman 4 years ago.

Who is openly calling him/herself a master craftsman? And forcing
apprentices to doth their caps? I feel like I must be missing
something.

Raoul Duke

unread,
Dec 11, 2009, 6:42:51 PM12/11/09
to software_cr...@googlegroups.com
> As a swimming trainer I was taught that I reach some of my students with some
> exercises, some of my students with some tactile impulses while some others
> need to be taught the model by showing them my movements. Keeping in mind that
> "correct" is an interpretation from some human, I don't think there is one and
> only one correct path to teach anyone anything. People vary in their ways of
> getting the hook on something.

this kind of issue has come up on various mailing lists i'm on, of
late, and it has been hard to get people to go with this "learning is
relative" thought. (well, sometimes people agree, but then say they
don't have the resources to pursue it.) so thank you for saying it ;-)

sincerely.

Raoul Duke

unread,
Dec 11, 2009, 6:49:17 PM12/11/09
to software_cr...@googlegroups.com
> Who is openly calling him/herself a master craftsman? And forcing
> apprentices to doth their caps? I feel like I must be missing
> something.

i worry this discussion might just stay divided, even though there is
probably a fair amount of actual overlap and agreement.

the point is that language has lots and lots and lots of subjective
and subconscious and implicit and suggestive and contextual and
arbitrary meaning that comes along with it. denotation vs.
connotation. e.g. ever hear of NLP?

just because you didn't hear anybody talking about forcing things
doesn't mean the language of e.g. "apprentice" is safe to use. of
course, just because somebody else has a hang-up about "apprentice"
doesn't mean you shouldn't use the term.

everybody should be careful. tho i think it is most important for the
people who are "selling" or "pushing" or at least "advocating"
something to take on the responsibility of going out and working with
the customer to "get it". to make sure things aren't mis-conveyed. and
to honestly seek out such misunderstanding and to refactor how they
say things to avoid it in the future.

i mean, shoot, isn't that just good (ethical and i hope successful) marketing?

sincerely.

Dave Hoover

unread,
Dec 11, 2009, 7:01:45 PM12/11/09
to software_cr...@googlegroups.com
On Fri, Dec 11, 2009 at 5:49 PM, Raoul Duke <rao...@gmail.com> wrote:
>> Who is openly calling him/herself a master craftsman?  And forcing
>> apprentices to doth their caps?  I feel like I must be missing
>> something.
>
> i worry this discussion might just stay divided, even though there is
> probably a fair amount of actual overlap and agreement.

Yep, I'm sure you're right, on both points. :)

> the point is that language has lots and lots and lots of subjective
> and subconscious and implicit and suggestive and contextual and
> arbitrary meaning that comes along with it. denotation vs.
> connotation. e.g. ever hear of NLP?

Yep, I'm familiar with NLP, I was a narrative therapist before I
became a programmer.

> everybody should be careful. tho i think it is most important for the
> people who are "selling" or "pushing" or at least "advocating"
> something to take on the responsibility of going out and working with
> the customer to "get it". to make sure things aren't mis-conveyed. and
> to honestly seek out such misunderstanding and to refactor how they
> say things to avoid it in the future.
>
> i mean, shoot, isn't that just good (ethical and i hope successful) marketing?

Who is the customer? Who is the advocate? Can we speak in examples
rather than be vague? I'm lost again about how this relates to
software craftsmanship.

Raoul Duke

unread,
Dec 11, 2009, 7:07:42 PM12/11/09
to software_cr...@googlegroups.com
> Who is the customer? Who is the advocate? Can we speak in examples
> rather than be vague? I'm lost again about how this relates to
> software craftsmanship.

my subjective interpretation of what happened up to this point is:

1) somebody complained that SC is bad news, and one particular damning
accusation was over terminology used in SC.

2) one reaction to that was that the person from #1 was wrong
apparently partially at least because of how they interpreted those
words used in SC.

3) i tried to say that language is tricky and maybe there's some room
for the "opposite" sides coming together to talk over the subjective
issues which are leading to trouble. and that in particular the folks
from #2 should be more willing to give the people from #1 the benefit
of the doubt -- to make a better effort to reach out. and to consider
that maybe the terminology used is actually not ideal. (maybe doing so
will reveal that things aren't so far apart, or it will actually
strengthen the stands of opposition against one another.)

sincerely.

Jason Gorman

unread,
Dec 11, 2009, 7:33:55 PM12/11/09
to software_craftsmanship
I think this is a very interesting discussion. Firstly because it's
great fun to try and debate the fragility of language when trying to
convey complex ideas using, well, language :-)

The second very interesting thing is that - and I could well be wrong
- but haven't we had this debate before? And I'm going back much, much
further than "software craftsmanship".

I am a software craftsman. In the sense that I understand it. I'm
fastidious about the code that I put my name too. I've spent a couple
of decades trying new ideas and technqiues, reading hundreds of books
on software development, reaching out to other programmers who seem to
share my passion (and a few who don't) and generally being a pain in
the backside in the way only us software craftsmen can :-)

I really, really love it when someone I'm working with or who visits
my web site gets the bug, and even more delighted when they pass their
newfound enthusiasm to other programmers. It feels great. I bet that's
how Simon Cowell feels most days. Only with less money, alas.

And it's great to have a buzzword that makes it easier for me to
identify other people who might share my passion. And there's been a
succession of such buzzwords. But they serve a similar function to
social networking sites. One year all my friends are on Friends
Reunited, the next Facebook, and Twitter the next. And, just like
social networks, it doesn't take long before the "Internet Marketers",
"Social Media Gurus" and "Entrepreneurs" move in and take over,
effectively lowering the tone of the neighbourhood. So the smart,
passionate, interesting people who aren't selling anything move on to
a new buzzword, leaving the marketeers and success coaches to feed off
the hoardes of late adopters who don't seem to care that they're
living on the equivalent of the Costa Del Sol. I don't really know
where I'm going with this analogy...

Anyhoo, I think what I'm trying to say is that what makes "Software
Craftsmanship" is the lovely neighbourhood with relatively unspoilt
views and delightful rustic local charm. When the Scrum Meisters and
Kanbangers move in in force (and they will if they smell an untapped
market) I'll be packing my suitcase and checking the atlas for the
next undiscovered code quality haven. Or something ;-)

In the meantime, what I actually do on a day-to-day basis is what
really matters. And I'm very interested to see what other craftsmen do
because I invariably learn something new. Basically, you show me yours
and I'll show you mine.

In that respect, these discussions are just smalltalk ;-)

Jason Gorman
http://www.codemanship.com

Raoul Duke

unread,
Dec 11, 2009, 7:39:06 PM12/11/09
to software_cr...@googlegroups.com
> In the meantime, what I actually do on a day-to-day basis is what
> really matters. And I'm very interested to see what other craftsmen do
> because I invariably learn something new. Basically, you show me yours
> and I'll show you mine.

valid point. it makes me think that there are many audiences, or many
different types of interest around any given thing (SC in this case of
course). some of those don't give a rats ass about other people being
confused. while yet others do. probably nothing too drastically wrong
with either, as long as they don't go trying to drag the others into
their perspective. unfortunately there's only one mailing list which
means there can be a lot of stuff that looks like spam / tilting at
windmills to one or the other group?

sincerely.

Paul King

unread,
Dec 11, 2009, 7:53:55 PM12/11/09
to software_cr...@googlegroups.com
On Sat, Dec 12, 2009 at 10:01 AM, Dave Hoover <dave....@gmail.com> wrote:
> On Fri, Dec 11, 2009 at 5:49 PM, Raoul Duke <rao...@gmail.com> wrote:
>>> Who is openly calling him/herself a master craftsman?  And forcing
>>> apprentices to doth their caps?  I feel like I must be missing
>>> something.
>>
>> the point is that language has lots and lots and lots of subjective
>> and subconscious and implicit and suggestive and contextual and
>> arbitrary meaning that comes along with it. denotation vs.
>> connotation. e.g. ever hear of NLP?
>
> Yep, I'm familiar with NLP, I was a narrative therapist before I
> became a programmer.

Code therapist has a nice ring to it! ;-)

I tried to refactor the code but it had Mother Object issues
and didn't want to change!

Paul.

Dave Hoover

unread,
Dec 11, 2009, 8:01:58 PM12/11/09
to software_cr...@googlegroups.com




On Dec 11, 2009, at 6:53 PM, Paul King <paul.ki...@gmail.com>
wrote:

> On Sat, Dec 12, 2009 at 10:01 AM, Dave Hoover
> <dave....@gmail.com> wrote:
>> On Fri, Dec 11, 2009 at 5:49 PM, Raoul Duke <rao...@gmail.com> wrote:
>>>> Who is openly calling him/herself a master craftsman? And forcing
>>>> apprentices to doth their caps? I feel like I must be missing
>>>> something.
>>>
>>> the point is that language has lots and lots and lots of subjective
>>> and subconscious and implicit and suggestive and contextual and
>>> arbitrary meaning that comes along with it. denotation vs.
>>> connotation. e.g. ever hear of NLP?
>>
>> Yep, I'm familiar with NLP, I was a narrative therapist before I
>> became a programmer.
>
> Code therapist has a nice ring to it! ;-)

My official title at ThoughtWorks was Software Therapist. :)

Adewale Oshineye

unread,
Dec 12, 2009, 12:11:30 AM12/12/09
to software_cr...@googlegroups.com
2009/12/12 Jason Gorman <goo...@parlezuml.com>:
There was a session at the recent XPDay in London that seems
pertinent: http://xpday-london.editme.com/WhereHasXpGone
Sadly I missed it but many of the concerns seem highly relevant to
what we're discussing here.

DavidH

unread,
Dec 12, 2009, 2:58:21 PM12/12/09
to software_craftsmanship
Back from a day of travelling: two things:

(1) Thanks for the comments, discussion, feedback. I'm happy to have
sparked something off, and I'm impressed by and grateful for the
thoughtful responses, whether agreeing or disagreeing.

(2) A couple of comments on my blog, from Bob Martin and Dave Hoover,
and my response: http://www.teamsandtechnology.com/dh/blog/2009/05/25/software-craftsmanship-can-we-just-get-over-it/

Best, David

Chris Parsons

unread,
Dec 14, 2009, 10:25:43 AM12/14/09
to software_cr...@googlegroups.com
Perhaps I can offer my thoughts on the discussion by way of an account of our experiments at Eden with the "apprenticeship" metaphor:

About a month ago, we created a new "apprentice" role at our company, where devs can spend some time working under the more direct supervision of a "mentor". Once finished, that person becomes a "senior craftsman". This is a senior role which has a great deal of influence over the company from a technical and business standpoint. 

We've left the original developer roles alone and they operate much more traditionally. In that sense we're trialling the metaphor to see how it works. In practice so far those with the job title of "apprentice" simply get a bit more directed input and have made a commitment to learn aggressively and share those experiences.

We've given a good deal of thought as to how this all works in a work environment. We chose "senior craftsman" instead of "journeyman" - I know very few people who are actually journeying in the traditional sense. Also everyone who wants to be can be a "craftsman", no matter what stage they're at. IMO it's more a state of mind than a level of ability or experience.

We are also wherever possible using the terms as verbs not nouns in everyday use: "R is apprenticing to C", "C is mentoring J", for example. Those who might have a job title of "apprentice" (or not) also "mentor" others (including seniors) in specific areas they are particularly strong in.

Certainly we're not taking the metaphor as far as the "master": I just don't think that's helpful to anyone at the moment. All of us know people who are more experienced than us, who can "mentor" us. I say let's just leave it at that. Rather than seeking actively seeking "apprentices" (which indirectly sets ourselves up on a pedestal), let's be actively seeking "mentors" and passively open to "apprenticing" others who ask us. That way we'll be helpful and inclusive, taking the lowest place at the table.

Hopefully that gives some insight in to how this language might in a professional environment. Bandying language around is rather like a waving a loaded weapon: it has powerful influence, but people can get hurt :) We've purposely treaded very carefully at Eden to try and bring in the best of the "apprenticeship" metaphor without all the trappings. IMO software "apprenticeship" is completely optional and orthogonal to the concepts of software "craftsmanship".

I'll be at QCon in March: looking forward to the talks and some good discussion with people who are there.

Chris

2009/12/12 DavidH <da...@davethehat.com>

--
Chris Parsons
CEO ~ Eden Development (UK) Ltd

ch...@edendevelopment.co.uk
http://www.edendevelopment.co.uk
http://twitter.com/chrismdp
0845 0097 094

Chris Parsons

unread,
Dec 14, 2009, 10:45:19 AM12/14/09
to software_cr...@googlegroups.com
2009/12/11 Jason Gorman <goo...@parlezuml.com>
>
> I think it's the language and the connotations some people object to.
> We used to call it "mentoring" (and then "coaching", of course), which
> had a slightly friendlier, less elitist feel to it. It _does_ put some
> people off who really do care about the quality of the code but would
> rather eat sand than be labeled an "apprentice" and doth their caps to
> someone calling themself a "master".

Yes, exactly. It's all about who's doing the labelling and using verbs
not nouns IMO. No-one has the right to label others as "apprentices"
and themselves as "masters". If we use this metaphor as all, let's
make sure we're "apprenticing", and asking others to "mentor" us.

> The safest route is to stop debating it (because language inevitably
> fails us) and, as Ghandi once said, be the change we want to see
> in the world :-)

I still think it's worth the debate (at least up until this point),
because the language is out there and being used now, and in order to
save it we need to clearly define it (or give it up for lost! :)

Chris

>
> Jason Gorman
> http://www.codemanship.com
>
> On Dec 11, 8:24 pm, Robert Martin <uncle...@objectmentor.com> wrote:
> > Sent from my iPhone
> >
> > On Dec 11, 2009, at 14:57, Jason Gorman <goo...@parlezuml.com> wrote:
> >
> > > I'm not a subscriber to the "master-apprentice" malarky myself. I
> > > wouldn't go as far as to say it's "absurd", but it's definitely not my
> > > cup of tea. It's got a distinct "Big Pointy Hat" feel to it ;-)
> >
> > Malarky?  Are you saying that a young developer would not benefit from
> > working with people who have many years of experience and who have a
> > record of reliable delivery?
> >
> > Is there a perfect corelation between the Apprentice/Jouneyman/Master
> > model?  Clearly not. The analogy can only be taken so far. On the
> > other hand the Software Craftsmanship movement does not focus on this
> > analogy overmuch. Rather it puts the emphasis on professionalism in
> > the real world.
>
> --
>
> You received this message because you are subscribed to the Google Groups "software_craftsmanship" group.
> To post to this group, send email to software_cr...@googlegroups.com.
> To unsubscribe from this group, send email to software_craftsma...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/software_craftsmanship?hl=en.
>
>



David Harvey

unread,
Dec 14, 2009, 11:39:46 AM12/14/09
to software_craftsmanship
Having kicked all this off, I have to say I'm very much aligned with Jason's thinking on this, and on what Chris is saying. I _like_ craftsmanship with a small-c, mentoring, coaching, pairing - all the words we're used to using for describing the collaborative learning and teaching that goes on. It goes without saying that I think it's important to understand the language that we use, even given language's limitations, and so I' glad to have provoked the debate.

btw I'm alarmed to see that this thread has acquired a *SPAM* flag. I've seen (pretty much) nothing but serious, respectful and good-natured debate and inquiry in this thread, so am somewhat surprised by this. Prepared to believe it's just an accident...

Best

David.
------------------
David Harvey
www.teamsandtechnology.com
www.cateams.com
@david_harvey


2009/12/14 Chris Parsons <ch...@edendevelopment.co.uk>
Reply all
Reply to author
Forward
0 new messages