Hacker News new | ask | show | jobs
Agile Software Development Needs to Die (timdenning.com)
15 points by mska 1176 days ago
5 comments

I feel that what the author has described is the very opposite of agile.

This article has some fair points on bloated companies, useless meetings and rituals, guesswork-based products, and I wouldn't dare to estimate how many companies could fit into this description, but agile proposes just the opposite (I'd call that "conscious agile").

Even if you read the Scrum guide, you'll see that it does not prescribe most of the things that are commonly attributed to it. Many of these canned practices come from taking things out of context, or from a misunderstanding of the reasoning behind the Agile or Scrum principles.

Isn't that the problem though? Every discussion about problems with Agile are met with retorts like "but that's not real Agile!"

At this point, I believe the common understand of Agile, warts and all, is Agile. It doesn't matter what was in the manifesto. Agile is daily standups. Sprints. Retrospectives. Jira. Scrum. Overpaid and incompetent consultants or "coaches". Meeting "facilitators". Development phases. Release cycles. Jira plugins. PHBs. Bill Lumbergh.

It means that but it also means the opposite. There isnt really a common understanding there are several.

The problem is that it was always a vague pseudoreligious thing that would help the consultants sell their wares. If they'd been specific about what they meant that would have made it harder for everybody to project their desires on to it.

Those communist regimes weren't communist at all!

It's true, though. If the tenet is "keep customer/user feedback cycles small and frequent," then some side-effects are "frequent meetings, small deliverables, and dedicated task management roles." Corporate structures then eat that stuff up. It has nothing to do with the tenet.

Similarly, (and I'm reaching here) if the tenet is "centrally shared resources and profits," then some side-effects are "a few people (can) control the administration that owns everything." Despotic structures then eat that stuff up.

I get what the author is saying, but I feel like many of the examples provided have more to do with poor culture and chronic mismanagement rather than issues with “agile” itself.

However, I don't believe Agile is the root cause of tech laziness. No framework encourages underestimating capacity or wasting time on distractions like “TikTok smoothies”. This issue stems from people and performance problems, which would likely exist regardless of the planning framework.

Before adopting Agile, I experienced the need to justify financial spending on Waterfall plans for non-existent hires/teams, two years in advance. With quarterly agile planning cycles and static teams, we spent significantly less time worrying about whether we’d get people at all, and more time looking at the teams' overall velocity and outcomes.

I wouldn’t have been able to do any of that without the estimations and structure that the author despises.

The reality is, in larger companies, teams don’t exist in a bubble. They need to justify their outcomes, plans, and velocities, or they get laughed out of the room by finance and budgets slashed. Frameworks around agile (SAFe/etc) give tools that help management to forecast and finance investments into their teams. If I didn’t have estimations and velocity, and a way to break down and visualise work,

I don’t get what the author suggests the alternative is. I’m sure some teams have full autonomy and trust to do whatever they want without oversight by finance and PMO, but my experience is that is few and far between (or small enough where the team and upper management are one and the same).

While I've encountered my fair share of subpar Agile implementations, it doesn't mean we should abandon the concept altogether. The widespread adoption of Agile suggests a genuine need for improved working methodologies.

Instead of advocating for Agile's downfall, let's acknowledge the necessity of tools for sharing roadmaps, streamlining transitions between teams, and assisting management in making data-driven investment decisions. By doing so, we can collaboratively refine and adapt Agile methodologies to better meet the evolving needs of contemporary organisations.

Developers dont like agile for two reasons.

One is a valid criticism of the implementation of agile. 80% of all companies "doing agile" don't want to give up their traditional command and control so they never meet what the agile manifesto intends. Which is to reduce the overhead of projects and let the people doing the work make the decisions.

The second reason developers dont like agile is because some developers have this lone wolf attitude to development. They don't want to have to communicate and compromise with others on their work. They want to be given a project and left alone until its done. This type of development is not great for the business because there is no transparency into if the work being done is work the company needs done. And no feedback for developers if what they have created is correct until its completed.

Communicate and trust are what make great teams work. Bad implementations of agile are a lack of trust. Developers hiding away creates a lack of communication.

Agile should be a north star of what a team aims to achieve and not a religion to be followed without question.

Agile software development doesn't need to die. The power dynamic between developer and purse holder needs to be flipped.
That would mean that programmers need to go and start their own companies.
And thus become purse holders. The cycle repeats.
What about worker-owned collectives in technology?

This has seen some adoption in manufacturing and industry, but I am only aware of a few in tech.

FWIW, my comment was tongue-in-cheek.

I'm a programmer and I started a business. I think it's unlikely I would have been able to successfully organise a cooperative, so I have a fairly standard business where people write code with me and I pay them.

From a simplified perspective, isn't a collective "just" paying those people you work with a higher portion (and probably expecting more responsibility out of them)?
I want one of these “pretend to work” big money jobs. Where are they? Any recommendations?