My Agile Development: 2000-2003

Jan 4 ‘07

I joined an XP shop in mid 2000, and I was in for a very wild ride. It was quite a shock coming from an insurance company’s cube farm to a cramped, sloping office building with no central HVAC and big trunks of CAT-5 dropping from the ceiling like Half-Life alien traps. But the atmosphere was electric and the people were amazing. I was working with smart people in the XP community and learning a lot about software development projects, and not just from a tech point of view. The business side of the equation also fascinated me, and the dynamics of human interaction present in pair programming was really eye opening. I’ve finally compiled a draft of the “Pair Personalities” after years of pair programming, which I’ll post soon.

For almost a year I did XP to the core: pair programming, cycle planning with task estimation, tons of unit tests, refactoring, and all of the other favorites. But the Dot-Com bubble popped along with my job. For the next couple of years I hopped from gig to gig, and managed to keep my agile mindset intact despite not having much interaction with other agile developers. Here’s what I did to keep the love alive:

Be A Missionary

Several projects upon which I worked did not use a unit test framework, an IDE, source control, or other tools. When I was faced with this unstructured situation I became a missionary not only for agile development, but for good software development practices in general – a voice of reason. Email is not a good source code repository. Testing is good. Databases often store data way better than flat files. Copy-paste coding: bad! Objects are tasty. I always did my best to stay reasoned and logical with people who thought XP was nuts, since they figured I was nuts by association.

Test First Programming

I adopted test first programming on all of my projects. I found that the test would act as my virtual pair when I was programming alone: when I write my tests first, I am having a conversation with it regarding what I should do next, what methods and logic I should implement.

End to End Quickly

I will admit that I have the tendency to get trapped in the details of a feature. In keeping agile I try to steer myself away from this and focus on getting the application I’m writing up and running quickly, UI to database, and as bare bones as possible. Then I try to attach the features one at a time, again being very aware tangent-aware.

Eclipse

I started using Eclipse the day it was announced that IBM donated the project. The tool is amazing, especially the OO concepts, such as many ways in which you can find references to Objects, call hierarchies, and refactoring tools. If only they could keep the Hierarchy view in sync with the editor…

As fate would have it, the company that Dot-Bombed did not Dot-Die, but Dot-Merged with another company in the same business space. I was more than happy to leave the nomad lifestyle and join them again in 2003.

Comments on “My Agile Development: 2000-2003”

No comments have been left yet.

Leave a comment

Markdown is allowed. If you’re a robot, don’t even bother.

Click here to go home
Powered by aintablog