Three top tips for surviving open source projects

ANALYSIS
If its market penetration continues to grow, the open source software movement promises to narrow the gap between the computer industry and computer science. As larger companies such as IBM and Sun continue with open source initiatives, more and more smaller companies may follow suit and attempt to exploit the financial savings promised by this increasingly popular software development model. If your definition of open source encompasses the public release of source code by a commercial organisation for others to use or enhance as they see fit, then current software development practices need not be greatly affected. Many well-known open source projects operate on a different model where software is developed through a collaborative project driven by volunteers working as part of a loose consortium. This collaborative model presents a range of unusual challenges for even a seasoned IT project manager. Here are some tips on meeting the challenge. Tip 1: Task allocation
In a situation where programming work is being supplied on a volunteer basis, the issue of who-does-what is less within your control than it normally would be. To get the best from your teams, you need to remember that volunteer programmers will be most productive (and they can be hugely productive) when working in areas that naturally interest them. As in any project management situation, you will need to identify the major software components required by the project. Your more detailed technical planning phase will then break down these components into more detailed code deliverables. Once the deliverables are known, you can ask your volunteer programmers to express their preferences for task allocation. Naturally, it rarely happens that all tasks will find a keen volunteer, and you may have your own reasons for wanting particular people assigned to particular tasks. In this context, there is a delicate balance to be maintained between preserving your necessary authority as project manager, and preserving the great asset that is your programmers' enthusiasm. A "semi-democratic" system works well here; ask for each coder's top three preferences and do your best to assemble teams that reflect at least some level of natural interest. Keep a note of those who "miss out" completely on their expressed preferences, and make it clear that you will try to assign them tasks of personal interest in the next phase of task allocation. Tip 2: Channels of communication
Working with distributed programming teams is a challenge in the best of times. In a situation where there may be limited budget for travel and you may be relying on programmers you've never met, keeping communication channels open is critical. Online communication tools come into their own here. It's rarely a good idea to rely solely on e-mail, however. Too often, e-mail discussions go "back channel" and drag on behind the scenes between a limited number of participants. This means that you as the project manager can miss out on important deliberations, or may be prevented from smoothing out conflict between team members or steering the project in the right direction. Make it a priority to set up a Web-based forum such as a wiki for online discussion and document storage, supplemented by occasional e-mail broadcasts for the most time-critical issues. Make sure that your forum is well publicised and used consistently; e-mail discussions or debates that arise spontaneously should be gently redirected to the forum. It's easy for such forums to become cluttered and disorganised if they're not well maintained, so consider the information architecture of the forum carefully when it is first set up. Consider adding the job of forum maintainer to your list of tasks, or you may appoint a willing volunteer to help here. Tip 3: Revision control
Source revision control, including the maintenance of a definitive source repository at a single location, will be critical to the success of your distributed open source project. Most popular revision control systems support distributed access. CVS, for example, is popular choice in the open source world and has good support for secure remote access. Make sure at the outset that you define a clear policy with respect to revision control. Who will have "commit access" (the ability to upload modified code to the repository)? How regularly should the repository be checked for updates to be downloaded ("local synchronisation")? How often should the repository be updated with new and stable code releases? Regular local synchronisations and repository updates are particularly important when working with volunteer teams whose enthusiasm can sometimes overcome their self-discipline. Ensuring that everyone is working from up-to-date source material wherever possible will help to prevent and detect specification creep or interface drift. Whatever your revision control policy, it should be clearly stated and known to all. Detailed notes about how to use the chosen revision control system with your project repository should be provided so that there is no excuse for not following the policy. On your mettle
Managing an open source project relying on volunteer programmers will keep you on your mettle and test your ingenuity. Every project will be different, of course, but if you remember these three tips -- aim for preference-based task allocation to maximise enthusiasm, direct project-related communication to a well-structured, universally accessible forum, and define and stick to a clear revision control policy -- you'll be giving yourself and your team of volunteers a strong start in the open source stakes.
For a weekly round-up of the enterprise IT news, sign up for the
Enterpise newsletter. Find out what's where in the new Tech Update with our
Guided Tour. Tell us what you think in the
Enterprise Mailroom.

Post your comment

In order to post a comment you need to be registered and logged in.

You can also log in with Facebook. Log in or create your ZDNet UK account below

  • Login

Will not be displayed with your comment

By signing up for this service, you indicate that you agree to our Terms and Conditions and have read and understood our Privacy Policy. Questions about membership? Find the answers in the Community FAQ

