You might recall a few weeks ago that I requested from a well-known large and somewhat litigious company the source code of the modification they made to a certain GPL debugger, and that they grudgingly agreed after a long time.
So I set out to work on the pile of code they sent me and managed to extract their modifications and port them fo the latest version of that GPL tool… apart from one driver for their debug probes that we use throughout our company: the cunning bastards left a stub in the open-source debugger (I have the code for that) and that stubs talks to the rest of the driver in the form of a closed-source TCP server.
It’s a blatant trick to go around the GPL by taking advantage of the grey area surrounding linking in the GPL - i.e. the question of whether a closed-source program can be linked to GPL code and not become GPL itself, which still hasn’t been tested in court to my knowledge. If I recall correctly, the FSF is of the opinion that anything that dynamically links to GPL code becomes GPL too, but that’s just an opinion.
And of course, here in this case, the aforementioned company added one degree of separation between their closed-source driver and the GPL tool that uses it by making it a server, so whatever argument against linking to GPL code becomes even weaker.
Anyway, as you can imagine, I’m disappointed: my work is 90% there, but I still don’t have that one driver and their closed-source faux-server is half-broken and dog-slow because of the time it takes to spawn the server and communicate with it through TCP, and I can’t fix it. And I’m 100% certain that if I asked them to send me the source code for that, they’d tell me to suck eggs.
But here’s what happened: I got so tired of their shenanigans that I started investigating other debug probes I could use instead of their proprietary junk. And after quite a lot of investigation, I found one solution based on open hardware and open software that, with some careful configuration, works 2x to 3x faster than their proprietary debug probe. Wow! I didn’t even know it was possible, and I probably wouldn’t have researched it if I had had all I needed to make what we already own works.
Long story short: I proposed that my company replace all our existing proprietary debug probes with the open hardware one and my boss agreed. That’s like 20 probes in total, between R&D, testing and production, and at the tune $266.99 per probe for the original proprietary one, that’s $5339.80 the egregious GPL-violating company won’t get from us. Not to mention renewal of the license for their IDE that we’ve been using for almost 2 decades, because finally, at long last, after over a month of solid work, I finally managed to free up our source code from their vendor lock-in and make it compile, debug and flash using open-source tools from start to finish!
So yeah, I didn’t get what I originally wanted from that company. That’s the bad news. But in the end I ended up better off without it, and that’s the good news 🙂
Wow people actually do this??? Good job
It’s rare that the business would give them the slack to be able to, usually there’s plenty of intent
My employer is openly willing to let the engineers work on whatever they want, however long it takes to make things good or better, not just good enough. The bean counters don’t run this place: we take the time to do things right.
It’s a policy that has worked for us for the past 40 years, and it’s the main reason why our customers come back to us and we’ve been consistently very successful over the decades.
Anyhow, originally one of my colleagues asked me if it would be possible to compile and debug our code in VSCode instead of the company’s IDE. I said I’d try to see if it’s possible, and then I went down the rabbit hole - with my boss’ blessing 🙂
I hope you understand how truly fortunate you are to both be able to do that, and work at a place that allows you to do that
Of course I do. That job is the best gig I’ve ever had and it’s one of the best things I have going on in my life. That’s why I’m particularly cautious in this thread and I don’t say anything that could put my employer of my employment in jeopardy in any way, even though it’s highly unlikely.