I love reading, and this Christmas resulted in a pile of new books — courtesy of the Amazon wish-list. I’ve been inspired to rethink my approach to development by two titles from this collection.
The first is “The Art of Agile Development” by James Shore and Shane Warden. I’ve been introduced to agile development methods in [...]
I love reading, and this Christmas resulted in a pile of new books — courtesy of the Amazon wish-list. I’ve been inspired to rethink my approach to development by two titles from this collection.
The first is “The Art of Agile Development” by James Shore and Shane Warden. I’ve been introduced to agile development methods in one of my Open University courses, but this is the first detailed description of the practices adopted by agile teams.
The second tome is “Transcending CSS” by Andy Clarke, which I must confess I was unsure about when I asked for it. I needn’t have worried, this is the best web design book I’ve yet read. I’ve learned a lot about the finer points of CSS positioning and Andy’s semantic approach to mark-up gels well with my interest in the XML in general.
The most exciting common factor concerns the topic of prototyping. It seems to me that approaching the whole application — from the persistence to presentation — with feature targeted development and frequent, early prototyping makes good sense. If nothing else this agile approach fills me with enthusiasm, and that may be half the battle.
I intend to introduce test driven development to my coding. Ruby on Rails and Java make good provision for this within their frameworks. PHP lags these two, and guess which I need to use in my next job? All is not lost though, I’ve discovered a test framework called SimpleTest, which is modelled on JUnit, and I’m going to give it a go.
I’m also investigating build, testing and deployment automation. Java provides the excellent Ant; a tool I’ve used to a limited extent in the past. Ant can turn it’s hand to just about any task that might need automating, but needs Java installed on the server. Unfortunately, this is something a minimal CentOS 5 server installation doesn’t possess, a little research and reconfiguration solved that problem.
Ruby has given rise to a deployment automation tool called Capistrano. I haven’t any experience with Capistrano, but most report it to be very powerful and flexible. There are a number of articles on the Web detailing it’s use for deploying both Ruby and PHP applications. I’ll be giving this a go as well, but initially only with Ruby on Rails.
I also want to try working much closer with clients using the user story, feature driven and iterative approach. The aforementioned rapid prototyping is a key feature, required to assist communication and control the direction of development.
This extends to the presentation layer in the form of XHTML prototypes, using semantic mark-up of the featured content with very little styling. Semantic mark-up and a systematic descriptive naming scheme should allow the design to be applied largely independently.
Will it all work? I hope so, but the motivation alone is appreciated.
There are no comment for this post at the moment. Please feel free to let me know what you think.
XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>
You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.