DEV Community

Priyab Dash
Priyab Dash

Posted on • Updated on

Issues with VSCODE License — You should worry

Note: This blog post is purely my thoughts about the topic and in no way is meant to discredit the product or the company behind it. My sole purpose for this blog post is to put my thoughts and get constructive feedback and criticism.

Introduction

We developers are very particular about our IDEs and with a good reason. We spend most of our development time with an IDE and lot of effort, love and care goes in choosing the right IDE, the ease of coding, testing and running your code is just one side of the coin. We also spend a lot of time in seeing what kind of ecosystem the IDE provides and why others in your community use it. And for that reason for me VSCode was one of the first choice since last few years.

First it is free and open source, it has support for multiple programming languages and then it has whole ecosystem of community driven plugins which makes my life as a developer very easy. So it was a surprise when I just came across a project called vscodium which is a re-distribution of vscode where the binaries are licensed under the MIT license. Telemetry is disabled. Now this got me thinking, we know that vscode is open source, then what kind of open source license VSCode has. If you want to check the VSCode license please jump to the this License link.

My problem with the VSCode License

After reading the license VSCode did not seem any more open source as the purest form I know of. The open source I know is either GPL, Apache, MIT or BSD license. But reading the VSCode License looked more of a stock Microsoft License which is a more condensed form of its regular license for other propitiatory products. Hence to me suddenly VSCode looked like a more of a Freeware where code is open sourced but not really Open Source in its real sense.

This is so anti-thesis to recent news and announcements that you hear about the commitment of Micrsoft to Open Source but the skeptics were always suspicious. And after reading the license I am too very skeptical. While its very difficult to find a really good alternative to VSCode and in near future I many be using VSCode out of compulsion than free will, but I will definitely stop recommending VSCode as a IDE of choice.

What is Worrisome about the License

Please read the below section from the Microsoft License of VSCode.

SCOPE OF LICENSE. This license applies to the Visual Studio Code product. Source code for Visual Studio Code is available at https://github.com/Microsoft/vscode under the MIT license agreement. The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in the software that only allow you to use it in certain ways. You may not

  • reverse engineer, decompile or disassemble the software, or otherwise attempt to derive the source code for the software except and solely to the extent required by third party licensing terms governing use of certain open source components that may be included in the software;

  • remove, minimize, block or modify any notices of Microsoft or its suppliers in the software;

  • use the software in any way that is against the law;

  • share, publish, rent or lease the software, or provide the software as a stand-alone offering for others to use.

First VSCode source code is released under MIT License but if you look at the bullet points for the Visual Studio Code product license they are complete antithesis to the MIT license that it is being distributed with. Now lets look at the MIT License.

MIT License  

Copyright (c) 2015 - present Microsoft Corporation  

All rights reserved.  

Permission is hereby granted, free of charge, to any person obtaining a copy  
of this software and associated documentation files (the "Software"), to deal  
in the Software without restriction, including without limitation the rights  
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell  
copies of the Software, and to permit persons to whom the Software is  
furnished to do so, subject to the following conditions:  

The above copyright notice and this permission notice shall be included in all  
copies or substantial portions of the Software.  

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR  
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,  
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE  
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER  
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,  
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE  
SOFTWARE.
Enter fullscreen mode Exit fullscreen mode

So if you read between the finer lines, while the source code is open source and free for modification, the binaries with which it is built is not fully FOSS. It has restrictive conditions which I presume Microsoft has to follow being an enterprise software company and is liable to Cyber laws and US Export restrictions. Hence the people who end of the day are using VSCode are liable to all the Microsoft license restrictions. This may very well be applicable to the community contributors who build the rich set of community plugins that make VSCode so attractive.

Conclusion

Hence its time for all to think through if VSCode really is that much open source as lets say Eclipse or pure community owned and driven FOSS IDEs or editors. This is not only the problem of VSCode but problem with many other open source “Community” editions of propitiatory products where while most of the core features are developed by the company but the ecosystem built with others are threatened with the restrictive license. But the particular issue I have with the VScode is where its source code and its binaries are dual licensed and complete opposite of each other.

While I am coming across such a license for the first time, I am sure I may have overlooked many such license and would like to hear more from others as well.

p.s. Originally published by me in Medium

Update: I have written about my journey after VSCODE - Moving Beyond VSCode. Please do read it and give your valuable feedback.

Top comments (65)

Collapse
 
rheecharles profile image
Charles Rhee

I have a different opinion. Dear Microsoft and VSCode team: Thank you. Keep up the great work!

Collapse
 
ultradain profile image
Dain

I agree with you 100%.

Collapse
 
