Friday, January 4, 2013

 

Different Software Licenses


I use a bunch of different operating systems and they use different software licenses, and sometimes different parts of them use different licenses:

GPL licensed software: GNU/Linux
BSD licensed software: OpenBSD, FreeBSD
Motif licensed software: openmotif

Open Motif was released under a license allowing royalty-free distribution if the platform upon which it is used is Open Source. Openmotif first appeared in May 2000 as version 2.1.30

Motif itself is now licensed under the LGPL which bears some explanation which I will quote from wikipedia:

"The LGPL allows developers and companies to use and integrate LGPL software into their own (even proprietary) software without being required (by the terms of a strong copyleft) to release the source code of their own software-parts. Merely the LGPL software-parts need to be modifiable by end-users (via source code availability): therefore, in the case of proprietary software, the LGPL-parts are usually used in the form of a shared library."

Now to be clear, I prefer to release software under the GPL most of the time. I assume most people who read a blog like mine are familiar but just in case I'll include this link:

GPL

There are times where one might be inclined to use a different license,  e.g. the BSD license or even a license similar to the openmotif license. At least that's the theory since what I really did was release source code with no license mentioned at all, kind of an ad hoc free/open software release. So I'm going to mellow a bit and say if someone wants to use a different but still open/free type license then I'll accept that and not argue about it.

In the past it was a different situation again as I gave out copies of my various programs as binary only in the 1980s at no cost. Back then people didn't seem that interested in obtaining source code, at least not outside of academia but they were interested in using the software. This is still the case today as most computer users are non-programmers.

Now, to me the most important idea embedded in these different software licenses is that programmers and enthusiasts can obtain source code for educational purposes.  If one uses the source code of others it only seems fair to release any programs derived from free software as free software. This is the main purpose of the GPL and as I said before it's the license I'm most inclined to use.

Other important things include well written documentation for users and programmers. The elegance of a program is significant too, in that it performs the task it was  meant to do correctly and does so in a way which is well understood. It would be even more ideal if the software also used the minimium of system resources. Do one thing well, don't turn your program into the ultimate swiss army knife!

Leaving aside these details about what constitutes ideal software we can reflect on what advantages there are to free/open software:

 - Porting the code to a different platform
 - Fixing bugs, fixing spelling errors
 - Augmenting the documentation
 - Adding new features
 - Being able to use the program without having to worry about expiration dates or forced upgrades

I feel compelled to tell everybody about a certain software combination I've recently put on one machine:

 OpenBSD + X + Icewm + Dillo + Thunar + Leafpad + clipman + openmotif

OpenBSD is well compartmentalized. When you first install it you get the bare bones and nothing else. You must explicitly select the packages you want to install. As a result you end up with pretty much exactly what you want. I'm very pleased with the end result but allow me to explain why I'm so happy with these software components.

The target machine has only 256 megs of ram and a Pentium 3 cpu.

Icewm is a light weight window manager.
Dillo is a light weight web browser, released under GPL v3
Thunar is a light weight file manager, part of Xfce
Leafpad is a simple text editor, based on GTK+
clipman is a clipboard manager, also part of Xfce
openmotif is a toolkit for writing a GUI

The end result is a body of software that is very responsive, comes with all source code, and uses a minimum of resources. Note that these packages use different licenses but the end result is the user is happy, especially this user.

This page is powered by Blogger. Isn't yours?

Subscribe to Posts [Atom]