8 ms·
People when a piece of software is source-available but not strictly OSS: outrage People when Microsoft pulls this trick (core repo OSS, most useful things aro
by Pannoniae 2y ago
People when a piece of software is source-available but not strictly OSS: outrage
People when Microsoft pulls this trick (core repo OSS, most useful things around it are full of DRM and legal traps): silence
The hypocrisy is really astounding and in a way, MS has managed to pacify even the strongest FOSS advocates by offering something which looks like OSS but it actually isn't. This is on par with claiming that a repo is GPL but the build API keys are not. (Yes, this also happened elsewhere, and not even in a corporate project at all!)
The Open Source Definition is hilariously unfit for purpose in 2024 because it allows shenanigans like this.
If you enjoy a rabbithole, look at how much DRM there is in Pylance (another extension that MS has locked down): https://github.com/VSCodium/vscodium/discussions/1641 https://github.com/VSCodium/vscodium/discussions/1641
The short summary is that MS uses multiple, constantly changing methods of DRM to make it impossible for people to patch out the "only official VSCode" check from the Pylance extension.
This is very clearly malicious.
- alanbernstein 2y agoIs this comment meant to apply generally to MS behavior? In my experience, MS faces some of the toughest judgment on anything related to OSS.
- Pannoniae 2y agoAbsolutely, this is not just a random tangential comment! With a bit of searching, any time criticism of VSCode comes up, it's shrugged off with "it's OSS!". Even from people who use Linux, a substantial proportion of programmers bring out the OSS card to deflect criticism of these exploitative practices. (Example here: https://www.reddit.com/r/linuxmasterrace/comments/v3n8w4/would_it_be_considered_poor_form_as_a_linux_user/ https://www.reddit.com/r/linuxmasterrace/comments/v3n8w4/wou... but this sentiment is really ubiquitous)
- injidup 2y ago[flagged]
- egeozcan 2y agoI'd like to kindly point out that the real issue here is that it claims to be open source, while the most important parts are not. We are not entitled to demand that entities make their software open source, but accusations of deception don't fall under the scope of entitlement.
- growse 2y ago"most important" is entirely subjective. I'd rather "parts truly open and parts proprietary", than "whole not open but pretending to be".
- egeozcan 2y agoYou're right, it's a subjective matter. While your point is valid, I'd also add that the tool's widespread popularity is largely due to the high-quality extensions, many of which are not open source.
- growse 2y agoMaybe that's true, but this isn't a problem with open source. There's lots of popular proprietary software.
- jdiez17 2y agoI don't think it's deceptive to have an MIT-licensed core editor (which is distributed by MS under a custom license) and proprietary extensions. Like many OSS enthusiasts, I did some initial research on VSCode/VSCodium and decided to install the latter (similar to Chrome/Chromium). As I kept using it I discovered that some MS extensions would refuse to run on VSCodium without workarounds. At that point I was fully aware of the license situation and still decided to switch to VSCode for convenience. My point is that most software developers are capable of understanding how VSCode and its "useful extensions" are licensed; it's not a new concept. And from there, each individual can choose what tools they use according to their preferences.
- 2y ago
- rectang 2y agoHmm. Source Available is fine by me so long as it isn't being misrepresented as Open Source in an attempt to sponge off of the goodwill generated by Open Source communities. So I'm not feeling the "outrage". And I spent a good portion of my open source advocacy activities on license compliance at the ASF, helping projects to ensure that even with all the bundled dependencies the aggregate licensing of the distributed artifacts complied with the terms of the Apache License Version 2.0. So I'm not feeling that "silence" either. What I'm feeling is "hypocrisy" being projected onto a straw man by someone who's got an axe to grind with OSI and the Open Source Definition.
- Pannoniae 2y agoI concede the last part, it is slightly a soapbox from my part about the OSI. However, it's not really a strawman because these issues are very much linked together. The definition itself is very strict yet not comprehensive - false positives and false negatives are both common. The sentiment that "VSCode is OSI-compliant so it's morally okay to support it" is very common, and it's substantially derived from the OSI definition. I do not think that it's an irrelevant issue or that it would be misrepresenting the definition. Is it really free (as in freedom) software when it contains DRM? Is it really open source when critical extensions are unusable if you build the software for yourself? It might meet the definition strictly by the words but in my view, this is not much better than TiVo-isation (when the license is adhered to but the user can't effectively use a modified version) or other shady practices.
- skybrian 2y agoNo moral qualms here. There are large pieces of it that are useful without VS Code (for example, the Monaco editor and the language server protocol). Not to mention al the use people get out of it for free. It seems like the good well outweighs the bad.
- Pannoniae 2y ago>It seems like the good well outweighs the bad. Oh, I definitely agree. While I don't use the editor (mainly because I prefer full IDEs and not glorified text editors personally) I agree that holistically, the existence of VSC is a net positive to the programming community. My argument comes from a moral perspective - even though the good outweighs the bad, the bad parts are really scummy and need more awareness. Like, my perspective is not utilitarian, it comes from a deontological point of view. I see people and companies get regularly flamed (or even harassed/intimidated) for much smaller things such as the crime of creating their non-OSI-compliant licenses and various related things. In contrast to that, the VS Code ecosystem is much more proprietary, grants much less practical freedoms and operates from a way less clean moral background than any of these projects. Yet, many people are willing to excuse this because Microsoft has figured out a way to implement vendor lock-in without breaching any of the four freedoms in techicality. To me, this is way worse than someone saying "no we won't let you use our software for anything"... I am also not a fan of the LSP (good arguments can be found in https://www.michaelpj.com/blog/2024/09/03/lsp-good-bad-ugly.html https://www.michaelpj.com/blog/2024/09/03/lsp-good-bad-ugly....) but that's another topic :)
- MangoCoffee 2y agoThe editor is open-source. If you want DRM trap to be open-source, create them yourself. VSCode is a text editor at its core, and you're free to use it as you see fit. The blog read like the author is crying that Microsoft is not giving away extension for Gitpod to make money
- kuschku 2y agoThis behaviour has a specific name. Microsoft is embracing open source, gaining market share with proprietary extensions, and then those to extinguish any truly OSS forks. Embrace, extend, extinguish. Once again.
- BoorishBears 2y agoThat's not how that term ever worked, but go off.
- bogantech 2y agoIt's a bit of a reach to invoke EEE for a piece of software they wrote in the first place. Of course it's a post relating to MS so there will be at least one such comment
- kuschku 2y agoBack during the early 2000s, when OpenOffice threatened to eat Microsoft's lunch, they created the new .docx/.pptx/.xlsx Office Open XML file formats and got ISO to standardize them as ISO 29500-1. The standard isn't detailed enough to create your own Office implementation. Not even Microsoft Office implements it correctly. Microsoft only created the standard so they could claim they were as open as OpenOffice, to prevent OpenOffice from becoming the standard, to make sure third parties would continue building upon Microsoft Office, and to ensure third party implementations would always be slightly worse. As leaked emails later showed, even Microsoft employees used the Embrace Extend Extinguish term to describe this project. I'm not sure why you think the VSCode situation is so different.
- rowanG077 2y agoI'm using vs codium. What most useful things am I missing? I have not found anything missing. Now I'm really curious.
- ReleaseCandidat 2y ago"Remote SSH" and "Dev Containers". https://code.visualstudio.com/docs/remote/ssh https://code.visualstudio.com/docs/remote/ssh https://code.visualstudio.com/docs/devcontainers/containers https://code.visualstudio.com/docs/devcontainers/containers
- staunton 2y agoRemote ssh works on vs-codium. (With a slightly different extension).
- ReleaseCandidat 2y agoI thought the server part of VS Code (to be exact a proprietary Node addon) is the problem? https://github.com/VSCodium/vscodium/issues/1229#issuecomment-1236050999 https://github.com/VSCodium/vscodium/issues/1229#issuecommen... Stupid me, the solution is one post below :D https://github.com/VSCodium/vscodium/issues/1229#issuecomment-1236055268 https://github.com/VSCodium/vscodium/issues/1229#issuecommen...
- fransje26 2y agoWould you mind sharing which extension works for you, to help consider a switch to vs-codium?
- ReleaseCandidat 2y agoI guess that's https://github.com/xaberus/vscode-remote-oss https://github.com/xaberus/vscode-remote-oss
- fransje26 2y ago
- wkat4242 2y agoIt's not really DRM. You can make most extensions work on codium by changing a few settings. It's just not officially supported. I hate the way they don't open source the useful ones like the ssh debugging though
- Pannoniae 2y agoThey have integrity checks and obfuscated code. That's not just changing a few settings. See the issue I linked about Pylance, for example...
- throwup238 2y ago> It's just not officially supported. Isn't it worse than that? They're not just unsupported, I thought it was against their EULA to use the MS extensions with anything but the official VSCode. It doesn't matter to the average person using it for personal projects but it's a liability to businesses. It wouldn't matter most of the time but this is Microsoft we're talking about.
- wkat4242 2y agoMeh, for me personally I don't care about EULAs, as you say. And for business, they will use the official VS Code anyway. My own employer is up to their armpits in Satya's ass. Over the last 8 years the MS sales goons have managed to get us to throw out every third party solution they had an option for. We even have to use Edge now.
- wiseowise 2y ago> And for business, they will use the official VS Code anyway. Our company only has VSCodium in their repos.
- slimsag 2y agoIts close in spirit to DRM: they enforce that if you are using their projects, it is under their legal terms. Many of their VS Code extensions[0] have license terms which /prohibit/ them from being used in editors that are not Microsoft's VS Code editor, and Microsoft can issue cease-and-desist for violations of this, as well as 'open source forks of VS Code' using their marketplace services. Microsoft also has a pattern they follow where they publish repositories on GitHub to proclaim they are open source, while actually distributing proprietary binary blobs in them that are fundamental core parts of functionality to the codebase[2][3][4] [0] https://github.com/microsoft/vscode-cpptools/issues/6388#issuecomment-719063505 https://github.com/microsoft/vscode-cpptools/issues/6388#iss... [1] https://github.com/microsoft/vscode-cpptools/issues/5784 https://github.com/microsoft/vscode-cpptools/issues/5784 [2] https://github.com/microsoft/win32metadata/issues/766 https://github.com/microsoft/win32metadata/issues/766 [3] https://devlog.hexops.com/2024/building-the-directx-shader-compiler-better-than-microsoft/#introducing-dxildll---the-proprietary-code-signing-blob-for-directx-shaders https://devlog.hexops.com/2024/building-the-directx-shader-c... [4] https://github.com/microsoft/Azure-Kinect-Sensor-SDK/issues/1521 https://github.com/microsoft/Azure-Kinect-Sensor-SDK/issues/...
- ocdtrekkie 2y agoIt's really important to realize that some 70% of the OSI's funding comes from proprietary services houses (Amazon, Microsoft, and Google mostly and then like... Comcast and IBM), and so nobody at the OSI legitimately cares about openness. The reason SSPL is not OSI approved is because Amazon pays an entire OSI staff salary a year and the SSPL costs Amazon money.
- rectang 2y ago> The reason SSPL is not OSI approved is because Amazon pays an entire OSI staff salary a year and the SSPL costs Amazon money. This is slanderous nonsense. SSPL is not OSI-approved because field-of-use restrictions are not compatible with the Open Source Definition, clause 6. https://opensource.org/osd#fields-of-endeavor https://opensource.org/osd#fields-of-endeavor > 6. No Discrimination Against Fields of Endeavor > The license must not restrict anyone from making use of the program in a specific field of endeavor. For example, it may not restrict the program from being used in a business, or from being used for genetic research. Here's the decision: https://web.archive.org/web/20230411163802/https://lists.opensource.org/pipermail/license-review_lists.opensource.org/2019-February/003977.html https://web.archive.org/web/20230411163802/https://lists.ope...
- ocdtrekkie 2y agoI've read the arguments, but those arguments apply equally to the AGPL, which would not be approved by the OSI today. SSPL has no field of use restrictions, it simply has restrictions that require viral open sourcing. And there's nothing slanderous about pointing out that, yeah, Amazon pays out a significant portion of the OSI's entire operating budget. (edit: Actually FWIW, Amazon is apparently not currently on the Sponsors page... maybe they didn't renew this year. But they used to be at the top.)
- poincaredisk 2y ago>I've read the arguments, but those arguments apply equally to the AGPL How? You can use AGPL code to develop nuclear weapons and murder drones, as long as you publish the code.
- bsder 2y ago> The short summary is that MS uses multiple, constantly changing methods of DRM to make it impossible for people to patch out the "only official VSCode" check from the Pylance extension. This is very clearly malicious. Huh? There's been lots of outrage about this. Repeatedly. However, the problem is that nobody with any resource is willing to step up and replace the Microsoft closed source plugins. And developers aren't willing to put themselves out to use non-encumbered extensions. It's basically a big "Put Up or Shut Up" from Microsoft, and nobody is willing to "put up" so we wind up with "shut up".
- zozbot234 2y ago> If you enjoy a rabbithole, look at how much DRM there is in Pylance So just don't use it? The linked discussion points to Basedpyright https://github.com/detachhead/basedpyright/ https://github.com/detachhead/basedpyright/ as the best free alternative right now (with some additional features around Python optional typechecking that aren't even in Pylance itself).
- wiseowise 2y agoDoes this fix Jupyter too? As far as I know VSCodium Jupyter is broken, unless you use Pylance.
- HelloNurse 2y agoWhat are the benefits of running Jupyter from VS Code rather than on its own? Isn't Jupyter the sort of thing that can only be made more fragile and complicated by IDE integration?
- wiseowise 2y agoSane editing experience to start with. And proper intellisense, etc.
- morgante 2y ago"Source-available but not strictly OSS" is, in most cases, not really giving anything of value to the community. You are not free to use it in building your own solutions. At best, it allows easier collaboration with customers. Open core absolutely is open source. There's a clear and valuable open source core that others can build on to build their own products. This isn't just hypothetical. As far as I know, no source-available license allows you to actually use it to build your own product. While VS Code has many other products built on the core (including products that lawyers have reviewed closely for compliance).
- re-thc 2y ago> You are not free to use it in building your own solutions Tell that to the LLMs.
- notpushkin 2y agoWith licenses like Elastic I agree 100%, but what about delayed licenses like BUSL or FSL?
- bonzini 2y agoThere are several complications; see here: https://lwn.net/Articles/984249/ https://lwn.net/Articles/984249/. For example, if the copyright holder applies a security fix to an old version that had "expired" and is now open source, will that cause old version to revert to source-available? Does any security fix, even the simplest one, require clean room reverse engineering on part of the community? Unless these questions are answered clearly by the copyright holder, BUSL/FSL are not really usable as open source even after the expiration date.
- notpushkin 2y ago> For example, if the copyright holder applies a security fix to an old version that had "expired" and is now open source, will that cause old version to revert to source-available? Yeah, it’s tricky. By default, I think it does go back to source-available, but I would trust the vendor to explicitly release the fix as open source instead. Of course, it should be addressed in future versions of such licenses, and in the meanwhile vendors should promise to not hold security updates out. It’s not something exclusive to delayed licenses though: vendor of a permissively licensed software can make a security fix under a proprietary license. They don’t do this because it would be a dick move and the community will fork the software, but this is a possibility.
- wiseowise 2y ago> If you enjoy a rabbithole, look at how much DRM there is in Pylance (another extension that MS has locked down): https://github.com/VSCodium/vscodium/discussions/1641 https://github.com/VSCodium/vscodium/discussions/1641 The funny thing is that I’ll never understand why it’s not open source and why its license prohibits its use in VSCodium. Pylance is good, but not that good. Certainly not on a level of PyCharm. What incentive do they have to keep it secret except being evil?
- poincaredisk 2y ago>What incentive do they have to keep it secret except being evil? Money. Which is OK. Developers need salaries. They need to justify the department budget to bean counters and sales internally. The company you work for is most likely not a charity too. If you want to strictly use free software (as I do), VsCodium is great for everything I need.
- wiseowise 2y agoOk, I’ll rephrase: how do they make money with Pylance?
- poincaredisk 2y agoThey make money with VsCode (by forced, or at least hard to disable, telemetry, ads [1], and probably many other subtle things. Plenty of ways to monetize developer eyeballs). Pylance is just a vehicle to encourage people to use proprietary VsCode instead of open forks like VsCodium. [1] https://github.com/microsoft/vscode/issues/60989 https://github.com/microsoft/vscode/issues/60989
- lozenge 2y agoYou can't use Gitpod, Theia IDE, etc with Pylance. Or GitHub Copilot. Or Live Share or numerous other VSCode extensions. The idea is people start a project in VS Code, need to scale up to a reproducible dev environment for multiple users, and follow ads in VSCode to GitHub Codespaces, which charges by the hour for VMs. Now you're locked into that, you're locked into GitHub as well, and they can cross sell you GitHub Actions, GitHub Advanced Security &etc. Therefore, Pyright is almost the minimum needed to add type checking to your CI process. Edit: to clarify, not only is Codespaces advertised in VS Code, it also uses private APIs so no competitor can publish an extension which replicates this functionality on the VSCode marketplace.
- poincaredisk 2y ago>The short summary is that MS uses multiple, constantly changing methods of DRM to make it impossible for people to patch out the "only official VSCode" check from the Pylance extension. This is very clearly malicious. Huh? If anything, MS prevents people from shooting themselves in the foot and illegally installing a piece of software against the license terms. You can use vscodium for free, it's great, you literally don't have access to a few MS extensions (with open alternatives, which you can support financially if you care).
- Karellen 2y ago> MS has managed to pacify even the strongest FOSS advocates I'm not sure that's the case. I think the strongest FOSS advocates gave up on Microsoft decades ago, and just don't engage with anything they put out. If MS release source-available stuff, strong FOSS advocates don't peep because they've not even looked at it. Why bother - it's Microsoft. If someone else does it, well, the FOSS advocates still had some hope that what they didn't wouldn't be terrible, so there's space for those hopes to be dashed.
- tonyhart7 2y agoYeah, I think this is the problem that this (people) are, expecting another corporate entity to do the same thing is actually hilarious. hey, we welcome microsoft to countribute to FOSS, but expecting to behave like another is laughable given the alternative
- fabioz 2y agoYes, PyLance has a pretty strict license and makes it very clear it cannot be used in forks (and that's not really surprising and pretty standard I'd even say for a corporation such as Microsoft, it's like the current licenses saying this is open source but cannot be used by competitors, what's really surprising for me is that forks are choosing to ignore this): > INSTALLATION AND USE RIGHTS. a) General. You may install and use any number of copies of the software only with Microsoft Visual Studio, Visual Studio for Mac, Visual Studio Code, Azure DevOps, Team Foundation Server, and successor Microsoft products and services (collectively, the “Visual Studio Products and Services”) to develop and test your applications. b) Third Party Components. The software may include third party components with separate legal notices or governed by other agreements, as may be described in the ThirdPartyNotices file(s) accompanying the software. One thing I don't understand is how forks (I'm actually talking about Cursor which is one I'm actually evaluatinng) are getting away with scrapping all extensions from the VSCode marketplace... I even e-mailed them but had no official position on that. Maybe they have some separate contract with Microsoft -- they do have OpenAI backing, so, maybe they have some bridge there, does anyone know? Or maybe Microsoft is just waiting to see how they themselves can profit for it and so is taking no legal action at this point? -- disclaimer: I'm on the author of PyDev and I do have my own Python extension that I publish to VSCode and OpenVSX (https://marketplace.visualstudio.com/items?itemName=fabioz.vscode-pydev https://marketplace.visualstudio.com/items?itemName=fabioz.v...)... it's completely Open Source in Eclipse, but for VSCode it's currently commercial. I discovered that's a nice way to have less people requesting support, even though 99% of it is still Open Source ;)
- troupo 2y ago> People when a piece of software is source-available but not strictly OSS: outrage There's no longer outrage, since this has become the norm. Biggest most obvious example: Chrome.
- exceptione 2y agoMS is a bit weird. After realizing that most competent developers had left the MS ecosystem, they went for a Zeitenwende. But they did only for 90%. I wonder to what extent this halfheartedness should be ascribed to the MS org chart or to reasoning like "we should prevent a competent competitor to run away with our tools". In the mean time, there is a capable replacement named Theia [0] with none of the strings attached. We as a whole would do best to move to that one. [1] ___ 0. https://theia-ide.org/#theiaide https://theia-ide.org/#theiaide 1. That is to say: for vscode kind of experience. Native IDE's are unbeatable imho.
- ReleaseCandidat 2y agoTo be honest, Theia (the last beta I tried some months ago) is everything people always complain about Electron apps: slow as molasses - way worse than e.g. Atom (or Pulse) (which VS Code actually isn't).
- wvh 2y agoConvenience and comfort are freedom's enemy. What is going wrong with the traditional editors and programming tools that (assumably) younger devs are going for those full-blown IDEs? Has the complexity of development with back/front/ops exploded so much that older editors are lagging behind modern needs? As OSS old-timer, I gave VS Code a try, but it was too noisy and distracting, slow, and didn't allow enough control over what was being installed and when. To each their own of course, but I didn't see any particular reason why VS Code is much better or deserves to be more popular than other editors, and if any functionality is missing from other editors – especially those that are incorporating tree-sitter – then maybe we can just improve those alternatives? Talking about modern editors, I like where Zed is headed, but that project also has some non-OSS components or aspirations if I remember right.
- deleted 2y ago[deleted]