First, you need to consider the license you wish to use. This is an important choice not only because it dictates how your software can be used, but because it protects you as well. For instance, say you decide you want to “gift” your software to the world, and provide it free from any license terms or cost as public domain. This is very gallant of you, but it may leave you at risk if your software is used in some way that causes harm, or if someone accuses your software of malfunctioning. At the very least, you should enforce a license agreement that limits your liability, such as the MIT license, one of the BSD licenses, or the Apache license.