nateous profile image
Nate • Edited

Microsoft has code in their version that they don't want you to decompile. That is all. Hence the license agreement.

I still use the version from Microsoft on my Mac for personal projects. If I don't want Microsoft to watch what I do with their software I'll compile my own version. Until then, they will continue to update the software based on the usage data they track. Best of both worlds if you ask me.

Collapse
 
sd_devto profile image
SD Dev.to

I am grateful to Microsoft for a brilliant product which they don't ask me a cent for.

No need for FUD.

Collapse
 
rubberduck profile image
Christopher McClellan

This is no different than Chrome and Chromium. The product most people download and install has extra proprietary features and code, but is based upon a truly open source code base. If you have a problem with this, then you should have a problem with Chrome too.

Collapse
 
mcisco profile image
Micah Francisco

Your point is correct and well taken. This is actually why I use chromium instead of chrome. Since reading this article, I've replaced VS Code with Codium and was able to remove the only Microsoft repository on my system, which felt good. Checking add-ons now. Thanks to the author!

Collapse
 
lewdis profile image
Lewis

Just like to note that even chromium still includes proprietary code, you need ungoogled chromium for that.

Collapse
 
naconnors profile image
Nick Connors

I thought it was common knowledge that the source code was open source but the compiled binaries were not. This isn't really news to most people.

Collapse
 
brnk_tv profile image
BRNK • Edited

This article should be deleted or edited. The entire thing is based on the author having a misunderstanding of the difference between the binaries and the code having 2 different licenses.

Collapse
 
moopet profile image
Ben Sinclair

I've been using VSCodium for a year or so because of this.

I'm assuming that the only thing reverse-engineering VSCode binaries will find is the aforementioned telemetry, but the provision is there in their license.

I don't understand why anyone would use proprietary binaries from a company like Microsoft when there's a direct, free alternative.

Collapse
 
jaffparker profile image
Jaff Parker

There could be reasons. I use proprietary binaries because mostly they allow for quicker support than using only open source. Plus, I use Windows anyway, there's no open source version of that, lol.

But it depends on your priorities. I just realized that trying to keep my information out of hands of corporations is a waste of my time, they already have everything they need. So might as well take advantage of it.

Collapse
 
twitmyreview profile image
Priyab Dash

Thank you for pointing that I am also seriously thinking about using VSCodium in the interim. But its time also to see other alternatives.

Collapse
 
nicolus profile image
Nicolus

May I suggest Jetbrains products ? I've switched to PHPStorm and Pycharm years ago and never looked back.

Plus they're completely closed source so at least you know where you stand.

Thread Thread
 
moopet profile image
Ben Sinclair

It's funny for someone to recommend closed source for that kind of reason, but it's not stupid: things that only appear free are basically trojans.

Collapse
 
swervinglemon profile image
Brian

You do realize that the entire framework of the net would be unsustainably expensive if not for open source, don't you?
I know MS, Amazon and Oracle would love to see a world where everyone was using their hosting software. I'm sure 99% of us hosting sites are glad that's not the case.

Collapse
 
lrkwz profile image
Luca Orlandi

Dont'forget Google.

Thread Thread
 
swervinglemon profile image
Brian

Ugh. Yeah. It might be a really good time to fork every bit of Google's code that's still open and run away with it. Is the go compiler still OSS?

Collapse
 
refinedm5 profile image
refinedm5 • Edited

Microsoft is backing linux because they have to, as half of their Azure IaaS customers are running linux. They have to resort to linux to power their virtual network appliance. They even engineered WSL to keep Windows on desktop relevant

Collapse
 
michbushi profile image
michbushi

They even engineered WSL to keep Windows on desktop relevant

That was very funny 😂. What percentage of desktops are NOT Windows and Macs, again?

Quite the opposite is true in my opinion; if the WSL 2.0 lives up to the promise, it completely extinguishes the need for Linux on Desktop (which is not being used by anyone, statistically, anyways)

Thread Thread
 
refinedm5 profile image
refinedm5 • Edited

If we're talking strictly about developer, here:
Windows: 45.3%
MacOS: 29.2%
Linux: 25.3%
BSD/Unix: 0.1%
Source: en.wikipedia.org/wiki/Usage_share_...

Yes, linux are used quite significantly by developers

Collapse
 
tomxp411 profile image
Tom Wilson

If you download the Github version and compile it, then the MIT license applies. If you download the binary from Microsoft, then the binary license applies. I’m assuming that’s because there are some proprietary bits in the binary that aren’t in the open source core.

This Seems like a non-issue to me.

Some comments may only be visible to logged-in visitors. Sign in to view all comments.