TI-BASIC:Copyrights

From Learn @ Cemetech
Jump to navigationJump to search

Before releasing your TI-Basic programs to the public, you should choose which license you want to release them under. A license for a TI-Basic program may seem like overkill to some people, but it is an important part of the program -- it dictates what people are allowed to do with the program, including using the code or graphics in their own programs, distributing the program on the Internet, and even modifying the program.

While there are literally hundreds of licenses available to choose from, the two most common licenses that are used are [wikipedia:copyright Copyright] and [wikipedia:GNU_General_Public_License GNU General Public License (GPL)]. Copyright is the traditional license, and it simply means that you retain all rights to the program. GPL is a version of copyleft, meaning that people can copy, distribute, and modify the program. The one condition, however, is that they then need to release their program under the GPL as well.

In addition to copyright and GPL, another common license is [wikipedia:Public_domain Public Domain]. This license is not really a license in the literal sense, but means that you want to release your program to the public and give up all rights related to it. Doing this causes the program to become public property, allowing anybody to do with it whatever they want.

When enforcing a license, you usually include it in the Documentation of the program. The license statement can be as thorough as you want, but a sentence or short paragraph is generally sufficient. You just want to state what license the program is under, and list any restrictions that you are putting on the program. You can also include a URL link to the license's website on the Internet. Here is an example of a typical copyright license:

Copyright © 1996-2007, the ticalc.org project. All rights reserved.

Thoughts to Consider

Regardless of what license you release your program under, an important consideration is how others might be able to learn from your code. This mostly applies to beginner programmers who are just starting out learning TI-Basic, and don't have very good coding habits and practices established yet, but it can certainly apply to any TI-Basic programmer.

It is a good idea to allow others to study your code, and use the techniques and concepts in their programs, because that increases the quality of TI-Basic programs being released. This also makes sense on a practical level because there are generally only a few ways to accomplish certain tasks in TI-Basic, such as Movement or Subprograms.

Even if you come up with a truly original technique (such as using the Binompdf( and Binomcdf( commands as substitutes for seq(), arguably the best thing to do is to share it with the TI-Basic community. You can ask that others attribute it to you, or simply release it completely with no strings attached.

Of course, if somebody uses a technique or concept from your program, a kind gesture on their part is to give you credit for it. This isn't a strict requirement -- you aren't going to have their program removed from a program archive if they don't list you in the credits -- but it does go a long ways towards maintaining the open and collaborative nature of the TI-Basic community.

The only real exception to this is using somebody else's graphics, in which case you do need to get their permission to use their graphics in your game. However, if you don't plan on releasing your game to the TI-Basic community, but instead just keeping it to yourself and your friends, then it doesn't really matter.