Note: This is the 2nd post in a series about how to truly adopt agility. The first post defined the problem pattern.

Developers are often encouraged to understand one level deeper than what they’re working at.

  • Don’t just know WCF or Spring; understand how HTTP and REST work.
  • Don’t just learn Power BI or Azure ML; learn some of the mathematical & statistical underpinnings of data science.
  • Don’t just learn React or VueJS; understand a bit about how the DOM works.

We get this about our technology. But do we get it about our practices?

The Outside-In Fallacy

Recently Evan Bottcher, one of ThoughtWorks’ technical Principals, wrote about our core development values and practices:

ThoughtWorks core dev values and practices

It struck me, while looking at this, that as an industry we’re completely focused on the outer layer of practices.

Practices are:

  • easier to teach
  • easier to mandate from the top down
  • easier to buy (or build) tools for
  • easier to measure
  • easier to blog about
  • easier to speak about
  • easier to write books on
  • easier to create certifications around
  • easier to organize groups around

In short, practices are easier to scale.

Now don’t get me wrong; it’s good that we emphasize good practices. If you’ve been stuck in the land of 5-year waterfall projects, it’s good to adopt Scrum. If your project status meetings were long, boring monthly sessions where only execs spoke, it’s good to adopt daily standups and retrospectives.

If a thing is worth doing, it is worth doing badly.G. K. Chesterton

But that’s not where we should stop… just like we don’t stop our Continuous Integration practice at setting up an automated build server. If the originators are saying that we’re doing it wrong, we aren’t getting it… then let’s try to get to the core of that idea. And see what we’re missing.

Anything worth doing is worth doing right. – Hunter S. Thompson

simplicity

So… how do you do that?

So how do you do the “being agile” thing anyway? How do you do it at scale?

I don’t have a magic formula or silver bullet. What I do have is some experience of absorbing the agile values myself over time through painful lessons; and how I’ve tried to teach, share, and generally spread those lessons inside my small sphere of influence.

All that in the next post.

Note: title inspired by Jessica Kerr’s wonderful blog post of the same name.