Live data from Hacker News

I don’t believe in sprints

robinrendle.com

21–30 of 459 posts

Re: I don’t believe in sprints

#21
Agree mostly. Jira is a nightmare. Sprints are pointless.

But the backlog is useful. I find it amazing how what seems like a great idea when I think of it looks utterly pointless when I see it still on the backlog 3 months later. It's a useful tool to deal with our tendency to fall in love with our ideas.

Re: I don’t believe in sprints

#22
Rich Hickey has a great joke about sprints, paraphrasing:

So how do we run a marathon? That's right, we run a 200m wind sprint! Then another sprint, and another, and pretty soon...

Of course no one does this, you'd die! We don't do this in software either, for the same reason. But when we talk about 'sprints' this is what we tell ourselves we're doing.

Re: I don’t believe in sprints

#23
post #13

Personally, I never liked agile. I like to get a description of a problem. Prototype. Take that to that customer and ask for feedback. Iterate. QA. QA. QA. Release. Thing is, much like governments, these models all fall short because people aren’t great. I think that if agile isn’t working for a team they should try another method, and if agile does work for a team that’s fantastic. People, imho, shouldn’t blindly fo…

The one thing agile helped here is to take that process and make it fast.

The problem with "Requirements, prototype, feedback, iterate, qa, qa, qa, release" is that most large shops turn that into a 3 year process. As in, a group sits in a room for 6 months and writes some insane "Requirements Doc". Then six months of prototyping against it before any customer has seen anything. Etc etc down the line until you're a programmer looking at a 3 year old requirements doc with a thousand questions that arise during implementation but the designers who wrote the doc left the company two years ago, etc etc

Waterfall was to me inarguably worse than agile.

At least with agile people try to do requirements, prototyping and iterating in a very short period of time, so the feedback loop with customers actually works, and you actually release something on a regular basis.

Re: I don’t believe in sprints

#24
post #11

Kanban is the best middle ground IMO. I agree sprints are a distraction. The planning and ceremonies alone sap time. Sprints are really just a form of pressure. In my experience the stories estimating is not accurate enough to set up a predictable sprint, and the inevitable deviation from the plan just creates additional work to audit and adjust, along with a sense of failure around what has often been a productive 2…

Sprints and planning are useful for organizations that attach a lot of value to planning and deadlines. It creates a lot of additional work and pressure, as you say, but I can also imagine that for certain types of organizations that may be worth it (eg when doing client work on a fixed budget with strict deadlines).

Other than that, I fully agree that Kanban is a great middle ground, as it’s low overhead and focuses on prioritization and flexibility rather than planning and burndown charts and whatnot.

Re: I don’t believe in sprints

#25
post #18
post #11

Kanban is the best middle ground IMO. I agree sprints are a distraction. The planning and ceremonies alone sap time. Sprints are really just a form of pressure. In my experience the stories estimating is not accurate enough to set up a predictable sprint, and the inevitable deviation from the plan just creates additional work to audit and adjust, along with a sense of failure around what has often been a productive 2…

In a job a long time ago there was a brogrammer in the team, always estimating absurdly short times because he was so good and fast (he wasn't bad, but he was 2-3x slower than he himself estimated). So I had picked up the habit of estimating 5x longer on tasks, to balance him out. Also all the sprint planning and retrospective took basically 30% of our time.

Shouldn't that lead to a team discussion about why the estimates differ so drastically? In most circumstances, the reasons would be inaccurate assessment of scope or complexity. Clearing up misconceptions like that can be a great boost for productivity.

"Oh, you can do it like THAT?! I was not aware. I'll take a shot at implementing the feature using that approach."

Re: I don’t believe in sprints

#26
post #18
post #11

Kanban is the best middle ground IMO. I agree sprints are a distraction. The planning and ceremonies alone sap time. Sprints are really just a form of pressure. In my experience the stories estimating is not accurate enough to set up a predictable sprint, and the inevitable deviation from the plan just creates additional work to audit and adjust, along with a sense of failure around what has often been a productive 2…

In a job a long time ago there was a brogrammer in the team, always estimating absurdly short times because he was so good and fast (he wasn't bad, but he was 2-3x slower than he himself estimated). So I had picked up the habit of estimating 5x longer on tasks, to balance him out. Also all the sprint planning and retrospective took basically 30% of our time.

Agreed. The differences of opinion during estimating are another form of pressure. Programmers work differently. I might estimate a task longer than a colleague, but I might be the type of programmer who tidies up and refactors along the way, or who spends more time communicating with the team on strategy and architecture. These are hard to quantify behaviors that Jira can't effectively track, unless you're going to spend half your day _in_ Jira writing down every action every day. Don't event get me started on the effect of context switching.

Managers are pushed to produce reports to prove they're managing. Reports require metrics, and that's a lot of where all this rubbish starts. The solution in my experience is to keep teams small enough that you don't need those sorts of layers of management (though the opposite is inevitable in larger companies).

Re: I don’t believe in sprints

#28
post #13

Personally, I never liked agile. I like to get a description of a problem. Prototype. Take that to that customer and ask for feedback. Iterate. QA. QA. QA. Release. Thing is, much like governments, these models all fall short because people aren’t great. I think that if agile isn’t working for a team they should try another method, and if agile does work for a team that’s fantastic. People, imho, shouldn’t blindly fo…

> Personally, I never liked agile. I like to get a description of a problem. Prototype. Take that to that customer and ask for feedback. Iterate. QA. QA. QA. Release.

That is agile for me. What is agile for you then?

Re: I don’t believe in sprints

#29

Rich Hickey has a great joke about sprints, paraphrasing: So how do we run a marathon? That's right, we run a 200m wind sprint! Then another sprint, and another, and pretty soon... Of course no one does this, you'd die! We don't do this in software either, for the same reason. But when we talk about 'sprints' this is what we tell ourselves we're doing.

I liked the joke when I heard it. Reading it now, I'm realizing that "marathon" doesn't fit as a metaphor because we don't know the destination.

Orienteering, perhaps: https://en.wikipedia.org/wiki/Orienteering

Re: I don’t believe in sprints

#30
I believe in having QA as part of your software team. While developers need to own the quality of what they're shipping, a good QA person bridges the gap between engineering and product, and serves as a gating function for what gets shipped. You can't automate testing of everything, although certainly you need automatic testing where it is required or pragmatic. Blue/green is great, but when you're relatively small then avoiding any users having a shitty experience is a reasonable goal.

Anyway, with a QA function, you need some kind of release cycle. I don't believe in prescriptive sprints where either developers are stressed to hit an arbitrary end of cycle deadline or developers sit on their hands because the phase of the sprint dictates no new work (which I've heard of happening in some particularly agile-diseased companies). I think a reasonably regular cycle that aims to ship what's ready fairly often is a good middle ground that keeps quality high, keeps the product evolving, and maximizes developer keyboard time (and of course you also need the ability to hotfix production occasionally.)

Post reply on HN