DEV Community

Priyab Dash
Priyab Dash

Posted on • Edited 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.

Latest comments (65)

 
paddy3118 profile image
Paddy3118

Docker, it's usage pails in comparison to that of the one-time leading browser that was IE. Being closed-source didn't stop IE from loosing it's crown.

Collapse
 
twitmyreview profile image
Priyab Dash • Edited

I like that many here are having a much needed discussion about VSCode and Open Source license in general. But I am not alone in raising the issue.

Few References:

carlchenet.com/you-think-the-visua...
opensource.stackexchange.com/quest...

Those who do not care or understand about dual license issue and its implications, they can ignore my post. But those who do, they should explore vscodium with a clear license stipulation. As in stack exchange one user commented:

So VSCode and Visual Studio Code are different products. What a mess. I'm sticking with Mousepad. – 
Collapse
 
mcnerdius profile image
McNerdius

Normally i don't weigh in on issues such as this as i am a huge fan of VSCode and thus my opinion is biased. Here, though, misinformation is being spread in the comments regarding telemetry and the perspective of what is being "added" or "removed" is skewed.

The telemetry code and information isn't secret, hidden, closed-source, proprietary... You can look at the telemetry code in the repo, and you can view the telemetry information being sent by setting Log Level to Trace (F1->Developer->Set Log Level...) then navigating to Log (Telemetry) in the Output panel's dropdown.

While VSCodium does remove this code, it also isn't hidden from the public or "added in" to the official MS build. What is excluded from the MIT-licensed repo and added in to the MS-Licensed build are urls and keys used by the telemetry code. Excluding private keys and such from a git repo is standard practice, no ? To reiterate: they are not adding telemetry code to the MS build, they are excluding telemetry keys required for this functionality from the repo. (Of course, those biased against MS will point out that there is likely code that implements telemetry within the marketplace/debugging/etc code that is bundled with the official build - but this is incidental.)

There are other things like copyrighted icons/logos, marketplace/debugging/update code included as well, but that's not conspiracy-worthy is it ?

github.com/microsoft/vscode/wiki/D...

Now, for some opinion...

I look at telemetry of this sort as similar to voting. There are some features i use that i don't want to go away. If i (and others) let them know i'm using it, it's less likely to go away. If something is going wrong, i want them to know, so it can be fixed. You can skip voting or telemetry if you so choose, but you're not helping yourself or anyone else by doing so. And if you do share, you are likely to help yourself and others. A key difference being - MS isn't collecting any personal information and worst-case-scenario is the shared info is ignored.


If it can be shown that i'm mistaken about any of this, do let me know - i don't want to be spreading misinformation myself.

Collapse
 
paddy3118 profile image
Paddy3118

A lot of governments will be looking again at open-source to lessen their dependence on foreign and sometimes capricious governments.

Collapse
 
stuart88 profile image
Stuart Aitken

"It isn't open source so I don't want to use it". What?

Alright Julian Assange, go and make your own code editor.

And by the way, comparing VSCode to Eclipse is flat-out wrong. Eclipse is an IDE, VSCode is a souped up text editor.

If you want to talk about a Microsoft IDE, you need to look at Visual Studio.

To be honest I don't even know why VSCode exists. No need to hate on it for 'open source' reasons though. A criticism like that doesn't make a jot of sense.

Collapse
 
michbushi profile image
michbushi

Hopefully, it also sustains your mortgage

Collapse
 
paulorodes profile image
Paulo Rodrigues

Is good to see in the comments that many people now have an open mind about this kind of questions 🙂. Yet, many still use their dusty tin foil hats.

Collapse
 
muayyadalsadi profile image
Muayyad Alsadi

You can get a build of the opensource mit licensed vscode here

flathub.org/apps/details/com.visua...

Collapse
 
willvincent profile image
Will Vincent

Every last bit of this. Yes.

Collapse
 
mrfrasier profile image
mrfrasier

So for those of us in the audience not paranoid and wearing tin hats, what exactly is there here to “worry” about?

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