Open Source Software – Compensation

Open Source Software (OSS) is pervasive in todays technology stacks. Most companies take advantage of OSS packages at some level in their architecture. Some OSS is packaged with commercial support like Elastic Search. Other OSS projects are small libraries hosted on GitHub and delivered through a package manager like NuGet or NPM. Either way most OSS projects are licensed to allow reuse of code. A book could be written on the assorted flavors of OSS licenses. It would be very dry, perfect bed time reading for lawyers. You can get a taste for this by looking at the licenses listed at the Open Source Initiative. OSS is by its very nature flexible and that's great.

When OSS licensing makes the news, the story usually goes something like this. A large commercial software company has licensed some code as an OSS product. Another commercial company uses that code, and breaks terms of the license agreement. Corporate lawyers start salivating and a legal war breaks out.

I've got a different story to relate. No legal lines are crossed in this story. In general this is more a matter of principals.

A few years back I was using proprietary software from ESRI. A reverse proxy was needed on the server for authenticating client applications. At the time ESRI provided a proxy for .net full framework & Java. Our project was using .net core which was entirely unsupported. ESRI had several users request on Github to create a new proxy for .net core.

The pain and complexity of all this is detailed in the Github threads below.

https://github.com/Esri/resource-proxy/issues/444 https://github.com/Esri/resource-proxy/issues/465 https://github.com/Esri/resource-proxy/issues/464

The TLDR version of the above events. Old proxy code was garbage, ESRI keeps asking for PR's to fix it. No support for .net core is in the ESRI roadmap. Not at this time. Sorry, you are on your own.

Finally, I cracked and wrote my own proxy that would plug into .net core. I put it out on Github and shared the link. The masses rejoice. Or at least 20 other people stuck using ESRI tech with .net core. I wrote a blog post about it at the time.

This is a cautionary tale. Thousands have benefited from the code. In considering the implications of all this it seems that ESRI benefited above all. ESRI is a company making over 1 billion dollars a year. OSS code bailed them out. Their customers continue to pay huge licensing fees. OSS developers plugging the holes in crummy commercial software aren't getting paid.

Github sponsors aims to address the issue of OSS developer compensation. For something like this to work it may require a shift in mindset of the OSS community. Code isn't free, some ones time and energy is being consumed to solve issues. Some are fortunate enough that an employer will pickup time spent on OSS projects, others aren't.

This experience has influenced how I think about OSS code. I'm much less interested in contributing code for commercial products with OSS tentacles.