What is pragmatism? Why do I care? How do I practice it?

Pragmatism is possibly one of those words you’ve heard 1000 times and feel confident you know what it means. I did.

On the surface, it seems like a straightforward concept. The definition is simple:

Pragmatism /’praɡmətɪz(ə)m/ (noun) : an approach that evaluates theories or beliefs in terms of the success of their practical application.

The philosophy lies at the heart of many aspects of agile. Think about it, empiricism is deeply tied to pragmatism. The act of making something visible so that it can be examined and evaluated and adapted to be more effective is a deeply pragmatic approach.

One of the reasons, high-performing scrum teams may end up with something that is not scrum, but still agile, is a pragmatic approach brought out by the very act of following scrum. It is one beautiful paradox.

A pragmatic mindset allows us to self-reflect as people and teams to find things that truly work. One of the things that drew me to Agile Uprising was the core value of pragmatism. The organisation openly espoused that the idea was central to being a better practitioner of agile and humans.

So, beyond the definition…

What is Pragmatism?

I confess, whilst I’ve espoused the idea for some time, I had some mixed up understandings in my head about the word. It is easily done. We have a habit of overloading terms. Think about how much weight we put on “agile”…

Let’s look at some clear things that pragmatism is not.

Pragmatism is not Purism

This seems like a no-brainer. Purism seems almost antithetical to the ideal. Purism is about following the letter of the law to the nth degree. We have all seen the rigid adherence to a framework. It is about dotting the i’s and crossing the t’s.

purism /ˈpjʊərɪz(ə)m/ noun: scrupulous or exaggerated observance of or insistence on traditional rules or structures, especially in language or style.

The problem is purism can hide in the form of pragmatism.

This sounds inane, but it stands. Many practitioners have scrum have seen this. “We practice scrum because it is a proven methodology that works in delivering high quality software on time”. There is little wrong with the statement. Scrum is a framework that has proven itself over time.

The disconnect is that this is true at a high level, but not always reflected on the ground. Choosing to use scrum is on the surface is pragmatic, but if we practice the ceremonies with rigidity and never really get to the heart and soul of the framework we slip into purism and tyranny. It is in the intricacies of the practice that reality and theory meet. To have the courage to introspect all parts of our practice and continually improve, we will sometimes need to question the ceremonies themselves.

And I’m not having ago at Scrum, the same could be said of many practices from other frameworks such as XP with pairing or TDD. I have personally experience both in positive lights, but I’ve heard tales of dogmatic practices that have left scars. We need to question.

Purism is essentially blind faith, unthinking and uncaring. Pragmatism is true faith, being prepared to question in order to find the best way forward and moving forward.

Pragmatism is not lazy thinking

One of the misconceptions I had, was that I thought pragmatism meant accepting that we live in an imperfect world with imperfect solutions. “We are pragmatic. We do what works!”

Unfortunately that isn’t pragmatism, it is resignation.

Pragmatism is not about accepting the status quo, but acknowledging it.

To my shame, I have fallen into the trap of shortcut thinking many times in my life. I thought I was being pragmatic, because I was just “finding the solution that worked.” Unfortunately, with hindsight I can acknowledge that many of those times the trap closed, it was simply a matter of making excuses. This is otherwise known as lazy thinking.

To be truly pragmatic, we need to be prepared to measure the effects and count the cost.

Another form of lazy thinking can be in what has been dubbed Cargo cult agile.

This typically shows up as people doing practices because “we’ve always done it this way”, “the cart isn’t broken, don’t fix it”, “I read this was good somewhere” or “I was told this works”. Two questions immediately shift from lazy thinking to pragmatic, “Why is this the best way do things?” and “How could you prove it is the best?” If someone is willing to move on those questions the lights are coming on.

Pragmatism is measuring

Let’s look at the definition again: an approach that evaluates theories or beliefs in terms of the success of their practical application.

Pragmatism is about evaluation against success metrics. The dictionary defines evaluation as: forming an idea of the amount, number, or value of; assessment. The quickest way to form a reasonable idea of something is to define an adequate measure.

It raises the question what is the right measure? This is a very difficult question.

I have come to accept that the answer will be radically different for many people. There are entire series of articles on metrics and defining success. In fact the there are a few podcasts at Agile uprising such as Actionable Agile Metrics with Daniel Vacanti that explore the idea. I heartily recommend them.

At the end of the day it is always subjective. You will need to deal define your own definitions of success.  Have courage and be ready to be honest with yourself and your teams. This can be scary, especially if you are examining your sacred cows.

Pragmatism is contextual

We don’t practice in a vacuum. A theory of how something should work without having tried it out, is just a nice idea.

Pragmatism looks at the is.  Part of the reason I thought it was about accepting the now was because it examines reality vs thought. I understood that an idea had to be applied or tested to be evaluated. What I missed was that evaluating is different from accepting.

I missed that pragmatism isn’t accepting reality is flawed, it is about understanding that the IDEA may be flawed and therefore needs to be assessed against the reality of the current circumstances.

Purism looks to blame, pragmatism to understand. It doesn’t fix the problems, but it might help you see where the holes are.

Why Pragmatism?

Pragmatism is about holding something up to the light and looking at if it REALLY works and does what it says on the label. That isn’t always comfortable. It is worthwhile.

Whilst we rarely hold the work of art that we think, we often hold the materials to make something beautiful. The only way to make beautiful things is by knowing where we stand right now, the tools we are using right now, and what we have in our hands right now. 

Sometimes we need to acknowledge that what we have is less than perfect and the conditions are less than ideal, but this does not mean that we need to accept that it will always be so. Pragmatism affords us the opportunity to look for better, to look for best.

It is worth noting that the context of the situation might show that any one of the “good” practices you would normally use won’t work, right now.

You might have a genuinely great framework for dealing with work requests, but if all you meet is resistance the pragmatic response is to honestly evaluate what might be accepted right now. Move there first.

Pragmatism let’s you change the status quo by finding the optimal path through.

The challenge is to approach each day with a mind that measures and a heart that strives for bigger things; to evaluate with honesty and courage in order to meet your success.

Pragmatism is seeing clearly where the rubber meets the road and practice meet reality.

What practices do you have, that need a second look? How will you know whether the theory lives up to life?

Brad Stokes

I am at heart a developer. I've been participating in an agile environment for a little over a year and a half. I've done waterfall and never want to return. I'm always good for a chat and willing to look at the agile world with openness and honesty.