Many online professionals, in particular those dealing with commercial software packages, don't worry about securing a copy of the source code of their deliverables after the completion of their projects. "That's very risky in the long term", said Tomas Christiansen, project manager at GI (The Danish Landowners' Investment Association) at one of our recent community meetings.
The challenge: Without the final source code you are locked in
Today many online professionals simply leave it to their digital agency or system integrator to implement solutions based on their requirements, perhaps with some level of documentation, but without a final copy of the source code.
To quote Tomas:
"Without source code access, you are effectively locked in with your agency. If you have to migrate, e.g. from SharePoint 2007 to SharePoint 2010, but don't have the source code, you are forced to use the same digital agency. If the agency is too busy or is no longer around, you are unable to leverage the source code and have to start over"
There are several reasons why agencies may argue that you don't really need the source code. Some will consider the source code proprietary and their intellectual property, while others will be concerned that the trained developer will reveal simple human errors and real programming mistakes.
The solution: Put source code access into the contract
Even if you honestly wouldn't know what to do with thousands of lines of source code, it is still a good idea to demand source code access in your contracts. As Tomas says:
"If, for some reason, the agency refuses to give you the final source code together with the final deliverables, your only option to force them is to take legal action. This takes years and usually longer than the lifespan of most web projects. Your only real alternative - and it's an expensive one - is to start from scratch. And agencies fully realize this"
An additional advantage with having access to the source code, is that an experienced developer will be able to implement fixes without the agency. If you also have a support contract, this may take some additional negotiation to iron out, but as Tomas says, the real problems are typically about human communication:
The customer tries to say A1, the project manager hears A2, and the programmers programmes A3. Sometimes the programmer is not focusing while programming, and his work is subsequently of poor standard. There are things you can do to prevent this.
GI is a member of one of our network groups for online professionals, and shared the source code tip at a recent group meeting, where they also received constructive criticism from other group members for moving their projects forward.
If you’d like the chance to network with and learn from experienced online professionals, I’d encourage you to:
- Join one of our groups for online professionals in the UK, US or mainland Europe.
- sign up for the J. Boye Conference Philadelphia 2011, the premier conference for online professionals on May 3 – 5
What about your source code? Have you managed to get it from your agency? Did you ask?