Live data from Hacker News

Ask HN: Do Agile 'Sprints' Benefit Software Developers?

news.ycombinator.com

41–50 of 121 posts

Re: Ask HN: Do Agile 'Sprints' Benefit Software Developers?

#41
Calling them "sprints" comes close to directly contradicting the Agile principle about a sustainable pace and not burning out the team. I'm sure I not a true Scrum Scotsman about that. But Scrum jargon gets consumed by management above the project team and misinterpreted.

Start by calling iterative cycles, or even individual cycles of task completion if you are not all "sprinting" together, "iterations." Get rid of as much jargon as you can. Then everyone, inside and outside your Agile world will understand what you are talking about.

Ron Jeffries calls what you are getting at "Manifesto Agile" which label unfortunately never gathered much momentum, but it's a good idea.

Re: Ask HN: Do Agile 'Sprints' Benefit Software Developers?

#43
The entire "Agile Manifesto" is less than 10 lines, and it's right here for free: https://agilemanifesto.org/

If you want the longer and more detailed treatment, that's right here too, and it fits in 1 screen: https://agilemanifesto.org/principles.html

That's the whole thing. All of the "sprint" and "scrum" stuff was invented as a way to pretend that software-engineering is like factory work. You'll hear these people talk about things like "holding engineers accountable" and "making estimates more accurate," which is an instant giveaway that they don't understand the fundamentally organic and ever-evolving nature of software-engineering.

The only thing that actually needs to be done is to write down clearly the business problem to be solved, the reason it matters, the proposed technical solution steps in order, and the rationale for the solution. Then, meet regularly to talk about it and update it based on reality.

But most companies can't handle that level of rigor in their business thinking — or the idea that engineers should have this kind of autonomy to solve business problems.

Re: Ask HN: Do Agile 'Sprints' Benefit Software Developers?

#44

You might end up coincidentally liking some parts of these software design methodologies like Kanban, but they generally aren't intentionally implemented to maximize developer happiness. For me, even the name "sprint" just instantly pressures me to feel rushed in my work and I hate everything about this religion. These methodologies are designed to be a "good enough" default way for non-technical managers to organize…

Some of the irony of this is that the actual PM should be more like a mechanic shop manager rather than the customer. One of our current issues is that we got a new PM who is, well, as you explained above. The hardest part is for them to even write sensical tickets. They can't figure out what is BE or FE work so their tickets mix multiple items while the company bans sub-tasks that devs make.

All that said, I'm 80% sure the comment you made about sprint making it feel rushed is directly noted in Basecamp's Shape Up, which honestly is a great way to run small projects where results are more important than metrics.

Re: Ask HN: Do Agile 'Sprints' Benefit Software Developers?

#45
I find sprints to be just a useful tool in the toolbox. It helps you plan, but you also need to be careful that it doesn’t consume your team.

But ultimately what matters is if your team can recognize what works and what doesn’t and be able to think of a solution. You end up with your own custom hybrid solution.

You know how there’s people who don’t really understand code and just copy from Stack Overflow? Well, learning about agile (or any methodology) and directly implementing it as-is is the equivalent for a planner. All they can do is repeat what someone else figured out without any understanding about planning.

Re: Ask HN: Do Agile 'Sprints' Benefit Software Developers?

#46

You might end up coincidentally liking some parts of these software design methodologies like Kanban, but they generally aren't intentionally implemented to maximize developer happiness. For me, even the name "sprint" just instantly pressures me to feel rushed in my work and I hate everything about this religion. These methodologies are designed to be a "good enough" default way for non-technical managers to organize…

As a customer of this auto shop, I insist that there will now be mandatory 15-minute standup meetings every morning where the mechanics must provide me detailed updates on what exactly they did the previous workday and what they plan to accomplish today. I better hear more than just "worked on car brakes" - I want specifics!

We will also have two-week sprints with clear repair commitments that get tracked on a big visual board. If everything isn't completed by the end of the sprint, the mechanics will need to stay late and explain to me why not during an excruciating one-hour retrospective meeting. I don't care if these nonstop status reports, sprint planning sessions, standups and retrospectives frantically disrupt the mechanics' workflow. As the customer, I deserve to know what work is happening to my car at all times! Sure, my neurotic Agile mandates may cut actual wrench time in half while accomplishing nothing. But I can't blindly trust these mechanics' expertise - they need to recognize this agonizing process is for their own good, even if they hate it. I'm the customer so we'll do Agile repairs my way, no matter how much it impedes progress!