Get ZDNet UK's daily newsletter

Enter your email address to sign up

ZDNet UK Live

BrownieBoy

@Jack, > Works really well for thieves.... Nice attempt to deflect the argument by tossing in a point that's totally irrelevant, even it were...

13 hours ago by BrownieBoy on AMD Ultrathins to challenge Intel Ultrabooks
bootlegger

Make that 13 people now - I got refused today at Manchester airport. I thought I was up to date on this legislation - I knew of the EU ruling from...

16 hours ago by bootlegger on UK airport body scans will not be opt out
tinycg

Don't forget to check out apps like GoodReader or SlideShark either, they're indispensible for people on the go in presentation situations. Best...

19 hours ago by tinycg on Four top iPad apps for people on the move
TerryRK

Well it seems there is something a number of us agree on. Why is the Ubuntu Unity launcher so ugly? I thought perhaps it was something to do with...

23 hours ago by TerryRK on A tale of two distros: Ubuntu and Linux Mint
Freebies202

Duplicate comments are not made intentionally. Its very good to know that now you are keeping check on this problem because sometimes a commenter...

1 day ago by Freebies202 on Microsoft fixes blog comments, speeds up blogs with open source
kevinmchapman

"the very significant number of users" and "many (most) of us" - you have no evidence for these statements. It is a fact that most users are saying...

2 days ago by kevinmchapman on A tale of two distros: Ubuntu and Linux Mint
Marg Menzies Harrison

Another grammar faux pas is the improper use of "you". When sitting down down in a restaurant, for example, I get cringe when the waitress...

2 days ago by Marg Menzies Harrison via Facebook on 10 flagrant grammar mistakes that make you look stupid
zdnetukuser

And NOW, folks, for Canonical's next trick... Kubuntu is late. Here's a pencil. Draw your own conclusions. cf.:...

2 days ago by zdnetukuser on Linux Minterface
Moley

@kevinmchapman. The discussion here reflects the very significant number of users who really do like the traditional menu system and who wish to...

2 days ago by Moley on A tale of two distros: Ubuntu and Linux Mint
kevinmchapman

Er, no... It is an efficient means of finding the application/file/setting you need in one place. The icons are a simply a fallback for when you...

2 days ago by kevinmchapman on A tale of two distros: Ubuntu and Linux Mint
TerryRK

Isn't the provision of a text based search an admission by the developers that the mass of icons approach does not work? I don't need to use a...

2 days ago by TerryRK on A tale of two distros: Ubuntu and Linux Mint
kevinmchapman

"Unity and GNOME 3 both abandon the old text-based cascading menus in favour of a graphical icon-driven system." Point truly missed. Both use a...

2 days ago by kevinmchapman on A tale of two distros: Ubuntu and Linux Mint
TerryRK

whs001 - Thank you, I'm glad you liked the article. I absolutely agree with you on your first point. I should perhaps have made it clearer that...

2 days ago by TerryRK on A tale of two distros: Ubuntu and Linux Mint
Dennis Nilsson

If we allow corporate interest to dictate the way our government circumvents due process against foreign entities then we should accept the same...

2 days ago by Dennis Nilsson via Facebook on ACTA stumbles in Germany
GHar123

I totally dislike pirating of works, I fear that artists will be deterred from creating works if they think that they are going to get ripped off....

2 days ago by GHar123 on ACTA stumbles in Germany
JCB33

How dare film makers, artists or anybody that invests in creativity stop us pirating their works for free. I want to be able to walk into my local...

2 days ago by JCB33 on ACTA stumbles in Germany
Moley

@GrueMaster. I prefer horses for courses rather than one size fits all. I, and I suspect most other computer users, do not really wish to have...

2 days ago by Moley on A tale of two distros: Ubuntu and Linux Mint
greycynic

The product that scares me every time I have to use it is the Office 2007 version of Excel. The first bug that I found was applying the median...

2 days ago by greycynic on Ten flawed products that derail productivity
GrueMaster

Nice review and very informative. One thing I'd like to add (in reply to whs001's 1st question), the main reason to have the same interface from...

3 days ago by GrueMaster on A tale of two distros: Ubuntu and Linux Mint
Frederick Wrigley

I'be been using Mint 12 since the RC came out, and I am far more happy with the Cinnamon, the Mate, and, yes (with extensions), theGnome 3...

3 days ago by Frederick Wrigley via Facebook on A tale of two distros: Ubuntu and Linux Mint

Latest in Application Development