As a software developer, you might not develop apps for enterprises with legal departments. Maybe you'll make your own app some day; maybe you'll be able to let people use it in exchange for money or goods.
Once you've finished developing your unique and innovative app, how do you ensure what will happen, and how protected you are, once your creation is released? This legal overview for beginner software developers will help answer questions like:
- Who holds the rights to my app?
- Where do copyrights come into play?
- Who can use/access my app?
- Do I need a contract with my users?
- What does setting up an End-User License Agreement (EULA) help me accomplish?
Copyright ownership and license agreements
Once your software masterpiece is complete, it's a copyrighted work, and you're the owner of the copyright. This occurs automatically and according to law. You don't need to worry about living in different countries with different national laws -- copyright law has been highly standardized internationally.
However, you don't want to simply sit on your creation -- you want people to play it and enjoy it. If you zip it together, upload it to a public web server, and post the link to Reddit, you're all set, right? Not exactly. You haven't determined how and who is allowed to use your copyrighted piece of software. So, how do you handle this situation?
The default copyright situation with no licensing statements or agreements is approximately this: the author holds all the rights, nobody else can do anything with the work (minor exceptions do exist). If you want to grant users legal access to your software, ship it with a license agreement or, to be more exact, with an offer to conclude a contract that grants the user a license to play your game.
How a contract enters the equation
The common sense understanding of a contract usually involves a document that serves as an expression of their agreement to the terms printed, thus concluding the contract and giving it legal power. Users should understand that by installing something, they're probably engaging into a contractual relationship. How come?
Contract law theory doesn't state that the formation of a contract should involve the signing of a document. In fact, it focuses on the intention of the parties to conclude the contract and be legally bound by its terms. Intention can either be directly expressed (by signing some paper) or implied from the behavior of the parties.
An example of an implied contract is a man who approaches the register with cash and the morning paper in hand. If he provides the sales clerk money and leaves with the newspaper, a sales contract has been formed.
Installing an application (like Skype) on your computer follows the same contractual pattern. The installation of most software involves clicking the Yes button several times, and one of those clicks was your acceptance to engage into a legally binding contract with the vendor (a "clickthrough" agreement), resulting in the same legal effect as if you signed in ink.
Courts explain these intricacies with legal terminology, but the bottom line is: If it's a typical license file and you know you should look for the contract but you don't, that's your problem and you could be in for a claim for damages.
The contracts that place terms on software use that are typically embedded inside the software distribution are called End-User License Agreements (EULAs). EULAs exist to bind end users with a valid contract, granting you rights to use the software (remember: you had no rights previously), and at the same time placing terms and conditions on your software usage.
Typically regulated within EULAs:
- Limitation of liability of software vendor
- Disclaimer of warranties
- Choice of law applicable to that contractual relationship
- Venue for possible disputes
Almost everyone in the software industry is at least somewhat aware of open source software and open source licenses (Apache 2.0, GPL, LGPL, etc.). Open source licenses are standard, ready-made, universal EULA templates. Open-source license templates are a great place for a rookie software developer to start.
Let's say you decide to go with the Apache2 license (with slight modifications). Be warned! A software EULA can create valid legal rights and duties like any other contract. Read the EULAs, and use a well-tailored EULA to retain precise control of your intellectual property.
A few months later, your game is a real hit -- millions of gamers, thousands are addicted! This makes you wonder... is providing your free software reasonable? Hardly!
Well, tough luck. After making this work available with a license offering unpaid use for unlimited time and unlimited users, there's no going back; you can't revoke your original offer.
What to keep in mind
It's important to consider simple, protective measures regarding copyrights, licensing, and EULAs. Try to keep the following in mind:
- Any software is a copyrighted work; copyright protection is automatic.
- EULAs are valid legal contracts, concluded by the behavior of the user.
- Open source software licenses like Apache2 are technically just EULAs.
- Licensing policy may not be possible to change after the initial release. It's easy to go from restrictive to more liberal, but often impossible to go in the other direction.
The guest post was written by Sander Sõnajalg and originally appeared in full on the ZeroTurnaround site. Sander has been in software for about 10 years, with a background in computer science and law. He's been a professional Java developer for the past four years and is also experienced in Ruby on Rails and Python. He was one of the first team members at ZeroTurnaround, joining the company when it consisted of only five employees. He advises ZeroTurnaround in intellectual property and legal matters.Also read on TechRepublic: A developer’s guide to copyright and trademark in Google Play