- Douglas Gottlieb, Vice President, Creative Group at Barnes&Noble.com
- Kevin Meyers, Meyers Design Inc.
- Robert Douglas, Senior Drupal Advisor, Acquia
I was recently thrown headlong into the middle of a project where the team developing the site was doing a good job, but due to the time constraints from the client, combined with the fact that there were only really two developers on the team with clearly defined roles (modules and theme), time had not been taken to setup a good development workflow that would promote happy (multiple) developers and therefore, a happy client. Read on to see how you too can create a great setup for your development workflow and really help your clients get the bang for their buck, while keeping your developers happy.
Let's start off by listing some of the tools we're using here at Rapid Waters Development.
Unfuddle.com has been my recommended choice of project management, issue tracking, code revision control system and general communications tool for over two years. I first learned about this beauty from working with the extraordinarily talented people @Lullabot when I got my first big gig @SonyBMG.

Unfuddle has tools such as Projects, Milestones and Tickets that allow you to setup and manage every aspect of a project. The milestones help keep your team on target with the project. The tickets are a great way to assign bugs to members of your team and go through a verification process once they are marked completed. You can even update your tickets directly from your commit messages when committing code. All of these features are tools to keep your developers happy because of the convenience, and your client happy with the communications.
Unfuddle gives you the choice of Subversion or Git repositories to use for your projects. The number of projects is limited with free account, but the number of repositories is endless! Well, until you hit your storage limit that is... And as I mentioned before, being able to update your existing issues with your code commit messages is a huge time saver for developers.
Drush is a command line tool for Drupal that allows you to quickly and easily do many things typical to a Drupal environment. You can download modules, quickly enable and disable them, create features for use with the features module, and generally get a lot of the redundant tasks your typical, everyday developer encounters completed more quickly. Which of course leads to a happier developer and a happier client when the developers are using their time more efficiently.

This is a great utility for keeping track of your time spent on client work. Not only can you setup your developers with a way to track and report their time, but you can also link up subcontractors in order to report their time through their own accounts on your project. You can even give out a login to the client so that they can log in and see exactly how you are spending your time so that there are no surprises when it comes time to bill. They can view who did what and get detailed notes on the tasks (if you provide them of course).
Now that you have an idea of some of the tools that can be used in your workflow, allow me to go on and tell you how we at Rapid Waters have been using them to create a workflow that helps promote our sanity as well as the client's. Here's a few topics I'll go over in this series of articles.
// comments
// add comment