Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Website for Visual Studio Code states "Free. Open Source." which is extremely misleading given the download button below is leading to EULA licensed proprietary software. Please don't mislead users intentionally #17996

Open
JonasT opened this issue Jan 1, 2017 · 33 comments

Comments

Projects
None yet
@JonasT
Copy link

commented Jan 1, 2017

The main landing page https://code.visualstudio.com for Visual Studio Code currently does the following:

  1. it states the offered version is "Free. Open Source." which suggests free software to anyone who knows what the difference of "free" and "open-source" in the common word use is

  2. Below it immediately offers download buttons for something licensed under https://code.visualstudio.com/License/ which is absolutely not free software in any modern definition of the word.

Therefore, the website's main page is right now incorrect and extremely misleading, since the advertised version on the main page is not "Free." at all as stated prominently.

I am aware the actual licensing page clears this up in a small remark at the top, but anyone just browsing to the main page and thinking about downloading it is almost guaranteed to be misled, and they might even think they got something under a free software license without realizing by downloading they just agreed to a classic non-free EULA which doesn't respect many basic user rights like disassembling and analyzing the software, or providing the software to others as a hosted solution and other non-free restrictions.

Please fix the labeling on the main page and clearly advertise the non-free version on the website as what it is, and stop misleading users.


Also, this has been brought up before and you have refused to do so, but I implore you to simply abandon this model entirely. All this confusion and naming mess is just because you insist on twisting a free software into some weird proprietary branded spin-off that doesn't add much except a logo. As you can see, all it leads to is confusion, misleading remarks and even borderline false advertising, which is absolutely not worthy of a company that is clearly trying to embrace open-source and free software and getting rid of their old image from the past.

Please note it is possible to write binding trademark / branding guidelines to allow protected use of a name like "Visual Studio" in a free software product by the community, so you wouldn't need to do this just to be able to brand Visual Studio Code nicely.

Edit: the full source of that version isn't available either, is it? It is altered from the GitHub variant after all - so the main download is probably not even "Open Source." in a strict definition of the expression, as strongly suggested by the landing page...

@ghost

This comment has been minimized.

Copy link

commented Jan 20, 2017

FAQ page has one item about this issue, which points to this answer. I'm sorry that I don't understand clearly about the whole issue, but my opinion is, it's fair for Microsoft to do so.

I comment this in hope that that answer could help you.

@JonasT

This comment has been minimized.

Copy link
Author

commented Jan 20, 2017

@Mac-pro the problem is that the main page is very misleading. I am aware the download page and other pages have notes about this, but the main page very openly suggests you're about to download software under a free software license, while the big fat download button actually makes you agree to some corporate EULA.

Of course Microsoft is free to do this, but is it so weird to ask that they do it in a less misleading way?

As I have suggested on #17994 Oracle has many branded proprietary versions of open-source products. However, unlike VS Code, they are clearly named ("Virtualbox" vs "Virtualbox OSE", instead of "VS Code" and "Code - OSS Dev" (???)) and the download page makes it obvious when you're downloading the corporate EULA'd version.

The other alternative is of course to just have an MIT-licensed download combined with community trademark/branding use rules that allows use of the name & logo, and drop the proprietary licensed version entirely.

@JonasT

This comment has been minimized.

Copy link
Author

commented Jan 29, 2017

I just updated the text to make it more clear that this ticket is first and foremost about the labeling and the main page being misleading, and not so much about the release model chosen (which has apparently been discussed already on this issue tracker).

@slodki

This comment has been minimized.

Copy link

commented Jun 14, 2017

MICROSOFT SOFTWARE LICENSE TERMS
MICROSOFT VISUAL STUDIO CODE

These license terms are an agreement between Microsoft Corporation [...] They apply to the software named above.
[...]
The software contains third party components licensed under open source licenses with source code availability obligations
[...]
You may not [...] reverse engineer, decompile or disassemble the software, or otherwise attempt to derive the source code for the software