Re: Ask HN: Do Agile 'Sprints' Benefit Software Developers?

#47

Scrum (and similar processes) are usually better than the absence of process. Sure, occasionally you have lightning in a bottle and have 5 proactive self-organizing engineers that are pro coordinators and communicators, or you have a team with a tech lead that just magically makes everything run smoothly without anyone really noticing. But even teams with the best engineers often struggle with scheduling and communic…

"Fine default" indeed, as the alternative for a Scrum-inspired process is often nothing. I expect a lot of people hating on it come from big corps, where bureaucracy is already stifling. In a startup, Scrum may be your best way to protect an inexperienced development team from unmeasurable stakeholder expectations.

Re: Ask HN: Do Agile 'Sprints' Benefit Software Developers?

#48

When I first started coding professionally, I thought sprints were stupid. We've got a backlog that will easily take us a year to complete. Why bother with organizing them into 2-week sections? Why not just finish a ticket, take the next one off the pile, and start working? Over time, I learned that time-boxing your work creates short-term goals, a slight sense of urgency, and some accountability. Otherwise, it's eas…

> slight sense of urgency

This is my biggest beef with agile. The urgency is false, stressful, and unnecessary.

If you're always in a "sprint" you're never actually sprinting. No one can sprint forever.

Re: Ask HN: Do Agile 'Sprints' Benefit Software Developers?

#49
Sprints are effective for delegation. It is a way to communicate what to work on, the order and how long tasks are expected to take. If a tool like JIRA is used more systematically, we can just document and communicate many things thru it.

Plus we get a statistical sense of progress after a few sprints. Some people prefer visuals like Gantt charts.

It is best to encourage individuals to plan their tasks in a tool. Some tool is critical to a sprint, it is a way to get some writing reps also. Others can read and provide feedback. Post-its on walls is not effective sprint planning.

Re: Ask HN: Do Agile 'Sprints' Benefit Software Developers?

#50
Well, to decide whether "sprints" are a good thing or not, you have to consider the history, which is mostly centered around the alternatives.

"In the Beginning, there was Waterfall" -- prior to the era of agile practices, waterfall was king: first, gather requirements, then, design a system based upon those, then implement that system, then test it, then deploy it, then maintain it. And write volumes and volumes of detailed documentation about all of these steps.

While there is nothing really wrong with waterfall per se, it tended to annoy people greatly, due to delivering irrelevant software and tons of irrelevant paperwork in many (if not most) situations. Because unless you're, like, building a moon landing guidance system, "the business" tends to change too much between the requirements and deployment phases. And/or: the "requirements" people were simply not very good at their jobs. In any case, pretty much everyone was unhappy with the end results.

So, at some point, there was the "agile manifesto" movement, which tried to fix this from the side of both the "business" (which felt it was spending too much money all the time) and the "developers" (which felt they were doing pointless work all the time). The four main points of the movement were and remain:

(1) Individuals and interactions over processes and tools (2) Working software over comprehensive documentation (3) Customer collaboration over contract negotiation (4) Responding to change over following a plan

So, right away, most of your reservations about "sprints" seem to be negated by principle #1: Trainers, books, seminars and rigid CI/CD are not prescribed by capital-A-Agile at all. It's about you, your team, and what you decide to do. Of course, this may very well mean you should look for a different team, but that can happen due to many, may other reasons.

"Artificial deadlines" are, in my experience, mostly a commercial issue. A "sprint" is always a fixed amount of time, to be spent on development. If malfunctions and associated maintenance take time away from a "sprint", that should be covered by a support/maintenance agreement. If the same people work on both development and maintenance, the former should be paused while the latter takes place. So, a 2-week "sprint" may very well take 3 or 4 weeks, if interruptions take place.

This takes some adjustments in contracts, sales, etc. But I can assure you, that a "2 week sprint of uninterrupted development time" coupled with a "maintenance agreement that extends any development sprint by the time required for personnel to fix and re-focus" works quite well. Sure, some sprints will end up taking many weeks but that's all time that's paid for, and nobody will object to payment in the end, provided all is agreed upon in advance and backed by time-sheets afterwards.

Post reply on HN