Don’t Forget The License Headers In Your Open Source Software!

Back in 1999, we contributed some software, written in Java, to a Free Open Source Software (FOSS) project. At the time, it was a quite neat idea - a software framework designed to enable developers to take any kind of file, in any format, and make that file appear to be an XML data stream, even though there’s no XML anywhere in sight. Specifically, so-called SAX2 events are “automagically” generated by the framework, when non-XML files are input into the system. Why is that a neat idea? Well, because unlike most streams of data, these kinds of streams are self-describing. That makes the life of a developer super-easy because it means that they don’t have to spend hours, days or weeks writing special code that “understands” how a particular type of file is structured. Rather, the software framework does the hard work, leaving the developer free to think about what they actually want to do with the data contained in those files.
That was 1999. Today, it’s old code, and an old idea. However, as is often the case, software can live a long healthy life, way past the expected life the original authors had for it. Indeed, that’s one of the main value propositions of FOSS - let the code be free, in the sense of freedom. Why? Because, when code is free like this, it means other developers can make use of that code in whatever ways they like, even when the original authors cease to be involved with it.
Which brings me to today, when I received an e-mail from a Debian (Linux) developer. A Debian package he’d put together, that uses our code, had been rejected by the Debian administrators due to a missing license information in one file. We were meticulous in putting this information in the Java source code of our contributions. However, it seems that a single XML DTD slipped through the net, and we hadn’t put any FOSS license information in that one file. Getting a package rejected for something like this is obviously a bit of a pain for the developer involved.
So, the moral of this story is simple - if you’re developing FOSS, make sure you don’t forget the license headers in all your code! You never know when people will need that information in the future…
Neil wrote:
Well he did happen to pick one of _the_ mot stringent open source groups of people. IceWeasel
Posted 21 Jul 2008 at 7:01 pm ¶