Visual Studio Code - Open Source
[...]
Licensed under the MIT License.

  1. Microsoft Visual Studio Code distributed free of charge from code.visualstudio.com is a proprietary closed source product, licensed from Microsoft under EULA, build with open-source components
  2. There is a wrong statement at code.visualstudio.com saying "Free. Open source." while users are not allowed to attempt to derive the source code. This should be changed.
  3. [Microsoft] Code - Open Source (aka Code - OSS Dev) is different product, distributed on GitHub (not from code.visualstudio.com), licensed from Microsoft under MIT open source license, distributed as binaries by third parties with limited functionality compared to [1].
  4. There are wrong links in README.md pointing to different product website and binaries. This references to different closed-source product should be removed OR moved to "Similar product" section in README.md with differences detailed description (licensing, functionality, customisation etc.)

There are two bugs (one on code.visualstudio.com, second on GitHub) to be removed.

slodki added a commit to slodki/vscode that referenced this issue Jun 14, 2017

@slodki

This comment has been minimized.

Copy link

commented Jun 16, 2017

Next place where wrong information is presented at Microsoft side and must be fixed: https://code.visualstudio.com/docs/supporting/faq#_is-vs-code-free

@clarkis117

This comment has been minimized.

Copy link

commented Jul 13, 2017

I’ve been struggling to find a straight answer on whether Visual Studio Code is free for Commercial use… anyone know?

@JonasT

This comment has been minimized.

Copy link
Author

commented Jul 14, 2017

@clarkis117 you should probably ask this in a separate ticket or in a forum. Also it might depend on what you mean by commercial use (resell visual studio itself, or sell a program made with it, ..) and which edition you use (the open-source self-built one or the proprietary build from the website).

@sam0x17

This comment has been minimized.

Copy link

commented Jun 19, 2018

Yeah, frankly Microsoft should MIT license this. That is if they want developers not to hate them.

edit: the binaries

@mcdan

This comment has been minimized.

Copy link

commented Jun 19, 2018

@sam0x17 is it not MIT licensed since ~Jan 2017?

#17684

@akatechis

This comment has been minimized.

Copy link

commented Jun 19, 2018

Here are some more definitions, @superamadeus, from the very same page you snipped:

free

@luong-komorebi

This comment has been minimized.

Copy link

commented Jun 19, 2018

@superamadeus don't forget that they are still licensing VSCode MIT : https://github.com/Microsoft/vscode/blob/master/LICENSE.txt

With or without that word, it doesn't matter. Confusion still exists.

@sam0x17

This comment has been minimized.

Copy link

commented Jun 19, 2018

The confusion isn't even the worst of it. The ONLY motivation Microsoft would have to run a different license on the binaries would be because they are including some sketchy telemetry/spyware code in the binary distribution that is not included in the MIT-licensed source code. There is literally no other reason that would warrant this. They obviously aren't going to include the source code for the spyware in their repo, so this is the result.

So keep up the pressure guys. With any luck (there is already substantial coverage on hacker news and a slashdot article on the way), Microsoft will have no choice but to actually publish binaries that match the code in this repo and change the binary license to MIT. This is the GVFS situation 2.0.

@bfattori

This comment has been minimized.

Copy link

commented Jun 19, 2018

@sam0x17 You state:

The ONLY motivation Microsoft would have to run a different license on the binaries would be because they are including some sketchy telemetry/spyware code in the binary distribution that is not included in the MIT-licensed source code.

Making a claim like this is just inflammatory. You have no idea why they would release it under a different license than the code. For example, it could be under a proprietary license due to the inclusion of patented processes that Microsoft doesn't intend to release openly. While the source is open, the particular pre-built version that Microsoft provides is not. That is Microsoft's choice under the MIT license.

Binaries are typically not something that is governed by an open source license. Most will mention that you must include the copyright with the distribution of the binary, but that is the only requirement. The confusion is real, but clearly within the defined parameters of the law.

@JonasT

This comment has been minimized.

Copy link
Author

commented Jun 19, 2018

Binaries are typically not something that is governed by an open source license.

Can you give a source for that claim? I think you are wrong.

Most will mention that you must include the copyright with the distribution of the binary, but that is the only requirement.

