Live data from Hacker News

Agile is a Sham

williamedwardscoder.tumblr.com

21–30 of 189 posts

Re: Agile is a Sham

#21

It's useful to distinguish big-A and small-A agile. Big-A Agile is a management buzzword, something you can become certified in and certainly a scam. Small-a agile is a number of mostly common sense principles on how to approach process. It is emphatically not the process itself. While it cannot be meaningfully certified, it can be taught and learned. Someone else linked to the agile manifesto. I'm just gonna go out…

This is fair.

Furthermore, I think it's best to consider Agile in its proper historical perspective. When it first emerged, its principles -- as you've enumerated from the manifesto -- were uncommon enough to be novel and insightful. In this context, the Agile philosophy was a legitimate reaction to the problems of its day. Whether or not it's been an effective remedy to those problems is a matter of hotly contested argument. But one is, perhaps, inclined to be more charitable to Agile when fixing it into historical place.

In principle, I don't think it's fair to call Agile -- the core, original theory -- a "sham." Rather, the "sham" is all the rigidity, trappings, and liturgy that have grown up around Agile since it reached its saturation point. At some point, Agile started to ossify into a shadow-image of everything it was intended to fix. But I think that failing reflects the nature of its practitioners more than it does the core philosophy.

Re: Agile is a Sham

#23
Thinking is hard. It seems like the cycle is a) someone thinks b) people follow without thinking c) someone realizes that unthinkingly following some process doesn't work so they debunk the theory without thinking.

So the question you have to ask yourself before you participate in b) or c) is do you have any idea why or how agile is supposed to help?

Re: Agile is a Sham

