#NoEstimates Starts on the Grounds That Estimation Is of Little Value
The #NoEstimates movement originated in 2012, when Woody Zuill, an Agile guide and coach, started a Twitter discussion with members of the software development world using the #NoEstimates hashtag. The concern behind the movement was that estimation, in certain contexts, might be futile and only waste time. Having coined the hashtag #NoEstimates, Zuill urged his Twitter audience to consider the value of estimation and the solutions it brings to projects.
The #NoEstimates movement doesn’t presuppose that all estimation is bad and should be avoided. Rather, it states that in cases where making a project decision without prior estimation is possible, coming up with alternative methods can enhance team performance and save time. Furthermore, you can’t be “late” with a project if there’s no time estimate. When commenting on why he started the discussion, Zuill says on Twitter that “I originally started noticing issues and dysfunctions in the use of estimates in managing software development many years ago. How often they seemed to misinform the decisions they are intended to inform.”
Although not planned, the #NoEstimates hashtag provoked an extremely active discussion on Twitter, transforming it into a movement, with some people speaking in its support and others against. On Twitter, Zuill says: “I found that people are often very defensive about using estimates, and yet there seems to be little to justify this confidence.” The controversy surrounding the #NoEstimates movement made it difficult for participants in the discussion to agree on the value of this PM approach. Some claim that focusing on estimation too much might cause a decrease in productivity. Others say if estimation isn’t fruitful, it means that project managers aren’t as agile as they claim to be and don’t know how to adjust initial estimates to specific cases. Some also suggest that estimation gives a sense of urgency, delivery obligation, and ownership of the project.
An Honest Look at the Core of #NoEstimates
#NoEstimates calls for agility. It encourages PMs to recognize that they’re sometimes not as agile as they claim to be, applying template estimates in rather unsuitable cases. Even worse, estimation is often misused, as project managers see it as a way to make programmers work faster, which leads to poor software and unhappy employees. In the following video, you’ll see how the #NoEstimates concept works in practice. The speaker explains how despite having peeled some quantity of potatoes in a certain time, you can’t necessarily expect to peel the same quantity of potatoes in the exact same time in the future since there might be contingencies: rotten potatoes, smaller potatoes, etc.
Making any estimate is challenging, let alone making an accurate estimate. Suppose your project is vague, as the requirements aren’t clear or the deadline is subject to change. If the project is somewhat vague in its nature, how can you expect an estimate to be precise? Supporters of #NoEstimates claim that accurate estimates are rarely possible. In many cases, team members regard estimation as a negative thing, something that invokes fear. As a result, they try to avoid estimation or purposefully do everything possible to delay estimates. #NoEstimates recognizes the problem and encourages a search for alternatives. While an estimate should function as a guess about the future of a project, it’s often transformed into a promise on when and how the project should be delivered. Consequently, when that “promise” is not delivered, it’s not only the client who gets upset but the whole team.
#NoEstimates in Action in 2019
#NoEstimates empowers the team to prioritize features and tasks, make reasonable decisions, and create a viable work strategy. In general terms, it helps you understand the big picture of your project. Proponents of #NoEstimates explain that developers often have to work in accordance with estimates created by project managers – people who don’t specialize in software development and thus have scarce understanding of its peculiarities. An example of #NoEstimates in action would be developing software without giving a final delivery estimate to the client and regularly presenting project progress instead. #NoEstimates aims at eliminating some of the aspects that complicate the delivery of good software. It allows for faster feedback, less wasted time, and improved decision quality while also improving many other factors. Long story short, it makes the work of software developers easier and more efficient.
We wanted to see if the #NoEstimates concept was still relevant in 2019, so we asked the creator of the movement, Woody Zuill, what he thinks. Here’s what he told us: “It is always relevant to question the practices we use. To quote Grace Hopper: ‘The most damaging phrase in the language is: “It’s always been done that way.”’ Much of what is done in managing software development is simply what we’ve always done. We must be willing to question the status quo with an open mind, and to stop defending these practices. Our path forward depends on this.”
Which software development estimation technique works for your project? Share your thoughts and experience with the #NoEstimates movement in the comments below.