I just got a link to a digital edition of NT Insider, paper I used to read during my university studies (it seems pretty hard core stuff now…). Since then I forgot all about IRQs and kernel level debugging, but I remember I always loved “Peter Pontificates”.
See “Pros & Cons of Agile SW Development Methodology” to understand why agile is a temple of stupidity and was designed strictly for idiots, who wouldn’t do anything properly anyhow. Or maybe not? Peter at his best ;)
Here’s a direct link to pdf file.
Correct me if i’m wrong, but doesn’t Google use Scrum(which Peter classifies as agile) for most of their dev?
Gert, I’ve seen some articles about Scrum @ Google and I think they can get pretty good results with Agile. And here a key word: “pretty good results”. This is the biggest difference between Google which can produce “beta” products which are cutting edge in innovation department, but work “quite well”.
Agile is all about trade-offs, it works great for most of cases, but I believe from Peter’s perspective it may fail terribly. Peter working on low/kernel level projects (drivers etc.) can’t allow himself for too many trade-offs, compromises and workarounds. He don’t have any flexibility, driver must fit into architecture, perform well and match hardware.
I linked to Peter’s article as I found it quite stimulating. Just think about other examples where Agile is just not working, I think we all can name a few.
I think Agile, conceptually, is great. In the real-world application, it’s great for projects where the end client is uninformed or only has the vaguest notion of how things will work and needs to add to the project specification on-the-fly.
From a project management perspective, it’s a f#(king nightmare, and I speak from personal experience. It would be best if a PM was paired with a team of developers and there was no sharing/overlap of developers between PMs. However, my experience is that it frequently doesn’t work out that way, and it necessitates excessive communication between PMs, as their individual projects start impacting each other due to resource allocation.
All in all, I’m pretty soured on it.
Interesting commentary from someone who works on the perpetually late and still lousy windows kernel.
It’s been my experience that any true development (i.e. more than a toy project like an iPhone app) quickly surfaces all the shortcomings of SCRUM — and there are too many shortcomings to name here.
This video, although hilarious, has a serious message. It shows why companies are choosing to waste money on Agile:
http://www.youtube.com/watch?v=nvks70PD0Rs
John