Pages

Wednesday, June 10, 2009

Programming Methodologies -- Time for me to join the modern age.

Before I became a BOFH System Admin / Network Admin, I started walking down the path of a software developer.  If you look at my bookshelf Software Development books out number my SA/NA books 3 to 1.  In the previous shop, I was going to do 50-50 SA work - Software Development.  There was enough interesting SA work that I decided to leave Software Development behind, at least as my primary means of earning my paycheck.  That didn't keep me from dabbling in my spare time.

After a lot of reading, contemplating, and searching I came across the Extreme Programming  Explained by Kent Beck.  I saw the light, a programming methodology that I could get behind.  I became an XP (Extreme Programming) convert.  I preached XP to whomever would listen.  The main stumbling block that I had in getting people to buy into XP was the concept of pairs programming.  While the documentation from most XP based projects should that 2 people working together overtime were more productive, it was often view by management as an excuse for the programmers to slack off and goof around.


Time has passed and new methodologies have been developed.  People have learned from are passed mistakes and found ways to improve upon them.  At the current shop, Castle Rock Research Corp, we have a number of software initiatives, and the company is using the Agile Methodology.  The two directors in charge of the various groups (Canada and India) are very conversant in agile programming, and have buy in from the developers and management.  You can read from one of their blogs at agileanimal.com.

My cursor reads of some of the Agile Methodology sites make it look very interesting to me.  For me the ultimate goal is to have a defect free software product that can be maintained and grown.  As long as you are using a Test Driven Design method, you have my buy in.  XP is my first love, but even it can be refactored.

More Later ....
G.

No comments:

Post a Comment