I personally am excited by Agile as a developer, it concentrates of the output rather the process itself. I feel it’s better than the alternatives. It has a quasi hippie flair to it – a kibbutz approach to software creation. (Thank my years in a hebrew bagel factory for that reference) But standing back I wonder how we got here and is Agile enough.
I am of the opinion that software development has to be regulated or all of this (the Internet, this blog & software in general) would crumble under the weight of it’s flawed design and implementation. Personally I would not want to work in that regulated profession. I like the creative outlet the current software development process gives me. But that selfish reason is not enough for me to argue that the status quo is best for the software industry in general.
I think of it like this: Software development is like Urban design. If you don’t plan it well you get crumbling bridges,
roads that go no where, traffic problems and your city will lack identity. It’s the same with software. But where you rarely see a city with these problems (Ok don’t look at Boston’s Big Dig too closely), software is expected to have these issues.
Urban engineers are regulated. Highly regulated. You have to jump through hoops to get things done, but these checks and double checks make sure the end product is solid – litterally. Software is developed with little to no regulations. There are standards and agreed upon frameworks, but no where does it say one HAS to use an array instead of a Vector. You’re free to use whatever you want too.
Someone out there might be thinking not all software is like that – medical software comes to mind. I have had a bit of experience in medical software and it is policed, but it’s self policed, by non-technical people. As our reliance on software becomes more important (I think we’re there already), it’s going to be critical that the same effort in assuring that our bridges and buildings don’t fall down should be applied to software.
Yet with the advent of Agile and it’s success, I don’t see that happening anytime soon. Agile changes the analogy from Urban Engineer to Collaborative Artist. It is a more organic approach to creating software. It doesn’t address the issues of crumbling under the weight of the software’s own inadequacy’s, but take the approach that these inadequacy’s are inevitable and it attempts to put a process in place to address them as the crop up.
Software has that advantage over a bridge. You can tear down software and rebuild it much more easily than a bridge. But even if you could build a bridge as fast as software would you drive your car over it if you saw a jumbo sized bandage used to keep it aloft? “Oh don’t worry we know these bandages are there and if another car falls we’ll fix it.”
Agile address alot of business failings other methodologies have and since business drives software development Agile and its ilk will most likely be the mainstay of software development for a long time. Which is fine by me doing a day to day job, but I always have this feeling that it’s a profession built on a house of cards.
nal table of the main event finale 4 months after the final 9 players have been decided. The idea is to build up suspense. That makes the duration of the series 5 months in total. I have a good chance to be right.


I don’t have a hobby. I’m not the hobby kinda guy. I’ve never actively looked for one. But I may have something at could be a candidate for hobby status: juggling. [Do you now understand why I was so noncommittal in that last sentence?] That’s right – I am learning to juggle. Not good at it now, but I’m making strides.