Choosing A License

From TeachingOpenSource


Title

Choosing A License

Overview

Student will choose a license for a hypothetical software project based on criteria given.

Prerequisites

Should have had an introduction to intellectual property as it relates to software and to open source licenses. Completing Finding The License first would be valuable, as this exercise requires finding the license for existing software.

Learning
Objectives
After successfully completing this activity, the learner should be able to:

Students will be able to assess some of the criteria involved in selecting a software license; however, when in doubt (and especially when in doubt and using other's code), a lawyer should be consulted.

Process Skills
Practiced

What process skills will the student practice while completing this activity?


Background:

Every piece of software your students write should have a license, so it's a good habit to instill early on. In addition, since any novel and unique artistic work is considered copywrited when fixed in a medium (vast oversimplification, but it will do for this purpose), unless coders choose a license, their software is copywrited upon creation.

Good background reading:

Directions:

For each of the following hypothetical scenarios, research and choose an appropriate license. Choose A License is a good place to start, but will not answer all questions.

  1. You have written a piece of software and want anyone to be able to use it for anything they'd like to, but you want to have attribution if someone else uses your work. You also want to make sure that you don't give people the impression that you're implying a warranty.
  2. You have a photograph and you'd like people to be able to use it, as long as they give you credit and don't use it for commercial purposes.
  3. You've written a piece of software and wish to retain all rights to it.
  4. You've written a piece of software based on GIMP but with some changes, and you'd like to start distributing your version.
  5. You have written a piece of software and:
    1. want anyone to be able to use it for anything they'd like to
    2. want to have attribution if someone else uses your work
    3. want to make sure that you don't give people the impression that you're implying a warranty, and
    4. want to ensure that if someone contributes to the project that they then don't sue you for patent infringement.

Document which license you'd choose in each scenario and your rationale for that choice.

Deliverables:

The student will turn in (for each hypothetical project) which license they'd choose and their rationale.

Assessment:

Grading can be based on: 1) Obtaining a correct answer for the license *and* 2) Identifying the rationale for choosing that license.

Criteria Level 1 (fail) Level 2 (pass) Level 3 (good) Level 4 (exceptional)
Choosing the correct open source license 0-2 correct answers 2-4 answers correct, with valid reasoning (or more answers correct, but without valid reasoning) 4-5 answers correct, with valid reasoning All answers correct, with valid reasoning.

Comments:

  • This activity can be completed individually or in small groups.
  • For several of the questions, there may be more than one license that will work (legal stuff = not always simple ;-) Encourage your students to choose the simplest possible answer that they can find from among the commonly accepted open source licenses (the ones listed at Choose A License are a good start).
  • If students have different answers you can have a discussion about what factors led to each choice.
    • For example, if one student chooses the MIT license and another chooses the BSD license), it could be that the student who chose the MIT license did so because he/she noticed that the MIT license explicitly grants permission to *sell* the software, while the BSD license doesn't.

Additional Information:

ACM BoK
Area & Unit(s)

SP Intellectual Property

ACM BoK
Topic(s)

Intellectual property rights

Difficulty

Is this activity easy, medium, or hard?

Estimated Time
to Complete

How long should a typical student take to complete the activity?

Environment /
Materials

What does the student need? (e.g. Internet access, IRC client, Git Hub account, LINUX machine, etc.)

Author(s)

Gina Likins

Source

Is there another activity on which this activity is based? If so, please provide a link to the original resource.

License

This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License

CC BY SA.png


Suggestions for the Open Source Project:

It would be helpful if your project had some explanation of why it is licensed the way it is. Also, if there's someone in your community who has experience with choosing licenses for projects that would be willing to speak with the class (via Skype or IRC) that would be a great thing to offer.