BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News The "Oath of Non-Allegiance"

The "Oath of Non-Allegiance"

This item in japanese

Bookmarks

The Oath of Non-Allegiance

Alistair Cockburn, a signatory of the Agile Manifesto, is offering the following oath for your consideration, and signature.

Question: Can you commit to the following?

I promise not to exclude from consideration any idea based on its source, but to consider ideas across schools and heritages in order to find the ones that best suit the current situation.

Do you agree? Do you promise? Sign the Oath of Non-Allegiance here.

The Oath of Non-Allegiance is simple enough to understand. The real question is, why do we actually need something like this?

According to Alistair Cockburn, we do actually need something like this, because:

...this means the end of statements like “That’s no good – it’s not 'agile', 'object-oriented', 'pure' etc…”, but rather a discussion about whether the idea (agile, plan-driven impure whatever) works well in the conditions of the moment.

Recent History

The Agile community is full of smart people and smart ideas. The history of our community incudes the astonishing growth in the use of Scrum. Scrum itself is a topic of great debate, and one can argue that Scrum itself has a certain polarizing quality to it. Debates about Scrum include what is actually Scrum, what is "Scrum-but", what is "canonical Scrum", and whether Scrum can scale to manage larger entities like departments, divisions and entire enterprises.

Recently, Kanban is gaining traction. Many in the Kanban 'camp' are pitching Kanban as an alternative-- even a replacement-- for Scrum. Some of the more hard-core members Scrum community members occasionally fire back.

This is just one of many semi-dogmatic debates that go on each and every day in the Agile community. Another common point of friction is a debate-- sometimes heated- about when and if the Project Management Institute can ever effectively integrate Agile ideas into the Project Management Book of Knowledge. Can they? Is there such a thing as an "Agile Project Manager" ? You can learn more about that ongoing debate by examining this InfoQ article on PMI-Agile.

In late 2009, things got a bit heated in certain sectors of the Agile community. Differences led to conflict and some real heat inside certain online groups and blogs. When things got ugly, Jean Tabaka called out this tendency towards nasty conflict escalation in her blog post "Escalation is Killing Agile-- Please Stop It. Some time later Tabaka, with help from Liz Keogh and Eric Willeke, created the Community of Thinkers declaration.

The Agile community is very much a headless beast, and a marketplace--  where disparate ideas are discussed and often utilized side-by-side. The Oath of Non-Allegiance from Alistair Cockburn is in some ways a working agreement, by and between those who subscribe to it.

Pure democracy is not very efficient at scale, and the Agile community is large and getting larger. There is a gap. What we might be seeing here is the emergence of a new, higher-order form of community organization.

In this emerging organization form, those with substantial informal authority in the community utilize it to clearly specify community-wide, opt-in working agreements that might gain traction and become de-facto guidance at scale.

While the Agile Manifesto continues to provide community guidance, many have called for changes in the Agile Manifesto, to reflect new realities. For example, many observers note that the Agile Manifesto calls for "Responding to change over following a plan", while the Manifesto itself has not changed at all in almost a decade of existence.

The Agile community is a large self-organizing system. Is it possible that statements like the Community of Thinkers and the Oath of Non-Allegiance have emerged to fill a community-wide "guidance gap"?

Let's discuss it. InfoQ invites your comments on this article. 

Rate this Article

