
Now, I’m a huge fan of 37signals‘ software development process as laid out in Getting Real, but what I’m sure of is that behind all the loose, fast and easy are some pretty rigorous processes to keep everything under control. You just don’t get a million user product without some serious development lifecycle management.
The number of organisations I’m come across that still don’t use some sort of tools for development lifecycle management astounds me. Implementing a few pieces of the entire development lifecycle stream is a cheap and simple way of ensuring you’re not sitting on a ticking bomb. I’m not talking about implementing something as complete as, say, Polarion for Subversion (anyone out there used Polarion, BTW?) or similar systems. However, there are a few simple steps any developer or company can take to ensure that they are in less of a position to bring themselves undone should something go wrong:
- build a Linux box – buy some cheap commodity hardware and install Linux (any distro, it doesn’t matter) on it. Make sure Apache, MySQL and PHP are on the box. This will be the core of your toolset. You can get a good enough box for less than US$500. Stick in a decent amount of memory and a biggish hard drive and you’re done.
- do backup daily – this needn’t be grandfather-father-son stuff, but just ensuring that critical bits and pieces like email, documents and code are backed up somewhere like on a local server/tape drive or offsite at Omnidrive or Amazon S3. This can be run from your Linux box.
- use source code management – this one’s a gimme, and it’s easy. CVS or Subversion are completely free and simple to get running and they take a huge load off the possibility of losing everything. They also greatly facilitate code sharing and multi-developer projects. Install the software on the Linux box if it’s not already there.
- have issue management – kind of project management lite. Installing Bugzilla, or Mantis or Trac (if you have Subversion as your SCM solution) and logging tasks, issues and bugs goes a long way to keeping on top of where you are at in your project. Install this on your Linux box, too.
- implement collaboration and client management tools – I’m yet to find a better solution than 37signals’ Basecamp for general (and lightweight) project management, keeping up to date on where you are at on your milestones and staying in touch with clients and team members. And it starts off free, so you can try it out without any cost.
All of these tools are frankly, just as useful for one and two person companies as they are for larger organisations. The problems are there just as much for small groups and it’s not just an issue for the big guys.
Are you using some/all/none of these tools for your projects? What are you using? If not, why not?
Image © Malingering. Used under a Creative Commons Attribution 2.0 license.




{ 1 comment… read it below or add one }
Hi, We have a CF based project management tool. Would be very interested in hearing your comments (and readers’ comments) on the application itself.
You can take a free test drive at http://www.vertabase.com/contact_testdrive.html
There’s a post on our blog comparing Vertabase to Basecamp, as well.