A Brief Note On Open Source

Planet Money posted about a software engineer for Goldman Sachs who’s been charged with stealing proprietary code.  As part of the case, the developer mentions that he was only looking to take home the open source code and not all of it.

I don’t think the description of open source software on the post got to the heart of things. One of the listeners gave a fair description, but missed some areas that I thought were important. She was correct in saying that the license the software is under is what’s actually important, not just that it’s “open source,” but the way this applies to Aleynikov’s case deserves clarification.

Open source tends to mean something different depending on who you ask. The Open Source Initiative has a definition of what they would like it to mean, but in practice it gets used in all kinds of often incorrect ways. But let’s use the OSI’s definition as a starting point.

Open source licenses cover distribution and modification of software. In a general sense, an Open Source Software license says that if you let me download an application, you also need to give me the source code for it and you can’t stop me from making changes or sending the application to someone else.

It’s more complicated than it sounds. Programmers tend to take chunks of code and insert them into something else. If I downloaded an e-mail application and liked how they handled text searching, I might take that and put it into my support ticket software. Does that mean my support ticket software is now open source, too?

It depends on the license. Some say “If you take any code, your application must use the same license we did.” Others say, “You don’t have to use the same license, but you’ve got to use one that follows the OSI definition.” Some don’t care at all; you can use the code however you want. Most licenses that see wide use don’t care at all until I actually give my program to someone else.

Here’s the thing about this case: This is about an employee of a company taking code with him when he left. This gets into much hairier legal ground over ownership and what other agreements the employee signed. Even when an employee uses code covered by an open source license at work, that doesn’t necessarily give them the right to determine how it will be distributed.

Let’s say I was working for a company when I was building that support ticket system, and the code I used came from one of those licenses that said “Hey, use this however you want with no restrictions.” At that point, the employer owns the code and it’s up to them how that code can be used. It doesn’t matter that the original code was free to use. This stays true even if the code was covered by a license saying any derivative works needed to use the same license. Since the license covers redistribution, and the decision to distribute stays with the owner of the code, it’s still under the employer’s control.

(Thanks to Brennen for looking over this and making some important corrections)

This entry was posted in Coding. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *