When you commission an artist to create a painting or sculpture, typically you own the end product when it’s finished, to do with as you like. The artist can’t come back a year later and take it back. If you have a custom-designed house built for you, it’s the same thing: You—not the builder—own the house.
But who owns the plans to your house? You or the architect?
The answer, of course is “It depends.” Specifically, it depends on the terms of your agreement with the architect. An architect who retains the rights to the blueprints can sell (or license) them to someone else. Your next-door neighbor could build a custom-designed house exactly like yours. It’s something to keep in mind when you are working with an architect.
Similarly, if you are paying an outside contractor to develop software for you, you should be aware of who owns the source code when the project is complete. Sure, you own the executable files. But if you do not also own the source code, you are potentially making a costly mistake.
Advantages of Owning the Source Code
The importance of owning the source code when outsourcing development work cannot be overstated. Consider:
- If you own the source code, you—not the developer—get to decide who works on the next version. If the developer owns the source code, you’re locked into working with that developer.
- If the developer owns the source code, he or she can use it in other projects for other customers. Imagine your chagrin when your competitor comes out with a mobile app that looks a whole lot like yours—and you can do nothing about it, because you have no rights to the source code.
- If the developer owns the source code and then goes out of business, enters bankruptcy proceedings, or becomes subject to a criminal investigation, it may be difficult or impossible to obtain the source code to have someone else work on it.
"We have worked with a lot of clients who have had rocky relationships with their past developers. If you don’t own your source code, you’re stuck in a bad relationship with someone who you may not want to continue working with."
- J.D. Roger, Operations Manager.
In that case, your options are to keep working with an inefficient developer, or start all over from scratch. It has broken our heart a few times to work with clients who have an app that they simply cannot add features to because they don’t own the source code, but are also unwilling to work with their previous developer due to a bad relationship.
If you are outsourcing a small project that you know will be a “throwaway”—for example, an application that will only be used temporarily until a major systems integration project is finished—you might not care who owns the source code, and you might get a better price from the developer for giving up the source code rights. For almost anything else, however, retaining ownership of the source code is the only sensible choice.
The important lesson here is to check (or have an attorney check) the terms of the agreement with the developer. Insist on retaining the rights to the source code—and make sure the developer delivers the source code files at the end of the project. It might cost you a bit more, but when it comes time to do an upgrade (or even minor enhancements), you will find it is well worth it.