So I picked up “Practices of an Agile Developer” this past weekend. Read it this morning, and highlighted like crazy.
I bought the book because I’m dealing with a specific problem: a small(1) project has been given the green light using what our company calls “Act2;” a combination of Scrum, Agile, and Act. It’s worked in the past for other projects, and our small project seemed to be similarly aligned.
The problem we’re facing is the business management has made the technology decision to use .NET without fully understanding(2) what it would take (system, support, and developer – wise) to deliver the solution. We have great .NET developers, but little to no ASP.net developers (this is a web-app). Our server environment does not have the necessary structure to support ASP.net (we need an http_rewrite component – without IIS 7, or 3rd party Helicon, we’re toast).
On the other hand, I have written extensively about the LAMP stack – how large its install base is here at our company, how many resources we have on-staff for supporting the code and servers, and have even put together a demo(3).
So, after all my documenting, presenting, discussing with the top-brass, it seems that all my efforts have fallen on deaf ears. Chapter 4, practice 12 says “Justify Technology Use” and provides guidelines for approaching technology. I’ve followed those over the last 5 months (my opinions were documented back to January of this year). So, what do I do when all the tips have failed?
(1) I called the project small, since I am confident I could deploy the solution within 30-60 days, with two demos to the stakeholders as a single developer, with one product owner.
(2) I say “not fully understand,” and I don’t want that to seem like bashing – I just assume they don’t “get it” since the response has not been positive, or with any explanation of reason beyond “that’s how we roll”
(3) We finished one 30-day sprint (there’s the Scrum part) – my “from scratch” demo took 4 days and exceeded the features completed in the 30-day sprint!