23 ms·
Visual Studio Code is designed to fracture (2022)
- tech234a 2y ago(2022) with a small addition in (2023), still relevant though
- seltzered_ 2y ago2022 discussion (142 comments): https://news.ycombinator.com/item?id=32657709 https://news.ycombinator.com/item?id=32657709 Possibly one change in 2024 is that Typefox (which contributes to Eclipse Theia) announced Open Collaboration tools: https://news.ycombinator.com/item?id=40970621 https://news.ycombinator.com/item?id=40970621 -> https://www.typefox.io/blog/open-collaboration-tools-announcement/ https://www.typefox.io/blog/open-collaboration-tools-announc... (2024)
- CrimsonCape 2y agoHere's a good comment thread from cpptools extension: https://github.com/microsoft/vscode-cpptools/discussions/12688 https://github.com/microsoft/vscode-cpptools/discussions/126... Having not delved too deeply into building from source, this post suggests it's not even possible. We will need some new terminology to express that a given codebase is OSS licensed and the build dependencies additionally are OSS licensed.
- toofy 2y agowow, thanks for posting this. in a few tiny comments it demonstrates precisely the problem the larger ecosystem is facing and will almost certainly get much much worse sooner than we think.
- kragen 2y agowow, that's really troubling. people in the future will wonder what we were talking about after microsoft memory-holes that thread
- wruza 2y agohttps://web.archive.org/web/20240927000850/https://github.com/microsoft/vscode-cpptools/discussions/12688 https://web.archive.org/web/20240927000850/https://github.co...
- kragen 2y agothe internet archive isn't going to last much longer, maybe five or ten years as brewster says: 'governments burn libraries' there's a reason that the first backup of the internet archive is at alexandria and that the first time brewster started the internet archive it was a for-profit company called 'alexa'
- pxc 2y agoVSCode is not open-source, and neither is this extension. Much F/OSS on Windows and virtually all F/OSS on macOS has proprietary build dependencies (e.g., MSVC on Windows, Xcode and various Apple frameworks and GUI toolkits on macOS), but is still itself F/OSS. It's true that such software doesn't promote or embody software freedom to the same extent as free software written for free platforms and built with free toolchains and dependencies. But this case isn't about that. Reread the comment of maintainer (presumably an MS employee) at the end: > I'm sorry to let you know that our license also prohibits using our extension in alternate distributions of VS Code - only the official one produced by Microsoft may be used. So even if we did produce a RISC-V version, you wouldn't be licensed to use it with Code Server. That's just proprietary, software plain and simple. Recall freedom 0 of the free software definition: > The freedom to run the program as you wish, for any purpose (freedom 0). In the way that third-party distributions of VSCode do not come with the same rights to extend the software or use it in combination with compatible extensions as the first-party distribution does, VSCode also fails the test of freedom 3, regardless of the license of much of the code: > The freedom to distribute copies of your modified versions to others (freedom 3). By doing this you can give the whole community a chance to benefit from your changes. Access to the source code is a precondition for this. It's not that your modified copies must give your users the same rights to inspect and modify the code as you had (that's copyleft) but that you are unable to give them such rights. MS does this not entirely through the licensing of VSCode but also through the licensing of certain extensions, but the actual outcome is the same. It's not a different story for the term open-source. This: > May we ask why you'd like to do this? If you're planning to redistribute the language server binaries as your own custom offering, please note that our runtime license prohibits that. means that the extension fails condition 1 (the redistribution criterion) of the open-source definition. And VSCode not allowing modified redistributions the same rights as the original fails condition 3 (the derived works criterion). Neither VSCode nor this extension is open-source. They're both just proprietary software with some open-source components. Free Software Definition: https://www.gnu.org/philosophy/free-sw.html.en#four-freedoms https://www.gnu.org/philosophy/free-sw.html.en#four-freedoms Open-Source Definition: https://opensource.org/osd https://opensource.org/osd Note that these are not definitions in the ordinary lexographical sense. They are terms that were created with explicit social and technical purposes in mind, by and for organized movements. This isn't an argument from the dictionary but a reminder of the purposes of these concepts.
- awson 2y agoAFAUI, this extension uses proprietary C++ front-end commercially licensed from EDG. The same front-end powers their Visual Studio IDE (not Code). Also, AFAIK, there exist an alternative `clangd`-based C++ extension, which is fully open-source (but I could be wrong).
- gpderetta 2y agoclangd is fully open source. You can build it yourself from llvm sources. It works fine with emacs LSP support. I never used the proprietary extension so I can't compare the functionality, stability nor speed.
- karl42 2y agoDebian splits their distribution into three components: * main (free software) * non-fee * contrib (free software that depends on software outside of main, so usually non-free software) While I am not fond of the "contrib" terminology, I think this categorization makes a lot of sense.
- okl 2y agoAdditionally, there is now `non-free-firmware`, e.g., http://ftp.debian.org/debian/dists/testing/non-free-firmware/ http://ftp.debian.org/debian/dists/testing/non-free-firmware...
- dumbo-octopus 2y agoWithout proposing a model for how the 50+ full time employees who create VS Code justify their collective ~20MM annual budget, this sounds a lot like: “Ugh, they made it mildly inconvenient for my company to benefit from all their engineering work but swap out the product surface and reap the profits by undercutting their product via not needing to fund the engineering ourselves. How lame.”
- kragen 2y agothat's not my problem. my problem is making sure i don't make my own job skills dependent on microsoft's continued goodwill, because historically that has been a guaranteed path to obsolescence. i don't need their engineering work. i have emacs, vim, clang, gcc, idea, eclipse, firefox, and so on i'm only interested in microsoft's generous gift of blankets if they come without smallpox
- dumbo-octopus 2y agoYou also have vscode. What you don’t have is the various proprietary extensions msft makes to vscode, just as you don’t have every proprietary extension anyone has ever made to those listed platforms.
- toofy 2y ago> You also have vscode. What you don’t have is the various proprietary extensions msft makes… i’m not trying to be confrontational i promise, but i mean, yeah, youre just repeating what we’re discussing… microsoft bangs its drums chanting “please like us again, look at how open source we are. we’re not the same abusive company we used to be… we’ve changed, really.” to many of us, the extension ecosystem is the biggest thing separating code from other IDEs in the first place. this is just more abusive tactics from a company with very very long history of abuse, only this time they try to hide it behind empty “open source community, look how much we love you” rhetoric. i’ve always recommended to organizations to run fast and far from ms products. basically “if you’re looking at a long timescale, you want agility, you want to be able to easily pivot in various other directions. if you use MS, you never know where they’re going to lock you down. run fast and far from them.” and this is just another example of why. i think the commenter above nailed it perfectly with, “they keep telling us we should be grateful for microsoft blankets infected with the smallpox.”
- yazzku 2y agoNothing should be built with a Microsoft product as its foundation. It's not even a mystery how such endeavours end.
- vunuxodo 2y agoYou could say the same about Google: https://killedbygoogle.com/ https://killedbygoogle.com/ Said by someone who writes Flutter for a living :/
- HelloNurse 2y agoMicrosoft has far more experience than Google at having strategies.
- TZubiri 2y agoSay what you want about microsoft, but it protects its developers by making sure they get paid, and it also does so for third party developers who target Microsoft. I'd rather get paid than build towards an ideal bunny world of free as in free beer software. developers developers developers
- sham1 2y agoI feel that people rather care about the free as in free speech world, rather than the free as in free beer world. Plus, for the former you can still get paid. You don't need proprietary software for that.
- TZubiri 2y agoThere's a bait and switch. For users free software is about not having a cost associated, Wikipedia, Wordpress, Google and Youtube, Whatsapp, ChatGpt, they all compete in the same category of software that doesn't have a cost. Now for developers, they are recruited to build software under the guise of freedom, while their users care not about the men who die for the cause, and only appreciate the free stuff. The argument that you can still get paid developing free software is obtuse. Source code is a very valuable tool to protect intellectual property (which is a recognized legal asset despite what stallman would like to be the case). If you sacrificie your source code advantage by making it public (which is a requisite for free software, put down your "Free software isn't open source" paragraph gun), then you give away most of your capacity to make money out of your skill. Furthermore, open source development and closed source development are two very different skillsets, so you kind of get locked in to a worse paid form of software (with the exception of the top 0.01% of developers who might net evangelizing positions at actual proprietary companies like Guido Van)
- dangus 2y agoI think the level of alarmism is way overblown especially from the author’s perspective coming from Gitpod. There’s so much focus on how Microsoft has this huge advantage with VSCode and GitHub Codespaces as a cohesive product. But I think that this entire cloud coding workstation space is rather niche in itself. I think the average user of VSCode, VSCodium, or whatever other fork has full flexibility to not use Microsoft’s preferred extensions and solutions and customize their environment. All this stuff about fracturing an ecosystem basically amounts to picking default extensions and I just don’t know if this is one of those “abuse of market power” things yet. I mean, sure, it can be said that it’s bad how Microsoft is so large that it can single-handedly steer the course of a lot of development trends. At the same time, I don’t think VSCode being such a good product was something that came out of Microsoft’s dominance. They had a lot of luck with that one, they had the right idea, people, and management at the right time. Microsoft makes plenty of software where their big company big dollar investment hasn’t made them a market leader and they have a laundry list of failures and technologies that are trending downward to show for it. I would agree with another comment on this thread: it really does seem like a bunch of complaining from some cloud workspace competitors who want to get a free IDE for themselves that works perfectly.
- kragen 2y agoif your competitors can't sell your product, it isn't open source.
- ocdtrekkie 2y agoFundamentally, this mindset and flaw in the definition is why open source can't prevail. Because open source is absolutely committed to being unsustainable.
- kragen 2y agoon the contrary; it's absolutely committed to not being dependent on a vendor, because being dependent on a vendor makes software unsustainable
- Pannoniae 2y agoPeople 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]
- ilrwbwrkhv 2y ago> The future of software development tooling that is being built is closed as fuck, and people seem to be okay with it because select components meet the OSI definition while missing the bigger picture. This is such a huge problem and something that I have regularly commented on on Hacker News itself how the open source term is being applied so loosely especially by a bunch of VC funded companies who are further perpetrating this horrible horrible change in language and meaning and the ethos behind the open source movement. YC itself is funding a bunch of these companies who claim to be open source but do not follow the ethos at all.
- jillesvangurp 2y agoThe problem is not companies doing this but users and developers not caring or sharing your concerns. All this moralism about ethos and such is just not that relevant. What matters is that software licenses are legal text documents. The only place where the interpretation of those texts matters is in a court room. I don't think there are a lot of court cases involving VS Code. MS tends to have their house in order on that front. So, VS Code seems safe enough in the legal sense. Yes, it has some extensions that are not licensed as OSS or that are simply closed source. So what? If that bothers you, don't use those. Or better, fix it by creating some open source. Open source is not a right, it's a privilege that is granted to you at the discretion of the creators of that software. Not something that you can demand from them. VS Code is a closed source product that includes lots of OSS components. So much that there's VS Codium a well, which is fully OSS. A lot of those OSS components are used in other products as well. And some of those things are fully open source. The value of the VS code ecosystem is that it enables this ecosystem of components and products to thrive.
- deleted 2y ago[deleted]
- TZubiri 2y agoCoding in notepad or nano has been a great investment of my time. I don't need to learn any of these tools or read about any drama, I just type letters into the screen and use my keyboard to move my pointer. That's it, if I need anything more complex to handle my codestring, I write code. But I have never needed to run a search and replace of a variable, both notepad and nano can do that. If I need anything more complex I do it manually. Anyone that does some exercise or has had a physical job knows that doing something 26 times in a row is basic stuff of any worthwile endeavor.
- JoeOfTexas 2y agoThat just sounds painful if you work on large projects.
- __MatrixMan__ 2y agoThen again, maybe large projects are a bad idea.
- broodbucket 2y agoThey tend to have this nasty habit of running the entire world, though.
- TZubiri 2y agoRarely, it's mostly small projects, but many many many of them.
- tobyhinloopen 2y agoProudly written on a device run by a huge collection of huge projects
- jamesfinlayson 2y agoYeah, early in my career I got by with gedit on Ubuntu but before too long a 700,000+ line PHP project with deep, deep inheritance trees showed up and I very much embraced an IDE.
- mustache_kimono 2y agoI'm still trying to figure out what the issue is. It sounds like MS is making a better cpptools/C++ extension mouse trap and it's impossible to build a fully OSS version because many of the MS components are closed? And when a user discovers he/she can't use their native extensions from any web interface, this is a problem for the web interface guys? I have to ask -- if people want to use this freeware instead of OSS software, it might be disappointing, but is that really a problem? If there is an answer, it would seem to be more information about who is to blame. Perhaps open source vendors should be more clear that their offerings are also open source and open ecosystem? Perhaps that would tip off devs that not every extension is, that is -- the MS alternative extension is not. One could even be more forceful: "Certain alternatives, like vscode-cpptools, are NOT licensed under an OSI approved license. vscode-cpptools contains many unexamined binary blob components. Developers of blah blah blah C++ extension strongly believe in an open ecosystem for VSCode extensions, but MS has also refused to allow redistribution of vscode-cpptools, if used by native open source builds or by those offering VSCode via web services. Developers of blah blah blah believe, whether the code is closed or open source, ALL VSCode extensions should be freely redistributable for the good of the broader VSCode extension ecosystem." If major extension projects are aligned, they could simply add a notice like above to their description on their marketplace page? Trust me, legally, culturally, MS really, really doesn't want to deny access to its marketplace, because a few OSS projects wanted to offer a comparison of their license terms to those of MS. Apple is currently dealing with a marketplace lawsuit. MS doesn't want a marketplace or another antitrust suit.
- CrimsonCape 2y agoHere's a simple example: you write an API consisting of one public function. You compile the API into a binary with a closed source license. You then create another API with one public function. This function is an extern call into the library binary. You publish the second API into Github with an MIT license and proclaim your API is open-source. The broad theme is: if 100% of the functionality of the software is inside a closed-source compiled binary, should it be false advertisement to say it is "open source." Or in other words, who draws the line when someone oversteps the intent of "open-source" for exploitative reasons. I don't know if cpptools' functionality is 100% closed; in reality there are three other licenses you must agree-to within a repository that is supposedly MIT licensed.
- btown 2y agoThe headline of this is a bit counterintuitive: many people, when they see the word "fracture," might imagine an ecosystem in which different offerings can coexist. Someone not reading the full article might even think this implies that VS Code might even "break apart" into many open-source forks, which would be a good thing. But the word "fracture" is very much meant in a different context here, in that Microsoft does not allow its proprietary extensions to VS Code to be used legally by any third-party fork, and thus can leverage the unique and unstandardized behavior of e.g. its closed-source Pylance Python language server to ensure that no fork can replicate the experience (glitches-as-features and all) that practically all users of VS Code will expect, thus giving forks a Sisyphean challenge to overcome. https://visualstudiomagazine.com/articles/2021/11/05/vscode-python-nov21.aspx https://visualstudiomagazine.com/articles/2021/11/05/vscode-... is linked in the OP and discusses the surprise the community felt when VS Code transitioned to Pylance. I'd venture to say that most users of VS Code have no idea how much of their Python editing experience is run by closed-source logic. On one hand, it's a bit frustrating that many people, myself included, switched to VS Code from other IDEs because "if the community sees a problem, the community has the tools to fix it and will do so." But that ceases to be true when the bulk of the IDE's power comes from closed-source language servers that Microsoft could feature-freeze (or deallocate resources from them) at any time, and still have ~years before any community language server could begin to replicate all the edge-case behaviors of their closed-source extensions and gain notoriety as a better alternative to Microsoft's defaults. Is this a bad status quo, though? Microsoft's invested incredible resources in a stellar user experience to date, and might not have done so if it didn't have this strategy in play - a strategy that ensures that no fork will ever be able to capture developer mindshare, and that ensures that the larger Microsoft ecosystem of services will never be disadvantaged or de-promoted by such a fork. As long as leadership desires to continue making this advantage larger and larger, and have Microsoft developers dogfood their own IDE, and thus continue to invest in their language servers, most users will benefit. And sure, some of us will need to keep typing "# type: ignore" into our codebases to work around a Pylance bug that nobody can see the code to submit a PR to fix... but we gain so much in return for that inflexibility. I'm more interested in how my IDE helps me to make my own visions into reality, than in the purity of whether it can truly be called "open source."
- 2y ago
- amluto 2y agoIn some sense, this ought to be an opportunity. VSCode’s ecosystem is, in many respects, quite weak: - cpptools is kind of amazing but also pretty bad. It regularly malfunctions for me. It’s essentially undebuggable. I have less experience with the other extensions, but I don’t expect that they that much better. - The VSCode security story is very, very weak. Extensions are not sandboxed. The client, accessing remote repos, is wildly insecure, by design. And that second point is a big deal. Maybe when poking at your own company’s code, you aren’t that concerned about your repo attacking you. You probably should be concerned about malicious extensions, but we’re all far too used to trusting dev tooling. (Don’t forget that MS’s extensions are just this side of malicious.) But, with AI, you should absolutely not trust your LLM. It is entirely unsafe to give an LLM that might try to exploit you the ability to write into your repo directly or to run JS code in the context of any portion of VSCode. And it’s really quite easy to convince LLMs to engage in all manner of shenanigans. There’s an opportunity to make a better ecosystem. In a better ecosystem, the equivalent of cpptools would not have telemetry, because the equivalent of cpptools would not have Internet access. It would have the ability to read the workspace, to create cache files for its own data, and to operate its UI, and that’s all.
- tjoff 2y agoThe clangd extension is much better for me, assuming that you have or are able to generate a compile_commands.json (at least easy in cmake) and point clangd to it.
- jeroenhd 2y ago"The free software Microsoft is giving away isn't open enough" has to be one of the weirdest modern takes. I remember when "free IDE" meant "Eclipse" or "vim with a billion extensions". From what I can tell, Microsoft isn't even sabotaging open alternatives, they're just Not As Good. That sucks, but that's just how it works when you're using software made by a company that likes to pay its staff and still make a profit. I welcome everyone who feels entitled to the source code of Microsoft's very best software to see what true open source, maintained by an independent non-profit organisation looks like. You'll get an IDE that's functional, maybe even features a real debugger, but you'll probably wish you could go back not long after. People are taking software given to them free of charge for granted. It's not that long ago that you had to buy IDEs for hundreds or thousands of dollars and you had to buy the upgrade if you wanted the next version a couple of years later.
- derkades 2y ago> From what I can tell, Microsoft isn't even sabotaging open alternatives I think they are. VSIX extensions are supposed to be some sort of open standard, but some Microsoft extensions like Pylance actively refuse to work if they detect running in something other than Microsoft's build of VS Code.
- jeroenhd 2y agoMicrosoft's extensions don't work, but that's Microsoft's choice. Whatever open source alternative for Pylance exists (if any) will work just fine. If they messed with VSCode to sabotage OpenPylance or whatever the situation would be different, but in this case people are just looking a gift horse in the mouth.
- WorldMaker 2y agoPylance is Pyright (open source) plus custom Small Language Models and other proprietary sauce. Pylance isn't sabotaging Pyright, because it is built on top of it. You can find alternative extensions that are "just" Pyright. (They have a fraction of the users because the SLM-based magic of Pylance is a nicer experience if you can "afford" it [based on your principles].) Pyright is maybe sabotaging competitive projects MyPy and Ruff by being "knighted" as a part of Pylance, but that's not generally how open source competition is seen to exist. There also doesn't currently seem to be competition for the proprietary bits of Pylance outside of the LLM space. That's maybe catching up quickly, but Microsoft's more dedicated SLM models might still be leaders in the space, and Microsoft wanting to keep models proprietary while they are competitive shouldn't be a surprise.
- dgreensp 2y agoIt takes a LOT of reading to find out what the actual point is here, and the concept of a “fractured” “ecosystem” is brought up a dozen times without being explained. A “venus fly trap that is designed to fracture”? What in the heck. VS Code is an IDE you can download and use for free from Microsoft. It’s not some magical open-source platform/ecosystem thing that anyone can use for anything, which Microsoft has no control over. It’s a product. It seems like everyone wants to make “universal” developer _services_, but no one wants to build or fund an IDE, or it’s just too hard or something. That’s not Microsoft’s fault.
- alkonaut 2y agoIf you try to make a business building on top of it it’s a risk you are taking. Whether vscode was partially oss or fully closed seems like an inconsequential detail.
- 999900000999 2y agoI'm going to get downvoted, but no one is making you use VSCode or Chrome/Chromium. I came across a post here that was like "I use Chromium, I ethically can not use Chrome." Firefox is right there, if you want an to support a different browser. Zed exists, it's new but it's already a very good IDE. I tested it with Unity and the C# support is fantastic. 20 years ago the notion Microsoft would develop dev tools for Mac and desktop Linux would be absurd. Now you're mad you can't just fork VS Code, sprinkle some tweaks on it and create a business around that ?
- ReleaseCandidat 2y ago> Zed exists, it's new but it's already a very good IDE. An IDE needs at least a working Debugger (or, to be more precise, a graphical interface to debugger(s)). And Zed has exactly the same problems VS Code has, minus actually contributing LSP and DAP (Debug Adapter Protocol) to "the editor community". So, Zed is actually worse in that regard.
- virtualritz 2y ago> An IDE needs at least a working Debugger (or, to be more precise, a graphical interface to debugger(s)). For me that should read at _last_ (or not at all). While almost any IDE I ever used had a debugger (starting woth Borland Turbo C++) the number of times I used one I can count on both hands. And even then, a CLI to the debugger is just fine. Like with any feature an IDE may offer, there are people for which that very one is essential. Fair enough; but don't assume your non-negotiable X is the same for every other user of an IDE. It is not.
- ReleaseCandidat 2y agoI'm sorry, but what _is_ the difference between an editor and an IDE for _you_? Btw. I'm not saying that having an integrated debugger is a sufficient condition for an editor to be an IDE (VS Code isn't, Sublime Text isn't, other editors with DAP support aren't). > but don't assume your non-negotiable X is the same for every other user of an IDE. It is not. But _you_ not needing a debugger in an IDE is a reason something is an IDE without one, I see. Btw. I'm (normally) not using IDEs.
- taraparo 2y agoMotivate the authors of your favorite vscode extensions to publish them at https://open-vsx.org/ https://open-vsx.org/
- ReleaseCandidat 2y agoEverybody can do that themselves, if the original maintainers don't want to (which is a security problem ;): If you are not the author, we suggest you first reach out to the author with an issue in their GitHub repo to request that they publish their extension to open-vsx.org. We've drafted a template with suggested content for the issue. https://github.com/eclipse/openvsx/wiki/Publishing-Extensions https://github.com/eclipse/openvsx/wiki/Publishing-Extension... Such "3rd party extensions" don't get the "verified publisher" icon (or at least should not get it ;).
- ghuntley 2y agoEncourage you to look at the bigger picture. What happens when there’s an official extension by a 3rd party vendor SDK that defines a dependency on the proprietary language server/extension. It’ll work fine for “Visual Studio Code” but all these OSS forks (inc recent venture capital funding for AI ones) gets wrecked. It turns into a game of having to iterate through the graph and trying to convince official SDKs to change their product direction.
- m1keil 2y agoIn a way, VSC is the same model like Android. You can use it without its corporate backer, but severely limit its functionality in the process.
- ReleaseCandidat 2y agoThe author forgot about two very important "closed" plugins: "Remote SSH" and "Dev Containers".
- arandomhuman 2y agoIf you don’t like it don’t use it, vim/nvm and eMacs exist and are very capable editors without compromising on ecosystem.
- devjab 2y agoI think DoomEmacs is worth a recommendation as an add on to what you’re saying. As it’s basically “slow” nvim with all batteries included + Org mode. It’s was a very easy switch for me from VScode at least, and while I called it “slow” that is because nvim is ridiculously fast. DoomEmacs performance is still great, for the most part.
- arandomhuman 2y agoyeah I agree I think most devs that has used one of these distributions would be hard pressed to go back to vscode if they care about their IDE/text editor being open source - not to mention it can be a lot of fun extending them in ways that are personal to your workflow. Complaining about a massive corporate entity being self serving is kind of missing the hills for the trees.
- morgante 2y agoThe clearest way to understand it is that VS Code is open core software. There's actually a lot in that core, especially when you compare it to other open core products (ex. Gitlab). Enough that you can fork it and have a viable MVP for your own IDE (as Cursor, Gitpod, and many others have done) But you shouldn't ever be under the impression that you fork will be identical to VS Code. Frankly I think developers have benefited a lot from this. There's actually a strong foundation for others to innovate on their own IDEs without sinking years into basic R&D, and it's much better than the alternative era when ~all the user-friendly IDEs were proprietary.
- mike_hearn 2y agoIntelliJ has been open source (or open core if you like) for many years now, I think even pre-dating VS Code. So the idea that it's the first or only IDE that works this way is wrong.
- Myrmornis 2y agoI'd find this article easier to follow if it separated complaints about telemetry from genuine restrictions.
- locallost 2y agoI think OSS is great, but it's not why I use VS Code. I use it because it solved my problem of having a capable editor that is not a monstrosity (e.g. Eclipse etc). There are others in this space, I guess most famously Sublime, but VS Code always felt the least in the way. There was Adobe Brackets before it that was similar, but somehow very slow and buggy. The article makes valid points, if you are an OSS enthusiast. But at the end of the day, you always have the source code and you can always run your marketplace. This costs time and money, but if you believe in the idea you have to invest something and not depend on a mega corporation. If there are proprietary extensions that you can't have that sucks, but again someone can build an OSS one. But overall I agree with the article, I just have no illusions they are doing anything out of belief in open source, and I'm fine with it because worst case I have other options.
- Myrmornis 2y agoA few weeks ago I switched to Cursor. Everything seems to work unchanged -- all my extensions, the marketplace etc. That seems to contradict various things in this article, for example the claim that certain programming languages couldn't have the standard extension support in forks.
- dagw 2y agoAre you using Microsoft's Python extension? That seems to be the main one that breaks for people, including me. Also Microsoft's remote and container development tools only work on the official VS Code.
- Myrmornis 2y agoHm, yes I am. What breaks for you? I have noticed a bug where it suddenly jumps to the end of a file and I have to navigate back.
- advael 2y agoHaven't yet seen a reason to use VSCode and can't anticipate I will As an editor it's a pain in the ass, as an ecosystem it feels like a fucken freemium mobile game for how polluted and nickel-and-dimey extensions are, and worst of all it's owned by microsoft so while this article is informative on the specifics, I knew from the jump there was some legal fuckery involved because there literally always is I can't be a total purist and never use a tool that's connected to a large tech company's ecosystem, but where at all possible one should, and this is only becoming more true
- h1fra 2y agoNot going to defend Microsoft but they provided a massive codebase for free and yeah they have built a product on top, that is mostly free. If you fork you just don't have access to MS servers. Not fair enough? Also Monaco is the best editor by a thousand miles, front-ends are just using this editor because it's the best. We used to install CodeMirror or Ace when they were the best options. I'm not sure there was a massive master plan behind the creation of Monaco, on the contrary, they saw an opportunity to make it a standalone project that unlocked countless of web UI.
- virtualritz 2y agoI switched to Zed a month ago and never opened VSCode since. But I write 99% Rust so that's kind of a match made in heaven. That said and though OT: I'd be curious what similar caveats may apply to that editor?
- ReleaseCandidat 2y ago> I'd be curious what similar caveats may apply to that editor? Exactly the same as to VS Code, anything that is special about it is "closed" (as a service) https://zed.dev/blog/zed-is-now-open-source https://zed.dev/blog/zed-is-now-open-source
- noisy_boy 2y agoDoes zed have vi keybindings? I searched the extensions page but didn't see any.
- ReleaseCandidat 2y agoIt's not an extension. First-class modal editing via Vim bindings, including features like text objects and marks. See the "Vim-friendly" button at https://zed.dev/ https://zed.dev/, "Incredibly powerful out of the box" section.
- Jean-Papoulos 2y agoIt baffles me how people just keep expecting stuff to be free.
- fennecfoxy 2y agoYup, same argument as Youtube. Also people suck at boycotting, if they don't like VSC don't use it...if they don't like ads on YT as a viewer then don't watch it. If they don't like ads on YT/lack of payment for content they make as a creator...don't use it! "There's no alternative" make one, or release content elsewhere (the path that Nebula, etc went down).
- squarefoot 2y ago> People when a piece of software is source-available but not strictly OSS: outrage Also people who in some contexts could be infinitely more productive with their favorite editor by not being forced to work with an IDE. One thing is developing for the desktop where having a form editor becomes handy, therefore KDevelop or Lazarus make sense, but why in the world should one be forced to use that behemoth for a small set of .c or any other language files where a well thought makefile can rule them all? Do I have to install and configure vscode for a short source that would run on a microcontroller? Really? I see more and more projects requiring vscode, and that is not good if they don't actually need it (YMMV of course): turning a set of sources and their makefile in a IDE project isn't hard, doing the opposite is often a nightmare.
- rafram 2y agoNeeds a better thesis statement and organization. I read the whole thing and I’m still not sure what “designed to fracture” means.
- dangsux 2y ago[dead]
- FrustratedMonky 2y agoThis is giving MS a lot of credit for having a long term plan. Isn't it just that all companies want to extend/embrace/control. This has happened with a lot of Open Source products recently. Didn't this just happen with Redis this year.? "The mission of the Microsoft Developer Division is to earn the trust and love of developers across all languages and platforms and make them successful as they build the applications of the future." Maybe the simpler explanation is that they want to make a good product? Which will mean it spreads out, and they do need some amount of control, thus the 'official' build. Of course, they are also shady. I lived through the Explorer lawsuit days. But even then, I think they stumbled into it, they didn't have much of a plan beyond control. All companies want to extend and control. OSS was supposed to be a counter to this. But seems like without some kind of 'pay' model where developers can actually 'live' and contribute, it eventually falls apart. There are just not as many people willing to spend nights and weekends developing and especially SUPPORTING OSS for free. So any OSS tools that are good and widespread, and don't have some support like research funding, get co-opted. Maybe a non-profit company is the best way. But we've seen how that turns out if it actually takes off, like OpenAI.
- wg0 2y agoNobody deserves VS code for free. Actually nobody deserves anything for free. Alternative would be pay for bloated commercial IDEs. VS code is decent, all rounder, free, open enough to be forked. And people forget that it's marvel of engineering. Go look through code. That doesn't get produced for free. Microsoft or any company owes nothing for free to anyone whatsoever. This entitlement syndrome needs to be in check.
- Justsignedup 2y agoI paid for jetbrains stuff for many years because it was worth it. And compared to eclipses features et it was leagues above. That's worth money. Like I always say about open source. I'm skeptical about adapting frameworks without big money behind them... Because relying on the whims of random internet amazing engineer is a risk. MS will make money on vscode. Just like Google makes money on Chrome. Just not directly.
- grandma_tea 2y agoIt's tough because proprietary software also has risks. See the Unity license change fiasco. https://www.engadget.com/unity-apologizes-and-promises-to-change-its-controversial-game-install-fee-policy-082408455.html?guccounter=1 https://www.engadget.com/unity-apologizes-and-promises-to-ch...
- cobertos 2y agoTrue, slap a price on it. I'm sure people here get enough utility out of VSCode to pay for it. The problem is when the free offering is actually designed to ensnare you in a tarpit of legal liability and uncapped financial liability. Especially with a service like VSCode where it's not a single purchase and you rely on Microsoft indefinitely (through extensions and updates). But it's designed that way. There's no other option. They chose to not make it simple to avoid a single clean payment, and extract longer term money of ambiguous amount based on user resistance.
- speed_spread 2y agoA marvel of engineering, really? In find using bloated browser tech and napkin-designed language to build a barely functional IDE as "impressive" as building a mile-long pedestrian bridge using Popsicle sticks and chewing gum.
- armada651 2y ago> The source code has been released by Microsoft under the open-source MIT license, but the product available for download (Visual Studio Code) is licensed under this proprietary license. I used to consider releasing software under the MIT license to be more generous since there are no conditions other than attribution. However by now I can see that releasing under a copyleft is actually more generous than a permissive license since the copyleft conditions also binds the author of the software to continue releasing their code under an open-source license. Turns out Richard Stallman was right after all.
- jlokier 2y agoThe author of software (or generally the copyright holder) is not bound by the terms of their own license, so they can publish the same software and/or later versions under different licenses however they see fit. This applies equally if their own license is MIT or if it's GPL/copyleft. (From that point of view, Microsoft would be able to release VSCode as GPL while also shipping binaries under a proprietary license, if they wanted to.) Things get more complicated when they aren't really the authors because they have merged contributions from other authors, e.g. pull requests. Then what happens depends on the license used by the other authors for their contributions. Sometimes the contribution's license is implied, or legally unclear. To avoid problems, some diligent organisations require contributors to sign or confirm something to make it clearer, before they accept contributions to be merged.
- armada651 2y agoIn understand that, but if people license their work under an MIT license then there is nothing impeding whoever manages the repository to slap a new license on the code even if people already contributed to it. > To avoid problems, some diligent organisations require contributors to sign or confirm something to make it clearer, before they accept contributions to be merged. That's a very generous way of saying they're having people sign away their rights under a copy-left license.
- deleted 2y ago[deleted]
- movedx 2y agoIn light of this post, and ignoring Sublime Text as I’ve tried it and don’t like it, what commercial IDEs are worth looking at for a generalist like me who bounces between C, Python, Terraform, YAML, Markdown, and more? I’m on Linux.
- deleted 2y ago[deleted]
- joshstrange 2y agoJetBrains IDEA. It can do pretty much everything and has been my daily driver for almost a decade now.
- movedx 2y agoI was just looking at their products. Looks like IDEA is aimed at Java developers, but I assume that doesn’t prevent it being used for other languages?
- noworriesnate 2y agoSpecifically you should look at the JetBrains All Products Pack. That's what I have and I've used Pycharm, CLion, Datagrip and Rider extensively. I love being able to switch languages without having to learn a new interface, keyboard shortcuts, etc. You get a nice JetBrains Toolbox app to manage all your IDEs.
- joshstrange 2y agoAgreed. The price between just IDEA and the all products pack is not terribly different and I enjoy using IDEA and Datagrip. I've also played with a few other of their IDEs and it's nice to not have to learn anything new. That said, I do 99% of my work in IDEA since it can do pretty much everything.
- dagw 2y agoMy only major complaint about JetBrains is that they make me switch programs when switching languages. I have a license for CLion and PyCharm Pro, and while they're both great, the fact that I cannot 'import' all the features from one into the other is quite infuriating.
- BaculumMeumEst 2y agoDo you guys think Microsoft is pissed that Cursor exists? Do you think there are internal execs raging about the decision to open source VS Code because of it?
- diggan 2y agoThey're probably asking themselves how Meta/Facebook is able to misappropriate "Open Source" to mean something completely different, and how they can do so themselves now while still showing "Microsoft <3 Open Source" ads.
- spencerchubb 2y agoI can give you one data point. There is no way in hell my company would let us use cursor. Generative AI is viewed with a lot of skepticism, and we spent a long time testing out copilot before approving it for all developers to use. We use copilot because microsoft is so trusted and we use many microsoft products
- hu3 2y agoThey are probably relieved/glad that some player is helping them validate market for them.
- crabbone 2y agoWhen reading the article, I remembered the joke about a radiologist looking at the patient's CT and going: "Ooooh, this is good! And this is so good! Just perfect!" while the patient is in the room. The patient: "But, doctor, I don't feel good at all!" To which the radiologist answers: "It's soooo good none of these are my problems!" I don't use VSCode and never will. It's just an awful editor, regardless of who's peddling it. None of the things that are important to me are controlled or somehow touched by Microsoft. But, I'm undecided about what's the right thing to do here: if I dislike both Microsoft and VSCode being, essentially, a closed-source product sprinkled with open-source, do I side with people who want this piece of junk and fight to make it truly open-source or wait to see it inevitably die a fiery death?