craftsmanship is the new agile.

24 views
Skip to first unread message

Paul Pagel

unread,
Jan 7, 2011, 12:49:39 PM1/7/11
to software_cr...@googlegroups.com
I have been thinking of SC's relationship to the agile lately, as much of the SC community and buzz in the last year(s) has been a reaction to some of the perceived gaps and faults.

Ralf Westphal

unread,
Jan 8, 2011, 5:36:30 AM1/8/11
to software_craftsmanship
I don´t concurr with Paul. I´d even go as far as saying: calling
Software Craftsmanship the Post-Agile movement would do harm to SC and
the industry.

For a more elaborate answer see my blog post at: http://bit.ly/erlYNH

On 7 Jan., 18:49, Paul Pagel <paulwpa...@gmail.com> wrote:
> I have been thinking of SC's relationship to the agile lately, as much of the SC community and buzz in the last year(s) has been a reaction to some of the perceived gaps and faults.
>
> The expanded thoughts are here:http://blog.8thlight.com/articles/2011/1/6/post-agile-standing-on-the...

Kurt Häusler

unread,
Jan 8, 2011, 6:28:22 AM1/8/11
to software_cr...@googlegroups.com
It is a fascinating debate. Of course we have to know which variety of Craftsmanship Paul was talking about. McBreen's wider vision for the future of the software development profession, or Bob Martin's narrower use of the term as a synonym for clean code as part of a refocusing on the XP engineering practices as a reaction to Scrum getting all the agile glory.

The concept of code as an ends rather than a means is an appealing concept for a developer, and as a possible pillar for whatever post-agility may end up being. It may help restore some interest for those of who customer value is of little relevance, such as free and open source developers, people in the academic community, systems developers, and even those deep in the enterprise so far removed from the customer that they have nothing else to form a relationship with apart from code.

It seems a lot of people suffering from "agile-fatige" and looking for something post-agile are in two camps. One camp seems to be competent leaders working with poor developers. For them things like Scrum have bought some improvements in the organization and they despair that after all this "agility" the code is still crap. These people crave something like craftsmanship to light a fire amongst their developers. The other camp seems to be competent developers suffering under poor leadership. They see the XP practices and clean code as obvious to the point of being trivial, and wonder why people like Bob Martin are calling for more focus on code, when it is clear, to them, that future improvements lie in better management practices, better understanding of value streams and improved relations between customers, management and developers. These people are currently looking at things like lean and kanban, and finding a lot of valuable stuff there.

Additionally I feel that for 90% of the typical enterprise development a classic balanced agile approach is still a winner, good solid XP engineering practices, combined with engaged leadership that understands and operates according to the agile principles and values.

I don't think you need to be a software craftsman to shuffle data between a database and a webpage, you just need good XP engineering practices. You don't need to be a software craftsman to come up with killer algorithms, or work on complex AI, hardware or systems projects, you need to be a competent computer scientist.

Software craftsmanship definitely has the potential to be a core pillar of whatever post-agility may be, but only for those whom agility lacks something. I suspect software craftsmanship is still looking for its sweet spot, the particular pain points that it intends to address.

For me it seems like this sweet spot is in smaller organizations, perhaps in lean startups, doing things with mobile and the web, creating genuinely new products and ways of doing things.

I definitely doubt that craftsmanship should only be about the code. The craftsman of the future I think needs to be someone who is not only highly competent at programming, and can choose which practices are appropriate when, but also understands the business, can develop long term relationships with customers, understands the nature of the flow of value, and possesses a toolkit of a variety of methods, managerial, personal and technical, to ensure that this flow of value is appropriately managed and executed, according to the demands of the situation, and of course I think there will be an ever increasing focus on the cultivation of such talent.

It should be interesting to see what the future holds, but I think the community should strive for a little more than a simple rebadging of XP engineering practices.

> --
> 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.
>

Esko Luontola

unread,
Jan 8, 2011, 8:03:41 AM1/8/11
to software_craftsmanship
I read somebody write recently that "software craftsmanship is not the
next big thing; it's an attempt to articulate what the 'thing' always
was." Would someone here remember who said that and have a link to
that quote?

Kurt Häusler

unread,
Jan 8, 2011, 8:08:47 AM1/8/11
to software_cr...@googlegroups.com
Jason Gorman said it on twitter.

Don't know how to find a link to the exact tweet, but you can google for retweets.

Adewale Oshineye

unread,
Jan 8, 2011, 8:11:53 AM1/8/11
to software_cr...@googlegroups.com

Adewale Oshineye

unread,
Jan 8, 2011, 8:32:43 AM1/8/11
to software_cr...@googlegroups.com
I found the following line oddly anachronistic:
"The lean development thought leaders who came together that weekend
ten years ago similarly pushed forward their entire industry by
uniting behind a common set of beliefs."

I doubt that any of the original signatories were thinking about
themselves as advocates of 'lean' back in 2001.
I remember at the time that Agile was an attempt to replace the
existing brand which was "lightweight methodologies" because it had
become increasingly meaningless.

