Development: Plan, Collaborate, Control

Development teams of all sizes are forced to deal with certain common obstacles in any shared coding project.  Proper planning should take place before development begins to define your project's goals and requirements.  As the project continues collaboration and communication becomes essential to maintaining efficiency, with code control stepping into that spotlight.  I wanted to share my team's approach to solving these dilemmas using a few tools that integrate nicely to offer a dependable, flexible, and affordable solution.

1. Planning Tool: Basecamp | http://basecamphq.com

Basecamp by 37Signals is an online project collaboration tool that offers a variety of plans ranging from free to $150/Month, depending on your needs.  This tool integrates several project management features in one location within a flexible and customizable environment.  Here are some of the features or you can take a look at their online tour:

  • Milestones
  • Time Tracking
  • Messages/Comments
  • Writeboards
  • File Sharing
  • To-Do Lists
  • RSS Feeds
  • Dashboard Theming

In addition to these features there are several other niceties like custom URLs and online Chats (just in case you don't use one of the 34 million chat programs out there).  Moving along in the project cycle...

2. Code Control: SpringLoops | http://springloops.com

I realize that collaboration and communication and code control go hand-in-hand, but for the sake of this post we are going to say this step is handled first.  SpringLoops is a relatively new web product that focuses on providing rapid collaboration and source control for your code, utilizing Subversion as its base.  Plans start with a free option and peak at $96/Month.  It also offers some really nice features such as:

  • Automated revision-based deployments
  • Web tool for viewing source code
  • Activity Logs
  • RSS Feeds
  • Basecamp integration (we will talk more about that later)

You will need some sort of Subversion client to make the code check-ins.  I personally use (and recommend) the Microsoft Windows tool TortoiseSVN provided by tigris.  It does support Vista as long as you can deal with having XP-style context menus and not the fancy new Aero-style menus.  There are a variety of other tools out there that you may prefer, but I will leave that decision to the reader.  Which brings us to...

3. Collaboration and Communication: Basecamp + SpringLoops

Did you think I was going to introduce a new tool?  Well if you did, good news - it is unnecessary.  SpringLoops is able to easily integrate with Basecamp via the Basecamp API to provide real-time updates on both sites.  You can tie different code revisions in SpringLoops to Milestones and quickly see where the project stands at any time.  Check-ins are tracked and sent to Basecamp along with any comments included at the time of check-in. 

It is a little difficult to see, but in the previous picture labeled "SpringLoops Revision Review" you can see on Rev. 45 that a comment was logged.  Below is a screenshot of the message SpringLoops automatically logged in Basecamp to keep my team updated.  Not bad, eh!  You will see I also added a comment mentioning a bug after the check-in so that the rest of my team was kept in the loop.  How's that for effective collaboration and communication?

I hope that this has adequately explained the sleekness that this setup boasts.  I am not affiliated with either of these products and receive no reward for this post.  The truth is that I have been so pleased with several aspects of this integrated approach that I wanted to share my experience.  My favorite feature is the ease of automated deployments offered by SpringLoops.  You can do that with several other products, but chances are you will be spending a great deal more for very similar capabilities.

I hope to post a follow-up screencast that will walk you through this process with actual examples of making changes to DannyDouglass.com.

Update: I have completed the screencast | Download

kick it on DotNetKicks.com

[dnk:http://www.dannydouglass.com/post/2007/12/Development-Plan-Collaborate-Control.aspx]

$DNK$

  • Permanent link to this post Permalink 
  • Share this post! Share It! 
  • View this post's comments Comments (3) 
  • RSS Feed for this post's comments Comment RSS
  •    


Comments

Posted on 12.24.2007 18:55 PM #

Troy Goode

Troy Goode us
Very nice, SpringLoops is awesome! Hopefully they push out the update they've been promising soon. I'm looking forward to the screencast.

Posted on 12.25.2007 21:44 PM #

Danny

Danny us
Thanks Troy. I'm definitely looking forward to the SpringLoops update!

Posted on 12.26.2007 10:22 AM #

Brett Gardner

Brett Gardner us
Great work on the Screencast! Being involved in the project, I'm already sold on the elegance of this setup. For small, distributed and agile dev teams, handling planning, collaboration and control in an effective manner is always a difficult challenge. This setup not only accomplishes that, it does so with free and/or inexpensive tools, which is KEY if you're trying to work on a small pet project, or just f-around with new technology or techniques. Great post.

Add comment


(Will show your Gravatar icon)  

  Country flag

[b][/b] - [i][/i] - [u][/u]- [quote][/quote]



Live preview

Posted on 07.4.2008 15:49 PM #


search


AddThis Feed Button

blog categories

blog tags

my pictures

Flickr Gallery Coming Soon!

recent comments   RSS Feed for this post's comments