Archive for the 'Agile' Category

Pastures new…

Monday, 14th May, 2007

I am still alive but I’ve not really dedicated much time to blogging this year. Last Friday was my last day at Evolving Media. I enjoyed my time at EM, and they produce some quality work but I really want to move on to using more robust development practices. Namely using a versioning system again, when I first started there it felt a little bit like walking a tight rope without a safety net with no CVS.

I was also in denial about how much of an OO zealot I’ve become, the trouble is I’m not writing enough OO code to progress as quickly as I’d like. Not employing OO was basically a huge road block for starting test driven development, automated testing (continuous integration) and automated deployment. All of which are nice to have but come at the cost no one could afford at EM - time; victims of their own success in that regard.

As I’ve mentioned before, one thing I never really settled with was working on a Mac. It was doing my head in going to work on Mondays and hitting CTRL instead of the Apple key and pressing those retarded page up and down keys that aren’t (they only scroll your screen and not the cursor).

I’d have the reverse situation at home where I’d keep hitting the ALT key instead of CTRL in Windows, ALT + right for End, ALT + left for Home and @@ for “”. As developers we use # symbols more than most and ALT+3 just isn’t convenient dammit. Apple keyboards, pha!

I think a six month run on OSX was long enough for me to decide I’m still a Windows fanboy, there’s some dev tools for Windows I’ve grown up on. I never found a decent replacement for Regex Coach (I even made a long over due donation the other day as a thank you!).

So where am I off to next? On May 21st I start at Alexander Street Press, an academic publisher with US roots who focus on the humanities. I’m looking forward to it; the two guys I’m working with, Paul and John, seem really knowledgeable, I’m sure I’ll learn a lot.

I’ve a week to myself this week to tie up some loose ends (private work namely). I’m hoping to get some more posts up here this week. In an ideal world I wanted to:

  • Push my new blog layout live (3 columns tagged up with microformat goodness)
  • Make a start on Groovy in Action
  • Read more of PHP in Action
  • Ditto for Agile Web Development with Rails
  • Finally get Zend (PHP5) certified

But I can’t see me squeezing that all in…

Interview with David Hussman on Agile Development

Sunday, 22nd April, 2007

InfoQ has a decent interview with David Hussman on Agile Development, it’s 40 minutes but a worthwhile insight into Agile methods from a veteran.

I realise my posts have been few and far between this year but I’m slowing getting organised, I’ve actually got a bed to sleep in now, and a new job! (yes another one)

I had PHP in Action on pre-order with Amazon but it’s release date got pushed back so I signed up to the Manning Early Access Program (MEAP) to get hold of the complete chapters early.

Review: Practices of an Agile Developer

Saturday, 30th September, 2006
The corner of my copy was damaged during delivery

I’m reading a lot of books on Agile at present, I figure this will help me de-bunk some of the Agile buzz on the web at the moment. I just finished reading Practices of an Agile Developer this morning.

I’ve seen an increasing amount of criticism about Agile methods, the primary response to this criticism is that those criticising are not practicing “Agile” correctly. My goal is to try and improve my own software development practices therefore I wanted a clear understanding of what “Agile” is so I can do it right from the start.

The delivery guy clearly decided to do a bit of down hill sledging with my copy - burning through one corner of the packaging and the book!

For the most part I liked the format of this book, it’s quite concise at 172 pages but this is no bad thing as what needs to be conveyed is done well with good quotes, analogies and aphorisms.

This book contains 9 chapters, each one of these are broken down into more bite sized topics. Topics begin with the shortcut method of getting the task done - one that should not be part of professional software development but still occasionally find there way in there. The section then goes on to explain how the issue should be approached, a sound bite summary from your guardian angel, what it feels like and advice on how to keep your balance when implementing the practice.

While reading through the book a many of the topics seem like common sense. I’d even say some practices mentioned in this book like keeping your code simple and writing cohesive code isn’t Agile per se but general good programming practice.

  • “Quick Fixes Become Quicksand”
  • “Damn the Torpedoes, Go Ahead”
  • “Put Angels on Your Shoulders”

The name of some topics smelt, to me, like the authors are trying to coin development practice patterns.

The early chapters are more people orientated than the later part of the book, after reading the first 50 pages I felt as though I’d just read how to be a good person / conscientious employee rather than anything Agile developer specific.

This isn’t a criticism probably more just a realisation that the Agile approach is one that emphasizes people, collaboration and doing The Right ThingTM. The more I read on this topic, the more I get the impression that Agile isn’t as new a concept as I’d first thought but this is simply the current guise for this construction orientated methodology.

This book did enlightening me on a few terms I’ve run into before but have never taken the time to research. One in particular is “Tell, Don’t Ask”, chapter 6 explained this well.

“Procedural code gets information and then makes decisions. Object-orientated code tells objects to do things.”

If you want to pursue some of the practices such as User Stories or Agile estimating and planning you’ll probably need to purchase another book on those subjects rather than rely on this book alone.

Throughout this book recommended reading references are included for further insight on a topic and Appendix A provides a list of useful links if you want to read up further on subjects.

In conclusion this book accomplishes what it sets out to do, present a good overview of the Agile practices without pitching it as some sort of religious dogma that has to be followed to the word.

Agile and the Google way

Friday, 29th September, 2006

Steve Yegge, a Google developer, has posted a lengthy article on good and bad agile where he dismisses discusses Agile methods and Google’s work practices. This is a lengthy post but if nothing else reading the comments is worth while since some intelligent responses have been posted.

This has popped up in a number of places in last couple of days.

You are currently browsing Mostly PHP MySQL Javascript Linux, some Ruby Java frameworks agile methods but overall web programming and software development in general archives in the Agile category.

Categories

My Bookshelf

PHP in Action: Modern software practices for PHP Agile Web Development with Rails
xhtml 1.1 compliant   xhtml 1.1 compliant