#24
[Obligatory plug and disclaimer: Agile professional who wrote an earlier rant "Agile Ruined my Life" http://www.whattofix.com/blog/archives/2010/09/agile-ruined-... Also I am writing some practical how-to Agile e-books trying to undo some of the damage: http://tiny-giant-books.com/scrummaster.htm ]

Just differentiate between what Agile is and how people are pushing Agile on you. Different things entirely.

Agile is best practices around iterative and incremental development. Period. Yes, there's a manifesto and there's Scrum and all sorts of other things, but at the end of the day Agile is a marketing term. A place to go find out what people are trying in order to get better.

Two secrets here. One, team success is about 90% dependent on who is on the team. Good teams do well. Bad teams do poorly. But if you're going to have more than one team, you need some way to measure and talk about what they are doing, so you have to have something.

Agile -- when done correctly -- is just the minimum amount of something you need to get your work done. It is the minimum amount of process. After all, it's not like you can have no process at all. Whatever you're doing already is a process.

I've seen hundreds of teams struggle with Agile, and to me the problem is that we do a really bad job of balancing the difference between "here's a best practice that worked awesome for about 80% of the teams that tried it" and "These are the rules. You must do this." In many shops, Agile is just another way of micro-managing teams, sadly.

I can't help that. I also can't help the fact that lots of folks are out to make a buck on certifications and such. I don't think that makes Agile bad. Heck, I'm not even against certifications, although I'd never get one. I just think we take things too far.

I like the idea of having a marketing blurb "Agile" where I can go to find out what kinds of new stuff is being done. It helps me pick better reading material.

The second secret is that most teams, frankly, are not that good. So you need some kind of way to demonstrate that as well. Making things incrementally and in small iterations lets you see how bad teams are early on. You fail early and often. Then at least you have a bit of a shot at trying to help.

But believe me, I feel your pain. Sounds to me like you are a lot more upset at modern marketing and management attitudes than Agile. Remember that we technical folks have a way of over-doing whatever we get into, as I was writing in my blog before your post appeared! (It's still very strange to me watching HN how the same topic comes from multiple writers at the same time) http://tiny-giant-books.com/blog/agile-means-stop-focusing-o...

Re: Agile is a Sham

#25
No. Process is important; it's necessary. There are at least two prongs to this problem: one is you can't manage what you don't measure, and process gives you a way of tracking functionality implemented, defects, defects resolved, etc. There's nothing inherent to programming that gives your manager or your team any sort of knowledge about how far along you are, or just as importantly, when you will be done. You can hack all you like and -- even if your code is visible to all -- there's no way of guessing how far along you are, or if that needs-to-be-fixed-yesterday bug is close to resolution.

The other prong to this problem is you can't remember what you don't record. Well, you may have an eidetic memory, but unless the company generates deliverables besides code that explain what the code does or is supposed to do, a change in team X years down the line may mean the company forgets why Joe wrote the widget wrangler in the way that he did, and accordingly the widget wrangling module becomes an unmaintainable black box. Generating these deliverables is a part of the software process, whether Agile or otherwise.

And there will always be a process. This arises simply as a consequence of the fact that management needs to know how well you're doing, and if you're performing in a cost-effective manner, to many decimal places of precision. And if the process isn't agile, it could be something far less pleasant.

Agile Processes (big A) may sound scammy to you, like their proponents are trying to sell back to you shit you already know. But you only know that shit because you're a software developer. Management can't do what you do, and they're the target audience of Agile Processes like Scrum and XP. It gives them a ready-made Industry Best Practice that they can decide with confidence to adopt company-wide, with little perceived risk because it's so proven and widespread. Compare and contrast with the success of the "open source" meme in convincing companies to adopt, and participate in, free software.

Re: Agile is a Sham

#26

[Obligatory plug and disclaimer: Agile professional who wrote an earlier rant "Agile Ruined my Life" http://www.whattofix.com/blog/archives/2010/09/agile-ruined-... Also I am writing some practical how-to Agile e-books trying to undo some of the damage: http://tiny-giant-books.com/scrummaster.htm ] Just differentiate between what Agile is and how people are pushing Agile on you. Different things entirely. Agile is be…

> In many shops, Agile is just another way of micro-managing teams, sadly.

I think this is a big source of the complaints, yeah. If I had to narrow it to one specific mis-implementation of agile, it'd be having daily standup meetings turn into daily mini-performance-reviews with the boss. Iirc the Official Scrum Rules try to avoid that by decreeing that the scrum-master should be just another team member, and not a project lead or other kind of supervisor/boss, but afaict that recommendation isn't often followed.

Re: Agile is a Sham

#27

[Obligatory plug and disclaimer: Agile professional who wrote an earlier rant "Agile Ruined my Life" http://www.whattofix.com/blog/archives/2010/09/agile-ruined-... Also I am writing some practical how-to Agile e-books trying to undo some of the damage: http://tiny-giant-books.com/scrummaster.htm ] Just differentiate between what Agile is and how people are pushing Agile on you. Different things entirely. Agile is be…

> In many shops, Agile is just another way of micro-managing teams, sadly. I think this is a big source of the complaints, yeah. If I had to narrow it to one specific mis-implementation of agile, it'd be having daily standup meetings turn into daily mini-performance-reviews with the boss. Iirc the Official Scrum Rules try to avoid that by decreeing that the scrum-master should be just another team member, and not a p…

Yeah, you nailed it. I have seen this done so poorly so many times that I simply tell people to rotate the ScrumMaster role. Otherwise they just make it into a manager.

A lot of times they want to keep the old Project Manager around, and that's very difficult to do. Project Managers and ScrumMasters are completely different animals. A few times as a coach I have literally thrown the PM out of the stand-ups and told them not to come back because they were turning it into a status meeting.

I'm not trying to plug coaching, but if you're trying Agile, you really need an independent outsider to help referee stuff like this. Maybe it's only the SM from the team down the hall, but stuff like broken standups can be impossible to fix without a little neutral nudging.

Re: Agile is a Sham

#30
"thats SCRUM and TDD and all the rest; it is all those new ways of managing development projects"

TDD is a style of developing and nothing to do with management. Anyone who has worked on something more than a trivial size app knows how useful having a decent set of automated unit tests are. Anyone who dismisses this as a "management scam" is fooling only themself.

Post reply on HN