Adoption
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

  • I agree with the sentiment, but really Alistair...

    by Julian Holmes,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    What Alistair's "Oath" is saying makes sense, but to phrase it in such a negative manner only gives the impression that he is just being controversial for the sake of it.
    Perhaps a more positive tone is better: "I promise to consider any idea regardless of source, across schools and heritages, in order to find the ones that best suit the current situation."
    It's shame that we need such a statement, but I guess there are many dogmatic people out there. However, the real Agile people have been doing this for years.

    What I do like is your statement: "many observers note that the Agile Manifesto calls for *Responding to change over following a plan*, while the Manifesto itself has not changed at all in almost a decade of existence".
    Now that's thought-provoking!

    Julian

  • Re: I agree with the sentiment, but really Alistair...

    by Ryan McKergow,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    That is a very though-provoking point about the Manifesto. Considering that Agile encourages continuous improvement. Though despite this, I do like the simple nature of the Manifesto and I still believe most, if not all of it's point still ring true 10 years later.

  • Re: I agree with the sentiment, but really Alistair...

    by Stefan Wenig,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    only that values are not a plan. you want to provoke some thinking? show us the change and how the manifesto should adapt!

  • cool

    by Stefan Wenig,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    such an oath could even have saved the punk movement from bullying itself into conformity!

  • Manifesto and Change

    by Dan Mezick,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    The Manifesto is a point-in-time statement of values. Values provide important cultural guidance and as such, explicit values are essential for a healthy and whole community. The [Community of Thinkers] and [Oath of Non-Allegiance] in my view are both strong attempts at adding new and clarifying statements to the base [statement of values] we call the Agile Manifesto. In my view these are not amendments, but rather attemptes at adding addendums to the foundational Manifesto document.

    Not nearly enough is being said about Scrum values, another important foundation of Agile values overall. The [Oath of Non-Allegiance] in my view is actually simply 'shining a light' on the existing and defined Scrum values of Openness and Respect. The Oath supports both. The five Scrum values in total are: Openness, Respect, Courage, Focus, and Commitment. These are profoundly valuable as guidance.

  • And more...

    by Scott Duncan,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    There are also statements like the Declaration of Interdependence and Software Craftmanship Manifesto, to name just a couple others. So there is no dearth of addendum material addressing other aspects of people's views on a new way to view, or dedicate to, software development excellence and effectiveness.

  • I don't agree

    by Adam Nemeth,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    I don't agree, sorry. Schools are important.

    Of course, I wouldn't do a pure apache, pure sun, pure oracle implementation if it isn't needed. But I wouldn't install postgresql besides an already running mysql, just because it has better geo-handling.

    Of course, it's a smelly thing, when someone says, "that's not agile". Yet sometimes schools have much more to solve than the current situation in plain site.

    Let me put this stuff in context: you maintain a program. You always add only the lines what are needed, and use the programming technique best fit to the requirements of that given task.

    You'll end up with a totally f.ed up software in less time than you'd have imagined. And fellow programmers wouldn't understand it, nor you could hire new peoples easily.

    Schools are important.

    Somehow our profession has the tendency to explain why it wants back to chaos. If someone wants to go back to chaos, use ad-hoc solutions, write mindless code, please do it.

    But don't agitate for it.

  • Updating the Manifesto?

    by Shane Hastie,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Laurie Williams is actively seeking input from the community about the relevance and applicability of the Agile Manifesto - taking a snapshot of today's attitudes to the principles which were first published in 2001.

    InfoQ reported on her research here: www.infoq.com/news/2010/06/what-means-agile-survey

  • Not in disagreement - just adding a longer view.

    by John Ruiz,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    I don't mind people nailing manifestos to the Church doors because it's sometimes necessary for someone to raise our awareness and point us towards a better solution. Just remember that manifestos are declarations of principals, not Absolute Truths.

    If Alistar is trying to point us towards a better solution, I'm all for it - but I think this will remain my "Oath":

    As a software engineer (or maybe as a human being?), if I must think about Absolute Truth, I promise to call it by its real name: Temporary.

    (shamelessly lifted from Frank Herbert)

  • Re: I don't agree

    by Jason Alcock,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    If the school currently applied is being broken by
    - mixing-in inconsistent pieces
    or
    - having activities\decisions purporting to be of a school, but not following the correct tenets
    Then yes, I've found it actively harmful to mix schools.

    If a proposer is saying, let's look at another school for a problem's solution, because it may apply better in this case. Then this conscious changing of schools is likely to be positive.

    I'd assume the latter is what Alistair Cockburn intended.

  • So, basically, Post-Agilism then

    by Jason Gorman,

    Your message is awaiting moderation. Thank you for participating in the discussion.

  • Re: I don't agree

    by Adam Nemeth,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Let me quote the article:


    , but rather a discussion about whether the idea (agile, plan-driven impure whatever) works well in the conditions of the moment


    (Emphasis by me)

    And also the comment:

    If a proposer is saying, let's look at another school for a problem's solution,
    <blckquote></blckquote>

    If you are going to a per problem or a per moment basis, you're loosing the situation.

    The reason I find this oath harmful is exactly because of this.

    As an engineer, you will always have to make assumptions about the future. For that, you'll have to do allegiances that aren't the best approach on a per-problem basis, but embraces change.

    I know I can always add a few lines of code without refactoring. I've seen functions with thousands of lines because of that.

    Have principles.

    You should know when you need to change them, and when you need to change them you'll be surely a bit late to change them, but don't think about on a per-situation basis. Don't be short-sighted.

  • Re: So, basically, Post-Agilism then

    by Adam Nemeth,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Jason:

    I believe it's not true that Agile came in a world where everyone followed plans as your IT Architect article suggests.

    I remember as if it came in a world where everyone wished(!) that specification would precede coding, where everyone wished that one day, we could use plans, and so on. Agile was about the recognition that those days wouldn't come.

    There are values however, which differentiated Agile from the chaotic reality, just like the waterfall had such. There's post-agile, for example, Lean is post-Agile, since it does not handle iterations, which cannot be done in certain situations.

    So, what if we just don't want to go back to chaos and choose our values on a situation-basis (which means essentially, having small-enough decisions that we don't have values at all) to challenge the values themselves, trying to come up with more general ones, or trying to be specific about their limits rather than dropping them?

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

BT