How Agile are "We"?

2 views
Skip to first unread message

Curtis Cooley

unread,
Aug 26, 2010, 2:52:30 PM8/26/10
to software_cr...@googlegroups.com
There's an interesting discussion going on on the XP mailing list.
There seems to be an assertion that the Software Craftsmanship
Manifesto requires you to be agile. I seem to recall that there are
those on this list and in the SC community, that are not in the agile
camp. If I recall correctly, McBreen's "other" book is called
"Questioning XP" :)

I made the assertion, on the XP list, that you can be agile and a SC,
or either, or neither. Anyone have any strong feelings about that?

--
Curtis Cooley
curtis...@gmail.com
home:http://curtiscooley.com
blog:http://ponderingobjectorienteddesign.blogspot.com
===============
Leadership is a potent combination of strategy and character. But if
you must be without one, be without the strategy.
-- H. Norman Schwarzkopf

John Pritchard

unread,
Aug 26, 2010, 3:32:59 PM8/26/10
to software_cr...@googlegroups.com
On Thu, Aug 26, 2010 at 2:52 PM, Curtis Cooley <curtis...@gmail.com> wrote:
There's an interesting discussion going on on the XP mailing list.
There seems to be an assertion that the Software Craftsmanship
Manifesto requires you to be agile. I seem to recall that there are
those on this list and in the SC community, that are not in the agile
camp. If I recall correctly, McBreen's "other" book is called
"Questioning XP" :)

I made the assertion, on the XP list, that you can be agile and a SC,
or either, or neither. Anyone have any strong feelings about that?


Sure.. I signed http://manifesto.softwarecraftsmanship.org/ without any thought for team effort models.  Don't see how it's got anything to do with one model or another.

The manifesto expresses the basics: to get well crafted software we're steadily adding value in a community of professionals acting in productive partnerships.

This is what you need to make any model work.

Dave Hoover

unread,
Aug 26, 2010, 3:47:27 PM8/26/10
to software_cr...@googlegroups.com
FWIW, I believe they are orthogonal concepts, though historically
there is a lot of community overlap.

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

Eric Ridgeway

unread,
Aug 26, 2010, 5:04:32 PM8/26/10
to software_cr...@googlegroups.com

I don't believe it is a requirement to be agile to be a software craftsman but I do believe that the two ideals are complimentary often.

Adam Sroka

unread,
Aug 26, 2010, 5:10:10 PM8/26/10
to software_cr...@googlegroups.com
I think it depends on how you define "Agile." It is a hard concept to
nail down, and the most useful definition I know of is that it is the
set of values and principles laid out in the Agile Manifesto. However,
if we use that definition then the fact that the Software
Craftsmanship Manifesto builds on those ideas would seem to suggest
that Software Craftsmanship builds on top of Agile. It seems to me
that Agile and Software Craftsmanship can only be orthogonal if
neither Manifesto is definitional.

If, on the other hand, you define Agile as the set of practices that
Agile teams practice, and the methodologies that attempt to give
structure to those practices, then clearly Software Craftsmanship is
different. *Although* most Software Craftsmen that I know practice and
find value in some of the XP practices such as Pair Programming, TDD,
and Simple Design.

All in all, I think that regarding them as orthogonal is an
oversimplification at best.

Corey Haines

unread,
Aug 26, 2010, 5:19:46 PM8/26/10
to software_cr...@googlegroups.com
I talked a bit about my thoughts on this in this video at the London
Ruby User's Group:
http://skillsmatter.com/podcast/ajax-ria/corey-haines-software-craftsmanship-terminology

I think this article captures my main feelings, though:
http://blog.toolshed.com/2010/08/how-not-to-eat-an-elephant.html It
isn't about SC, but it applies.

This is the completely wrong question. Stop asking what it takes to be
a "Software Craftsman." It is a nonsensical question.

-Corey

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

DocOnDev

unread,
Aug 26, 2010, 5:24:34 PM8/26/10
to software_craftsmanship
Let's look at the values of both groups.

Linguistically, the Manifesto for Software Craftsmanship is coupled to
the Manifesto for Agile Software Development. The craftsmanship values
identify each of the agile values as a part of craftsmanship.

The wording is quite clear; Not only [agile value], but also
[craftsmanship value].
This is synonymous with [agile value] and [craftsmanship value].
Within each of the craftsmanship values we entirely encompass one of
the agile values.

Perhaps it is our definition of agile that is flawed. Is agile a set
of practices? Or is agile a set of values?
I believe agile to be a set of values. The practices are valuable
tools and techniques learned by people attempting to live the agile
values. But it is not pair programming, iterations, or TDD that make
one agile. Following agile practices makes you no more agile than
celebrating Christmas makes you Christian.

To be agile, in my opinion, is to do your best to live by the agile
values.
Similarly, to be a craftsman, in my opinion, is to do your best to
live by the craftsmanship values.

