|None||Necessary||It is important to understand how licensing can affect your project|
Recommended skill level: low.
As with anything else in society, some of what you can and cannot do in software development is determined by the law. Most of the constraints in this particular domain stem from intellectual property laws: laws that make abstract things like designs, stories, or computer programs resemble physical objects by allowing them to be owned.
This chapter aims to give a brief summary of relevant intellectual property laws (enough to be able to read most software licenses), explain Free and open source software licensing, and explain how combining software from different sources works from a legal perspective. It also gives some rules we have worked out to deal with common situations.
Disclaimer: Good legal advice is timely, specific, and given by an expert; this chapter is none of these. It was written by an engineer, not by a lawyer, and it's a heavily simplified overview of a very complex field. The intent is to give you an overview of the basics, so that you will know when to check whether something you want to do has potential legal ramifications. Don't make any important decisions based solely on the contents of this chapter.
Without a license, all rights are at the author of the code, and that means nobody else can use, copy, distribute, or modify it work without consent. A license gives this consent. If you don't have a license for your software, it is effectively unusable by the whole research community.