Live data from Hacker News

Why do some developers consider Agile development to be nonsense?

agileoverflow.com

141–147 of 147 posts

Re: Why do some developers consider Agile development to be nonsense?

#141

Earlier quoted context omitted.

>Everyone seems to agree that we're doing Agile wrong The fact that we've all heard this line (yet never heard a solution) should make it pretty clear that it's more of a management religion than an engineering practice. "You're doing it wrong" is the perfect built-in, pre-packaged defense to the Agile system that agile managers/consultants/etc can rattle off with zero effort and an air of superiority. Had a bad expe…

> ...doing it wrong... Back when I was a wee lad, with nary a keyboard callus upon my digits, I learned about a little thing called Murphy's Law. In brief, it says that if anything can be done incorrectly, someone will eventually do it that way. It was a warning to those designing things, to make doing the wrong thing impossible, or at least much more difficult to do accidentally. As a result, among those taught abou…

I agree with what you're saying, but I also wonder, if not agile, then what do you see as a better alternative?

It sounds like you're suggesting that Agile methodologies have flaws that allow projects to be easily sabotaged. While I agree with this, I'm not sure I see an alternative? Is any development methodology going to be immune to this problem?

Human communication is messy, subjective, and open to all the imperfections that come along with the human condition. Unless you're working alone, any development methodology is going to be susceptible to "people problems". I don't see this as something that's unique to agile. I'm sure I could come up with hundreds of ways that idiocy, incompetence, and maliciousness could sabotage waterfall projects as well.

Re: Why do some developers consider Agile development to be nonsense?

#142
post #91

The free e-meter at every desk is a valuable job perk! The Kool-Aid tasted a bit funny, though. Scrum-English Dictionary: * "sprint": artificial crisis * "end of sprint": abandonware * "Scrum master": resume credit for my planned escape to a new company * "stakeholder": someone you can't get away with externalising your costs onto * "simplified": doesn't implement any of the actual business requirements * "lightweigh…

The first and last definitions I find are very accurate. Do more! (Retrospective, velocity, stand-up.)

"user story": a valiant attempt to extract coherent requirements and bug reports; ends up being precise specifications for the wing feathers of the desired magical flying unicorn pony

Re: Why do some developers consider Agile development to be nonsense?

#143
post #57

Earlier quoted context omitted.

"Here's the secret: software development isn't really about making computers work, it's about organizing knowledge. If your process focuses more on making the computers work than your institutional knowledge you're making a critical mistake." That's a fantastic quote, thanks.

You may like Philip Armour's Five Orders of Ignorance , http://www-plan.cs.colorado.edu/diwan/3308-07/p17-armour.pdf " 0th Order Ignorance: Lack of Ignorance. I have 0OI when I (probably) know something. 1st Order Ignorance: Lack of Knowledge. I have 1OI when I don't know something. With 1OI we have the question in a well-factored form. 2nd Order Ignorance: Lack of Awareness. I have 2OI when I don't know that I don't…

For some reason I picture Rumsfled and his "unknown unknowns" ;-)

Re: Why do some developers consider Agile development to be nonsense?

#144
post #141

Earlier quoted context omitted.

> ...doing it wrong... Back when I was a wee lad, with nary a keyboard callus upon my digits, I learned about a little thing called Murphy's Law. In brief, it says that if anything can be done incorrectly, someone will eventually do it that way. It was a warning to those designing things, to make doing the wrong thing impossible, or at least much more difficult to do accidentally. As a result, among those taught abou…

I agree with what you're saying, but I also wonder, if not agile, then what do you see as a better alternative? It sounds like you're suggesting that Agile methodologies have flaws that allow projects to be easily sabotaged. While I agree with this, I'm not sure I see an alternative? Is any development methodology going to be immune to this problem? Human communication is messy, subjective, and open to all the imperf…

People within the software industry have a great advantage, in that they use their skills to both solve business problems and automate the solutions. Increasing the efficiency and effectiveness of the software team is a business problem.

There are some common elements to that problem that encourage the re-use of certain solutions--source control, for instance. The only mandate that needs to descend upon the team from above is to examine and improve your own processes.

There is only one other profession of which I am aware that can, given the opportunity, make every tool that is required for the job. That is the blacksmith. If a blacksmith discovers that a certain specialty tool would be useful for a routine task, he could either modify an existing tool or make the new one from scratch. No sane customer would barge in and demand that he use the "wrong" tool for the job. You might just find that red-hot tongs are the wrong tool for proctology.

But that happens to software professionals all the time. And that's where the weaponized idiot comes in. Allowing the customer to tell the skilled worker which tools to use sets up the situation where you could be performing surgery with a grapefruit spoon, while wearing oven mitts, or knocking down a brick wall with a rubber mallet and a hamburger spatula from an outdoor grill set. The unbelievable outcome is that sometimes that task still gets done.

A development process is a tool that software professionals use to do their jobs. If management needs another tool to help them do their jobs, those software professionals would be all too happy to make one. But let's not try to weld those two different tools together and call it a supertool. Agile is one of those welded-together things now, and the different parts might not work well together in your shop.

If your team cannot work without such a process, it may be because the business has neglected to hire a workable mix of masters, journeymen, and apprentices. Too many masters, and they may come into conflict. Too many apprentices, and they may struggle for direction. Too many journeymen, and they will leave to be masters elsewhere.

The only development methodology you really need is to make sure that every team has at least one master on it, and to let them pick their own tools and apprentices. If they can't get the work done with that level of autonomy, fire them and hire someone else. That's not a problem you can fix by going Agile.

Re: Why do some developers consider Agile development to be nonsense?

#145
Dave Thomas (one of the original agile signer peoples), gave this amazing talk criticizing modern, commercialized agile instead of the developer-focused way of "developing with agility".

Give it a watch: http://www.thoughtworks.com/talks/the-death-of-agile

Blog post version: http://pragdave.me/blog/2014/03/04/time-to-kill-agile/

Re: Why do some developers consider Agile development to be nonsense?

#146
post #117
post #94

Pretty spot on, I think. The most problematic part of SCRUM (and the first thing to start killing productivity) are the interminable meetings it facilitates. The SCRUM master is constantly trying to gauge scope on this or that feature, and everyone feels like they need to bring up what they've been working on during the standup in order to feel like they're not appearing to be slacking off. I've abandoned SCRUM in fa…

Its your prerogative of course but peppering your blog posts with stale meme gif after gif is an easy way to get me to not read your content. I don't understand this trend at all for talking about a professional concept. What you did this weekend, sure, but this?

Know your audience, I guess. I enjoy gifs, and enjoy getting a sense of the author's personality when I read an article. I don't think I've ever bounced from an interesting article because of a handful of cheerful gifs, but hey, that's just me.

To each his/her own I say.

Re: Why do some developers consider Agile development to be nonsense?

#147
post #126
post #93

Earlier quoted context omitted.

I am interested in this as well. Who's using a different process?

Why do you need a capital-P Process? Does it need to have a name? Best teams I've been on have been self-organizing, with a few senior engineers who did heavy-lifting and some less experienced engineers learning new stuff. Management was minimal (the more we had, the more things sucked). - Minimize management. Minimize management. Minimize management. Management exists to set very high level directions and to remove…

> It's done when it's done.

Ha. Ever have a client? "Dear Enterprise Customer, We'll get it done when it's done. Cool? Can we have the gig?" Yeah no. That's not at all how the world works.

We have process because we have deadlines, commitments, responsibilities... and there needs to be an easy way for people to come and go inside of an organization without having to invent the wheel each time.

Post reply on HN