Custom and customized computer programs create unique challenges under the Copyright Act. More and more companies have custom software written by outside programmers to automate the company’s unique business processes. Great care should be taken when a company uses outside vendors, rather than its own employees, to create the custom computer programs. Written agreements are essential. Many companies have been surprised to discover, after spending dearly for a custom software program, that the outside programmer retained the copyrights in the software and could repackage the software for sale to others simply because there was no written copyright assignment. Custom programming contracts must be carefully negotiated in order to protect a company’s investment in the newly created computer program as well as its proprietary business processes and trade secrets.
Copyright laws were designed to protect the authors of creative works from having those works stolen or misused by others. An author’s copyright ownership of the work cannot be transferred to another, absent a written agreement. Oral agreements to transfer copyright ownership are unenforceable and the traditional concepts of estoppel or waiver do not apply.
Outside software programmers are becoming very sophisticated and often desire to retain all copyrights in any of the work they create. Those who use outside programmers must become equally sophisticated to protect their rights. One critical way to facilitate protection is to insist that the written engagement agreement specifically provide that all copyrights in the custom or customized software are expressly assigned to the company. Outside consultants and programmers often do not readily agree to a blanket assignment of all copyrights to a customer because much of the source code to be utilized in the project may have existed before the engagement, or may relate to the consultant’s fundamental ability to write code for others. This tension between the programmer’s interests and the client’s interests can be especially problematic if the custom software project is part of a business reengineering process and the consultant believes he contributes unique elements to the reengineered business processes.
Computer programs contain both literal and non-literal aspects. The literal component of computer software is the actual source code itself, which provides instructions to the computer. The non-literal aspects of the copyright include components such as screen design and the structure, sequence and engagement of the user interface. Non-literal elements of the program must be reduced to some tangible expression – not just a concept – to be copyrightable. Although source code itself is generally recognized to be copyrightable because it is normally an original and tangible work, non-literal elements of the program are more difficult to establish. Most likely, non-literal program aspects are supplied by the company as a result of active participation in defining and designing the user interface and actually outlining the steps and processes that the software is to complete. The absence of a clear written copyright assignment in the software will result in a confusing mix of multiple "authors" of the program, all of whom would theoretically have equal rights to use and sell the program with only a duty of accounting to other co-authors. Even though the company would have some authorship rights in the program, the outside programmer could still use, modify and resell the program to others to the detriment of the company that originally contracted for the work.
Computer consultants will often use outside independent contractors to perform the actual coding of the source code. Care must be taken to ensure that the outside consultant has obtained written assignments from any independent contractors used on the project. If not, a company may be confronted with a future problem where a programmer who was an independent contractor to the prime computer consultant appears seemingly out of nowhere and begins to market similar software in which the company believed it had the sole and exclusive right. Absent written copyright assignments from all programmers utilized by the outside consultant, there is a risk that the work for which the company has clearly paid will soon be available off the shelf to its competitors.
A company does have additional legal tools available to prevent the unwarranted disclosure or use of the custom program, even if there was no written assignment of the copyrights. Trade secret law continues to protect trade secrets that are incorporated into the program even without a written agreement. If the software contains the company’s trade secrets, effectively protecting those trade secrets may essentially prevent the author of the software from ever commercializing the program. The company will have the burden of establishing all the traditional elements of trade secret protection including that: the information constitutes knowledge not generally known in the industry; reasonable efforts were taken to maintain secrecy; the programmer had knowledge that the trade secrets were to remain confidential; and that the trade secrets had actual economic value.
Custom and customized computer programming issues are pushing the envelope of copyright law. Blending literal and non-literal aspects of custom computer software programs makes it difficult to identify the actual author of various components of the work. Alternative methods of writing source code to accomplish the same step or process, plus the various programming tools used by the programmers, makes isolating the author of each software component even more confusing and complicated. The only way to effectively protect the interests of both sides is to execute a complete and thoughtful written agreement clearly setting forth copyright ownership rights in the final product. As outside programmers and their clients continue to work together to create custom and customized software programs, the need for a clear written understanding of the rights and expectations of both parties must be established at the beginning of the relationship and continually evaluated as the relationship unfolds.