Skip to main content

#NoEstimates

What is #NoEstimates? If you spend much time on Twitter following agile, chances are you have seen the hashtag #NoEstimates. It jumps right out at you; it's catchy, controversial, and thought provoking. Unfortunately, the name is somewhat misleading, although it does help get the conversation started.

To being with, #NoEstimates does not mean "do not estimate". I can't fault anyone for getting confused by the name, as it does seem to imply that. Rather, to quote Woody Zuill, the originator of the term:

 #NoEstimates is a hashtag for the topic of exploring alternatives to estimates [of time, effort, cost] for making decisions in software development.  That is, ways to make decisions with “No Estimates”.

So just to reiterate, it's about questioning how we use estimates today, and exploring alternatives. It is not a prescriptive process on how to run your projects, or how to make decisions. It'a just an idea that asks a question. That's it.

Now a lot of people have seemed to have bought into that idea and have expanded on it to include their own take and suggestions. That's a good thing; the more discussion and input we have the more the idea can move forward. However, there is a downside to this as well. Unlike agile which has a manifesto, there's no formal authority to approve what is and isn't a good approach to exploring those alternatives. Ultimately whatever practices work best will eventually come out on top. But in the meantime, it does leave to occasional confusion amongst people that are not as familiar with the topic.

This also, unfortunately, causes some issues when it comes to the critics. Any idea worth it's weight needs to hold up to the scrutiny of critics. If it can't, most likely it is not that good of an idea. However, in order to have any meaningful discussion all parties involved need to understand the topic they are discussing. If not, such discussions result in an exercise in frustration. There are some very real critics of #NoEstimates, and I believe at least some of those critics are simply not on the same page with the proponents as to what they are debating.

What are my thoughts on #NoEstimates? I'm a strong believer that what is important in software is quality. Software needs to provide value and do it's job well. Sometimes it can be rushed, but more often than not it takes time to produce quality software. When we focus too much on dates, it often results in sacrificing quality to meet those dates. I've seen it too many times when software was rushed to meet a date, and the end result was that it didn't meet expectations. While we do have to be mindful of time, in the end what matters most is the software itself.

 So where do things go from here? Agile had a lot of critics until it obtained wide-scale adoption. There were a lot of hotly contested debates, as the status quo was being challenged. However, in the end convincing the critics isn't really what mattered. The reason the agile was adopted was that enough people gave it a chance and the results spoke for them themselves. As word grew, it spread more and eventually became the commonly accepted way to run software projects.

I'm sure there's still people that don't believe in agile, but that's not really what matters. What matters is that the word was spread and it struck a chord with many people out there, and that allowed it to grow. So yes, the proponents should  listen to feedback of critics. But ultimately converting the critics is not the goal. If the idea is in fact a good one it will spread and be adopted. And the proponents simply need to get the word out, and keep the message clear, in the hopes that we can continue improve our software development  management practices.

Until next time.

Comments

Popular posts from this blog

Value and Quality over Schedules

According to a study by CEB Research, 70% of software projects are delivered on time, but only on 38% meet stakeholder's expectations. In most cases the people that use your software will not even be aware of internal project deadlines. Case in point, think of all of the software the you use everyday. You are rarely aware of what the due date was. However, what you do notice is how well the software does it's job. It's it's of low quality, you'll very likely notice right away. Even if it appears to be of high quality, if it doesn't provide any major value to you, chances are you still stop using it. With that in mind, then why do many software projects today have a set scope and a hard due date? When building software for a customer, it's only natural for them to what to know what exactly they are going to get and what is will cost them. That is a very reasonable thing to want to know. Even when developing software internally, there are often similar expe

The Retrospective From Hell

Over the last 17 years of my career I'd like to think that I've learned a lot. I've learned from positive role models, from experience of what works well, by studying my craft, and from my own trials and tribulations. However, I believe the lessons that I have learned that had the biggest impact is learning from failures. One such failure occurred at a previous employer. By telling the story of a past failure, we can reflect and see what can be learned from it. No names will be mentioned, no embellishment or poetic license will be will used. As a matter of fact, I will make every attempt to be objective and accurate as possible. The truth of the matter the story doesn't need it; it speaks for itself. Some time ago I worked for a company that, among other things, had a software product. There was a small team of software developers, and someone that acted as the manager of the team. I was brought on board, as a software engineer, to help with the software product as

Let's Get Moving With Software Development!

Recently I was reading a discussion on Twitter about software projects, and it reminded me of something. Many years ago I had a conversation with my dad about moving. After just having moved, he wasn't too pleased with the moving experience. He mentioned that there was essentially two models that movers operated under. The first was you paid a fixed price for the move. I don't remember the exact details, but the movers quoted a price most likely along the lines the square footage of the house, or some similar metric. The other model, was simply to pay the movers for their time. If it took them 20 hours to complete the move, you paid for those 20 hours. Now the catch was, as he described it, if you paid for a fixed price the movers didn't really put a lot of care into the move. They simply wanted to get the job done as quickly as possible. I seem to recall that if they broke something, they would reimburse you. However, that wasn't a pain free process. More importantl