The craftsmanship values contain the entire set of agile values. If to
be a craftsman is to do your best to live by the craftsmanship values,
then to be a craftsman is also to do your best to live by the agile
values.

In my opinion, to be a craftsman is to be agile.


On Aug 26, 3:47 pm, Dave Hoover <d...@obtiva.com> wrote:
> FWIW, I believe they are orthogonal concepts, though historically
> there is a lot of community overlap.
>
>
>
> On Thu, Aug 26, 2010 at 1:52 PM, Curtis Cooley <curtis.coo...@gmail.com> wrote:
> > There's an interesting discussion going on on the XP mailing list.
> > There seems to be an assertion that the Software Craftsmanship
> > Manifesto requires you to be agile. I seem to recall that there are
> > those on this list and in the SC community, that are not in the agile
> > camp. If I recall correctly, McBreen's "other" book is called
> > "Questioning XP" :)
>
> > I made the assertion, on the XP list, that you can be agile and a SC,
> > or either, or neither. Anyone have any strong feelings about that?
>
> > --
> > Curtis Cooley
> > curtis.coo...@gmail.com

Adam Sroka

unread,
Aug 26, 2010, 5:26:36 PM8/26/10
to software_cr...@googlegroups.com
Well, I think the question "Is the Software Craftsmanship movement
related to the Agile Software Development movement in some meaningful
or formative way?" Is an interesting question, whether or not there is
actually a useful answer to it. However, I agree that "What does it
take to be a Software Craftsman?" Is a far less interesting question
that probably also doesn't have a useful answer...

:-)

Curtis Cooley

unread,
Aug 26, 2010, 5:29:46 PM8/26/10
to software_cr...@googlegroups.com

A similar argument was posted to the XP group, so I'll also share my retort:

"Not to get too much into a semantics battle off, but the key to the
Agile Manifesto is that the "things" on the left are valued more than
the things on the right. That's what makes it agile. The Software
Craftsmanship Manifesto does use similar things, but does not compare
levels of value. Yes, we value working software, but doesn't
everybody? We also value well-crafted software. That doesn't
necessarily make us agile.

You could reverse the order of value for the Agile Manifesto, "we
value processes and tools over individuals and interactions" and not
affect the Software Craftsmanship Manifesto in the least. We would
still value individuals and interactions AND a community of
professionals AND processes and tools, and each one of us gets to
determine for ourselves how much we value each compared to the other.

I do agree it could appear that to be a software craftsman, you have
to be agile, but there are members of the software craftsmanship
community who are not agilists, yet signed the manifesto. You'd
probably have to go visit the software craftsmanship community to find
them, since I would assume any of us here are agilists as well."

--
--
Curtis Cooley
curtis...@gmail.com

Bobby Johnson

unread,
Aug 27, 2010, 9:34:30 AM8/27/10
to software_cr...@googlegroups.com
But Cory! If we cannot identify the attributes of a software craftsman we can never make a checklist or a certification to base our multi-thousand dollar training course around. That makes this buzzword bandwagon difficult to jump on for fun and profit!

</sarcasm>

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




--
"The explanation requiring the fewest assumptions is most likely to be correct."

- Occam’s Razor
http://en.wikipedia.org/wiki/Occam's_Razor

Jason Catena

unread,
Aug 27, 2010, 11:00:59 AM8/27/10
to software_cr...@googlegroups.com
Even more tragically, we deprive the community of the knowledge of
exactly who considers it sufficient to take one of these training
courses to put the letters SC after his name (next to MCP, naturally).

Jason Catena

Lawrence Fitzpatrick

unread,
Aug 27, 2010, 11:10:37 AM8/27/10
to software_cr...@googlegroups.com
Hi,

I've been lurking for a while and hate for this to be the first topic that introduces me to the group. Buut...

First, let me say that I think that certs in our industry are for shit, by and large. There are a number of reasons for this, but I think the main ones are:
(a) our certs don't have a practicum component (all you need to do is listen to someone drone for a bit or read a book and take a test; not compatible with demonstrating competency)
(b) they aren't (yet) used to anchor liability. 

Let me explain this last point by way of analogy.  Two other domains with which I am familiar, aviation and medicine, both have certs that are administered differently, used differently, and do a much better job of keeping dolts out of their industries. Both of these industries started with certs as a means to cull the incompetent from their ranks -- an activity that software construction industry sorely needs. 

Certs in aviation and medicine implement the key properties I mentioned above to great effect:
1) to get a cert you have to demonstrate your competence by doing the job in front of an examiner,
2) the examiner enters the chain of liability -- if you screw up, your examiner is potentially on the line,
3) there is indeed liability for malfeasance.

So, I dream of the day when we will take serious a certs-based approach, that works by using the key principles above, and rids our industry of folks who frankly have no business being in it.

Cheers
Larry Fitzpatrick
Reply all
Reply to author
Forward
0 new messages