#NoBacklog
The typical backlog is a tech task tracker, a bug database, or a feature wishlist. Ultimately, it’s a black hole of promises, wasted work, and a source of frustration.
We only need the user stories in progress and a few more ahead, which can be discarded anytime. That’s our backlog, if you want to call it such. I’ll tell you why and how. This advice follows The “Just Sharing” Principle.
Expectation management
How many stories do you have on the backlog, and what’s its growth rate? What’s their average lead time (problem-identified to solution-delivered time)? A backlog that keeps piling up is an anchor weighing down the team’s spirit. It feels like we are not able to do our jobs. Think how helpless you feel when faced with hundreds of stories for months because you kept doing other, more important things. The current stories keep being pushed forward, forever on the back burner, while more stories are added daily. It grows to infinite.
Backlogs are a big weight we don’t need to carry. Dozens and eventually hundreds of tasks pile up that we all know we’ll never have time for. The growing pile gives us a feeling like we’re always behind even though we’re not. Just because somebody thought some idea was important a quarter ago doesn’t mean we need to keep looking at it again and again. Shape Up
Besides being a source of frustration and anxiety, backlogs also create false expectations. People, especially outside of the team, believe you’ll get those stories done at some point (you won’t). A backlog full of stories is a backlog full of lies. At best, it’s a wishlist; at worst, we’re in denial, deceiving ourselves and the ones around us. You may think a backlog is a look into the future, but it’s just a piece of archeology.

Waste
How often do you bump into stories that don’t make sense anymore? How long do you spend preparing each user story? Reflect on the hours wasted updating dozens of stories, most of which will never be picked up. Think about all the discussions, describing scenarios, defining acceptance criteria, adding details, labeling, preparing UI mockups, estimating, splitting, and prioritizing. Putting in all that effort attaches you to the wrong things — the process and the tool. Focus on the outcomes instead. Could you redirect all the effort to the present? Into discovery, user research, splitting stories, reprioritizing, and actively understanding the impact of what you just did. One of the lean principles is eliminating waste — the backlog is the inventory type of waste.
Backlogs are big time wasters too. The time spent constantly reviewing, grooming and organizing old ideas prevents everyone from moving forward on the timely projects that really matter right now. Shape Up
A backlog biases the team’s work to what was decided weeks or months before while the world kept spinning. The mere passage of time can make most of your backlog irrelevant or obsolete. The team is possibly running behind outdated goals, putting a lot of effort into implementing solutions that no longer solve real problems. This is backlog-driven development, where the backlog becomes the goal. Stories are like vegetables… you have little time to consume them, or they will rot, so you buy as you need; you keep the stock low.
I’ve observed managers handling the backlog like it was their child. They kept refining backlogs worth a quarter of a year’s work. How can you prioritize a backlog with so many stories? It’s a daunting endeavor, if not humanely impossible. Some product managers prune their backlogs and start anew because most tickets are obsolete. They do this spring cleaning now and then, the rationale being that if something is important, it will come up again, or else it’s pointless. That’s a good idea, but they should address the root cause rather than the symptom. Why did they waste so much time writing the stories in the first place only to be deleted? If the team won’t ever get to those dozens of stories on the horizon, why bother detailing them?
Simplicity — the art of maximizing the amount of work not done — is essential. Agile Manifesto
Continuous discovery
According to the definition, a backlog is a reserve of work. Work is decided and prepared upfront, which you execute following FIFO (in such a predictable environment, adding more people increases the speed of delivery, unlike in software). This is great for assembly lines but not for software development, where it’s a clear instance of waterfall thinking.
The fact is that we don’t work in a factory. In software, a backlog is an inglorious prediction of what we’ll solve in the upcoming weeks and months (i.e., a long-term plan), but time and time again, our attempts to predict the future lead to waste.
Product development is not a linear path where we already know what we will do afterward, and we need to follow the plan, like building a house. Rather, we must navigate the waters based on new information that we receive along the way. We only know what to do after delivering the current story and getting feedback; acting on that feedback feeds the following work. Every delivered story is a small increment of value — there’s a new product with every iteration, and that’s always our new starting point. It’s a continuous process of discovery. It’s a journey of constant learning and adapting.
Working without a plan may seem scary. But blindly following a plan that has no relationship with reality is even scarier. Rework
A 2-month-old story was created and detailed when we knew much less than we know today. Stories in a backlog represent decisions made without the necessary feedback. We should execute an infinite cycle of deploying and gathering feedback (CI/CD) to make better decisions. Our mental model of the domain is iterated and restructured as we learn. If that’s not happening, we’re likely lacking feedback mechanisms. On the other hand, the word also changes: we may discover that a problem doesn’t exist anymore because the users’ needs or journeys have mutated. The act of delivering also shuffles the priorities. For example, the users may be happy with the first iteration, and we move on to something else.
In short, creating numerous user stories in advance reveals a lack of humility in acknowledging our inability to foresee the future and the consequences of our actions. Defining work upfront is the wrong way to deal with the world’s uncertainty. The context changes too often. A product backlog is a fragile artifact by definition. You either put effort into maintaining it or let it become outdated, but neither is ideal.
Towards no backlog
Why do you need a backlog? What’s your trigger to add a story? What’s its return on investment? What problem are you trying to solve with a backlog? Are there other ways to solve it? My opinion is that you can forget the backlog. An endlessly expanding backlog serves no practical purpose. All you need is a board with a few stories representing the work in progress (problems being solved) and the next hypothetical problems to tackle. We should strive for a “zero-backlog” approach, adding stories as needed and keeping our minds unbiased. While having a few stories ahead is okay, we should avoid adding and detailing stories we’ll never do. It’s about not deceiving everyone with plans and promises. It’s about being open to constant steering, swiftly discarding whatever gets old.
📝 A user story is simply a placeholder for a user problem; solutions and details are only relevant when starting the work (last responsible moment) if the work is ever started. Separating planning and execution is Taylorism, which does not apply to software development.
User stories should fit on a post-it as they represent a user problem. Focus on the most pressing issues and potential added value and adjust often. Since we know our next work as we discover it, creating stories should be cheap (i.e., to have a negligible overhead) so that we can create them without attachment and discard them without pain. Preferably, create stories on the fly, with the maximum context available. This lightweight process fosters a culture of experimentation and continuous discovery. Having very few stories and creating them as we go is how we embrace the inherent uncertainty of the world.