I understand the temptation to try to claim an association to
everything good in the world of software. However when I read articles
like this: http://www.jimhighsmith.com/2011/01/07/innovators-imitators-and-idiots/
that try to claim that everything from DevOps to Kanban are outgrowths
of Agile I worry that we're building a movement so inclusive that it
becomes meaningless. Or worse that we're going to end up with a
movement that says that you have to be doing _all_ of the things on
some ever-growing list before you can benefit.

There are omissions and errors in a lot of the early (and
contemporary) writing on Agile. For instance the methodologies are
often presented as if they can overcome any deficiency of skill in
your team.

Or consider Scrum. Scrum is at best insufficient and at worse
dangerous to software development teams that don't have a wide range
of skills that are glossed over in the standard Scrum training. Do we
really want to be closely associated with that?

One of the things I like about software craftsmanship is the idea that
we're putting the focus back on people and the skills they need to do
an effective job for their customers. These skills cover much more
than just code. For instance I'm going to be focussing this year on
improving my design skills and my understanding of the field of user
experience. That's because that's the skill that's going to have the
most impact on the work I'm currently doing.

Software craftsmanship gives me a model for thinking about this kind
of skill acquisition and the deliberate practice needed to grow my
skills whilst the Agile Manifesto does not. I think we're
under-selling ourselves if we think of our little community as merely
post-Agile. We have a lot more to offer than just another methodology.

Rare Pleasures

unread,
Jan 9, 2011, 4:57:42 AM1/9/11
to software_craftsmanship
I agree with the remarks Ade has made.
I'd like to add that for me Agile and Software Craftsmanship are both
values-based philosophies and a lot of people forget that. If you
don't share those values, whatever methodologies you undertake won't
deliver. There are 'Agile' sects, Scrum in particular, which are no
longer rooted in these values. Instead ritual, and ceremony now so
dominate that the values are no longer at the heart of the movement.
They have their missionaries who go out into companies and try preach
the gospel, often to individuals who don't at their core share those
values. So now you get a mish-mash of voodoo and cargo-culting.
Meanwhile back in the Agile church lots of hand-wringing about how we
can make Agile relevant today and how we can sell it to business.
Pffth.
For me Agile's values are focused on customer relations and project
management. Software Craftsmanship are focused on the individual. Both
sets remain as true and relevant today as they ever did


Tony Green

Steven Smith

unread,
Jan 10, 2011, 1:03:15 PM1/10/11
to software_cr...@googlegroups.com
I don't know that it's fair to say that UncleBob's focus is purely on
the code side of things vis-a-vis craftsmanship, though I can
certainly see where one might come away with that opinion given his
recent books and talks have tended to focus on code, specifically.
However, if one merely looks at the SC manifesto (of which he's one of
the first signers and, I believe, a co-author), it's clear that
well-crafted software is only one of the four values espoused. The
others includes:
* steadily adding value
* a community of professionals
* productive partnerships

I think it's fair to say that steadily adding value is referring to
*business* value, and as such is in fact talking about working with
the business or enterprise and responding quickly to its needs by
adding additional business value to the systems we deliver.

I also think the *productive partnerships* value, which builds upon
agile's customer collaboration, clearly wants to increase the
closeness of the developer's relationship with the customer, not
decrease it as you seem to suggest. SC, per this document, is not
trying to place software craftsmen into ivory towers or research
bubbles where the code is its own end. It's clearly very much talking
about collaboration and communication with customers, as well as with
other craftsman (the community of professionals value).

Just my $.02.

Steve

--
Steve Smith
http://SteveSmithBlog.com/
http://twitter.com/ardalis

Jason Gorman

unread,
Jan 11, 2011, 6:36:40 AM1/11/11
to software_craftsmanship
Dude, I'm not sure you've understood Post-Agilism. It was an anti-
movement movement. There's already a Post-Agile manifesto :)

http://parlezuml.com/blog/postagile.pdf



On Jan 7, 5:49 pm, Paul Pagel <paulwpa...@gmail.com> wrote:
> I have been thinking of SC's relationship to the agile lately, as much of the SC community and buzz in the last year(s) has been a reaction to some of the perceived gaps and faults.
>
> The expanded thoughts are here:http://blog.8thlight.com/articles/2011/1/6/post-agile-standing-on-the...

Ilya

unread,
Jan 12, 2011, 3:07:16 PM1/12/11
to software_cr...@googlegroups.com
I'm pretty new here, but I guess I'll chime in. I thought craftsmanship and agile go hand in hand? In other words, just how you guys originally put it, 

"In pursuit of the items on the left [Agile] we have found the items on the right to be indispensable [Craftsmanship]."

So not only do we have a flexible, collaborative way to develop software, but we also have a professional community that cares about the quality of its work and about of its profession.
Reply all
Reply to author
Forward
0 new messages