When you put your code out under an open source licence, how much control can you expect over what it's used for?

Open source has often been described as 'free as in speech, rather than free as in beer'. Yes, it's software that's free to use, but the lack of a price tag isn't always the main point.

For some it's about not being encumbered by limiting commercial licences or patents and royalties, for others it's about the importance of being able to see and modify the source code of what they're running (or distributing source so users can see it).

And as I've long said, open source can also be 'free as in puppy'; you take on the responsibility of care and keeping when you start to depend on open source software.

You can run into problems if the project is no longer developed, or pulled suddenly when the company is bought by Apple and you discover you were using open source components that depended on a closed source core like FoundationDB, and that core is no longer available.

That makes it vital to always look carefully at the licence for open source software, especially if your business is involved (that's part of the care and keeping of the free puppy).

But for some software developers, the free speech comparison is getting more relevant.

Take the GIMP project, which stopped using SourceForge to distribute the Windows installer for its open source image editor in 2013, because of the ads that started appearing on the site featuring download buttons for alternative versions of the software.

GIMP left the site up because there were so many links to it online, but stopped updating the installers there. SourceForge deemed the product abandoned and started mirroring the releases from GIMP, but it also 'experimented' with wrapping the GIMP installer with adware.

The GIMP team wasn't happy (and SourceForge stopped wrapping the installer, although it didn't stop mirroring it). But because GIMP is under the GPL and LGPL licences SourceForge did nothing wrong: those licences allow software to be repackaged.

Android tool developer Collin Mulliner was equally upset to discover that Hacking Team (an Italian company that sells surveillance tools to governments) had used his Android framework to build their Android voice call monitoring software.

"For the future I will use a license for all my software that excludes use for this kind of purpose," he said in the blog he wrote to make it clear that he didn't work on the Hacking Team tool. But that might be hard: writing a licence that lets people use your code freely means they can use the code for anything they want.

Douglas Crockford famously added a line to his licence for JSON that said it couldn't be used for evil (and just as famously said that IBM had asked for a variation because they couldn't guarantee that their customers wouldn't use it for evil).

Yes, the GPL has repeatedly been used in court, but mostly to force companies to comply with the rules about open sourcing their own code if they've published software based on GLP-licenced code.

Commercial use is easier to police, but anyone who is going to use open source code for evil is unlikely to pay much attention to licences that say they can't, and having people use your code for purposes you don't approve of is pretty much the definition of free speech.

It's going to take some careful writing of licences to give developers more control over how software they open source is used in the ways they want, without stopping the open uses they want to enable.

Now read this