Yes, usually because they are governed by an open source license that requires it. (E.g. MIT does require that - I think, I'm obviously not a lawyer.)

clearly within the defined parameters of the law.

Of course. This whole discussion is because it's sketchy, unnecessarily confusing and misleading, and just plain annoying. Nobody here claims they can't do it, but it's certainly unusual and has no obvious benefit for anyone.

Edit: sorry, I removed removed some of the text, since I checked back and I opened this ticket mainly about the main page labeling (which is as misleading and bad as always! Again, putting "Free. Open Source." right above a button agreeing with a proprietary EULA is extremely misleading and hard to defend as accidental), and I don't want to rant too much about the odd licensing choice itself.

@sam0x17

This comment has been minimized.

Copy link

commented Jun 19, 2018

You have no idea why they would release it under a different license than the code. For example, it could be under a proprietary license due to the inclusion of patented processes that Microsoft doesn't intend to release openly. While the source is open, the particular pre-built version that Microsoft provides is not.

We know enough to know that the licensing choice is either 100% arbitrary or the binaries include extra/additional code that isn't in this repo. If it's because of patents or processes they want to protect, then either those are also included in the repo which is MIT licensed and already in the open, or this is an admission that the source code is different between the binary release and the repo, which would be super shady and dishonest on MS's part, and certainly outcry-inducing. So no matter what the reason, the license for the binaries should change to MIT as well, unless MS has something to hide.

The point of providing source code with binaries is you are supposed to have some confidence that the source code results in the provided binaries. If not, then that is a huge red flag, and I highly doubt Microsoft has an important enough reason to warrant such a red flag (barring a super sketchy explanation).

@JonasT

This comment has been minimized.

Copy link
Author

commented Jun 19, 2018

The main page still says "Free. Open Source." followed by a big green button that makes you agree to some nasty proprietary EULA (which is mentioned only in some much smaller fine print text below it). If at all, please fix at least that if you're sticking to the licensing @ Microsoft. At this point after so much time it becomes hard to believe this misleading site design isn't intentional.

@sam0x17

This comment has been minimized.

Copy link

commented Jun 19, 2018

Binaries are typically not something that is governed by an open source license. Most will mention that you must include the copyright with the distribution of the binary, but that is the only requirement. The confusion is real, but clearly within the defined parameters of the law.

Whether or not what they are within the defined parameters of the law is somewhat irrelevant. As a vocal developer community we don't have to settle for "shady but legal". We can point out shady and complain all we want, and we are improving the community and the average quality of software out there by doing that. Why would you not aspire to improving what's out there?

@bfattori

This comment has been minimized.

Copy link

commented Jun 19, 2018

@JonasT An example of such a case would be the MIT license, itself. It makes no specific mention of binaries anywhere in the license text. Because there is no clear definition of what "the Software" is, beyond "...a copy of this software and associated documentation files (the "Software")", it is impossible to imply source or binary form. Since open source licenses are associated with the source and not the binary, that would only imply (in this situation) the source code. If it were the BSD, GPL, or CDDL, for example, that explicitly state "binary" in some form, then it would most certainly apply to the binary.

I don't disagree with you, but asking a large corporation to change its licensing practices isn't something that happens overnight. The license that they have is quite permissive, suggesting that they could select another open source license to cover it. However, using another open source license, such as the Apache 2.0, with a patent grant would only serve to invalidate a number of patents that Microsoft might deem important enough to protect. They would forego their right to prosecute any patent claims against, say, Apache (creator of Apache Server, competitor to IIS) because if any of their patented processes read on the code that included an Apache license in it - then they have to give an express patent grant. This is very unfavorable to corporations that need to protect other IP.

Now, IANAL, but I've spent a fair amount of time the past 11 months getting very familiar with everything I could lay my hands on when it came to open source licensing. Again, I'm not picking any bones with you... I'm just pointing out why they might hesitate to do something about it.

@bfattori

This comment has been minimized.

Copy link

commented Jun 19, 2018

Why would you not aspire to improving what's out there?

@sam0x17, I do aspire to improving what is out there and I seek to do it every day. But this is a non-issue. This version, on Github, is VS Community, not vscode. Would it make everyone happy if they renamed the repo vscommunity?

@JonasT

This comment has been minimized.

Copy link
Author

commented Jun 20, 2018

This is really off-topic, but:

since open source licenses are associated with the source and not the binary

I'm pretty sure there's no legal basis for this. "it is impossible to imply source or binary form" -> dangerous to conclude "that is why I can just interpret for myself that it means only software". And I'm not alone reading MIT like that, so don't take my word for it. Ask your lawyer! (I'm not one.)

As for the other things you listed, most sound like excuses. Clearly, the main software can easily be released MIT (as evidenced by this repo), and clearly, the website is still super misleading. So whatever amount of work it might be, Microsoft should just get its stuff in order.

@luong-komorebi

This comment has been minimized.

Copy link

commented Jun 20, 2018

I don't see any reasons for this discussion to go on. It's boring that we have to choose our side here - whether to accept with Microsoft in-house license or build own our binary. I really hate this. The situation like now looks like:

  • Microsoft opened a restaurant and told everyone that they got free food
  • In fact they offered free materials and if you want 'real' food, you have to eat what they cooked (and of course sign a bunch of agreements), which is shady by design.
  • ALSO, It's obvious that everyone can see how professional chefs of the restaurant cook their food. But what is bullshit is that the restaurant hides the very last step where foods are being prepared on the dish and served to you. Good luck trusting that waiter. Oh wait, you signed a bunch of agreements beforehand, remembered?
  • Someone noticed the process and informed the community. And now look where we are. Arguing about priorities for choosing a shady thing? Redefine what "free" means? Bashing a conventional license like MIT, which just works anywhere else except this restaurant?

To be honest, we could all choose to support another restaurant from the beginning. Plus, I have a feeling like we are being treated like beggars.

@bfattori

This comment has been minimized.

Copy link

commented Jun 20, 2018

@JonasT You're right that the MIT is a questioned license in its simplicity. There is a faction that believes that the MIT has patent protection implied as well. That is the problem with short licenses that don't go into detail. People will assume how it's interpreted, legally or not, and manipulate it to mean whatever they desire. Regardless, Microsoft is protecting IP plain and simple. Whether it's a trade secret or a patent doesn't make a difference. Microsoft is taking VS Community and adding functionality that they want to protect, but still offer for no cost, and calling it VS Code. Sure it seems shady, but they are correct in saying that Jetbrains and other orgs do this as well. So, it seems more like a "Micro$oft is Evil!" argument rather than an argument for the benefits of open source as a whole.

Finally, from the OSI FAQ:

Think of it this way: Open Source licenses are always applied to the source code — so if you're not distributing the source, then you're not distributing the thing to which an Open Source license applies. You might or might not distribute binaries; that's a separate question. But while some Open Source licenses allow you to distribute binary code without distributing the corresponding source, it is only the source code that can be "open source".

So, is it really that dangerous if it's defined at the OSI in such a way?

@JonasT

This comment has been minimized.

Copy link
Author

commented Jun 20, 2018

So, is it really that dangerous if it's defined at the OSI in such a way?

That question makes no sense to me. Why would the OSI be legally relevant? Is it referenced from the license?

But this is all highly off-topic, and we both have no definite idea, so why are we discussing this? To everyone reading, just be be extremely careful who you trust with license advice - again, ask your lawyer. Don't go with your gut on licenses, research and ask the right people. Legal texts are not intuitive.

Regardless, Microsoft is protecting IP plain and simple.

Microsoft is protecting the IP of the 5 lines of code added in the non-MIT version of VS Code? 😆 But we're really going in circles here. I don't think this discussion is anywhere.

@luong-komorebi

This comment has been minimized.

Copy link

commented Jun 21, 2018

Let me remind you guys something and put an end to the discussion here :

  1. Github has its own "release" tab, which this project can use to release binary for different platforms. Look at how Atom is doing it : https://github.com/atom/atom/releases. I don't support conspiracy theory but if this basic functionality is not utilized, then sorry but your arguments to protect Microsoft is clueless and we all have the rights to be cynical about what Microsoft is doing.
  2. MIT license is simple because it needs to be straightforward and readable. No one gives free things and attaches with it a lengthy license. That would be meaningless. Also, no one ever would ever choose a simple, free license like MIT, IF THEY AREN'T REALLY WILLING TO GIVE SOMETHING FOR FREE. I don't understand how someone could try to defend Microsoft by distorting a free license and attacking its choice of vocabulary. By the way, you can't say that because a regulation doesn't mention something, you are allowed to do it. If you are human, have some basic common sense. Don't act like you can bring a Katana on a plane because they just mention knife in the regulation.
  3. We don't ask anyone or any organisations to change anything. BUT WE WANT THEM TO BE RELEVANT, TRANSPARENT AND FULLY COMMITED TO WHAT THEY PROMISED.

To the OP @JonasT , I don't see anyone with good and worthy arguments here in this issue section. Instead of supporting what is right, they are putting you in the place where everyone is questioning what is right. Seriously, ignore this. You should not waste your time here, unless someone who is directly involved in this project replies. Bring this link to reddit or HNews if you really seek support or further discussion. Abandon VSCode distributed on MS's site if you are not satisfied with it.

@sam0x17

This comment has been minimized.

Copy link

commented Jun 21, 2018

There is nothing patent-able in VSCode, period. so that entire line of reasoning is moot. Microsoft should change the binaries to MIT.

@so-rose

This comment has been minimized.

Copy link

commented Jun 22, 2018

My two cents:

I'm not sure why this is such an involved discussion. To me, the problem is very, very simple:

The text, "Free. Open source. Runs everywhere." is directly above a strictly proprietary binary download, with no obvious indication of this fact.

This isn't just misleading, or protective. It's a straight lie, and a contextually dangerous one for what should be obvious reasons.

It may be a mistake or oversight; if so, it's a simple thing to fix. They could distribute an MIT licensed binary, or just remove the line claiming it's open source. We, the community, have certainly done our part to notify them that a mistake has been made through proper channels. But it would seem that these efforts go unnoticed.

Please don't misunderstand me; Microsoft has every right to do this, just like I have the right to compile an open source vscode myself (as I happily do).

Yet, the apprehension felt by myself and many, many other developers about using Microsoft products is only fanned by continuing ignorance of this issue.

@akatechis

This comment has been minimized.

Copy link

commented Jun 23, 2018

I find it interesting to contrast this situation with the controversy around Facebook, and React's (initially) modified license. At the time, I recall, the arguments were the same: "FB has every right to do this, if you don't like it, don't use it, what about company Y, etc". However, to show they were "good citizens" of the open source community, they decided to change their license.

And to preempt the responses I'm sure I'm going to get: Yes, I know it's not the same situation, yes, FB has it's own image issues with regards to data privacy, etc. I think if MS wants to repair its image in the open source community, the least it can do is be honest, and dispel any confusion about the distinction between the open source code base and their closed source binaries, especially as it's been just a couple of weeks since they announce their purchase of Github.

@rosepac

This comment has been minimized.

Copy link

commented Jun 24, 2018

The cloud is the greatest deception that has ever existed. VC It is a deception. And the news versions much more, the next versions in the cloud. they just want us to be less owners of nothing. First we get used to using a free service (we stop using the music files, text files, programs) then they make us pay for them, in the cloud. When it is impossible to run the programs on the operating system, we will be forced to use them in the cloud. It is the new monopoly. In the software. The music. The documents. With all. The control of the data and the web is the future of your money.

Sorry for my english. I hope you understand my idea. It is all planned. -

@FiGOBLAC

This comment has been minimized.

Copy link

commented Jul 8, 2018

"VS Code the product has a different license than the code in the repository."
#60

@njwest

This comment has been minimized.

Copy link

commented Jul 27, 2018

this meme === related

@rzr

This comment has been minimized.

@snow8gaia

This comment has been minimized.

Copy link

commented Feb 22, 2019

This (microsoft/vscode-docs#2431) seemed like a similar problem that straight up avoids the licensing differences. So I made a really rough PR. Please add plenty of suggestions for improvement.

This should help a lot of users make an informed decision when it gets merged.

@sam0x17

This comment has been minimized.

Copy link

commented Feb 22, 2019

While we wait for all this to be addressed forever, vscodium is a completely viable, open source licensed, tracking free version of vscode with regular binary releases on major package managers https://github.com/VSCodium/vscodium

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.