12 ms·
Microsoft is introducing hidden APIs to VS Code only enabled for Copilot?
- dmart 2y agoHow dare they add undocumented APIs to a product they pay to develop and give away for free.
- deleted 2y ago[deleted]
- de6u99er 2y agoLloks like Microsoft is going back to it's old ways. I am not surprised tbh.
- rapind 2y agoIt worked out so well for them with the browser… oh wait.
- jampekka 2y agoIE had over 50% market share for over 10 years. It was likely a major factor for Windows holding the desktop OS monopoly.
- jimbob45 2y agoWhat's the harm here if the APIs are temporary and they don't have a history of elongating the lives of temporary APIs like this? They've stated the purpose of these "proposed APIs" and we have no evidence from the last decade to believe they'd renege on their stated goals.
- dartos 2y ago> What's the harm here if the APIs are temporary The “if” is carrying a lot of weight. It gives Microsoft a solid competitive edge and a form of vendor lock-in in their otherwise mostly open product. We don’t know that they’ll be temporary forever. > They've stated the purpose of these "proposed APIs" Just like how they said recall would not be a required feature, but is a dependency of the file explorer in the next version of windows? Microsoft will say whatever looks good for them, obviously. > last decade But we do from the last 11+ years ;) I’d always err on the side of not trusting giant monopolistic corporations with a history of garnering good will to cash in on it later. Especially when that company has been very aggressively inserting itself in nearly every JS projects dependency/software delivery pipelines. I gain nothing by trusting them, but I stand to lose my project’s independence from them.
- ndiddy 2y agoThe harm is that third-party developers aren't allowed to publish extensions that use "proposed APIs", but Copilot doesn't have to follow these rules because Microsoft both develops the extension and runs the Extension Marketplace website. Microsoft is therefore able to add functionality to their extension that third-party developers can only add by forking VS Code. VS Code forks lose access to the Extension Marketplace, and many Microsoft-published extensions (such as Pylance and LiveShare) will only run on official Microsoft builds of VS Code, not forks.
- dartos 2y agoGoing back? When did they stop?
- de6u99er 2y agoTrue!
- hggigg 2y agoThere was that bit a few years back where the HN folk saw Satya as the second coming of Microsoft and anything even slightly critical or suspicious of Microsoft was downvoted to oblivion as highly implausible. I think people are still coming down from that high. He's not the messiah, he's a naughty businessman! (Note: I shot my HN account then because the majority of the MS stuff on here was utterly intolerable for many of us who have been MS devs/users since day zero and have the mental scarring) Edit: remind me to post this when MS staff are still asleep next time...
- dartos 2y agoPeople on HN seem to be either very anti-corporatist or love to white knight big tech There’s no in between.
- hggigg 2y agoHey I'm right in the middle: I use a Mac and use open source software on it, while moaning how shitty both are.
- dartos 2y agoEnlightened enough to know that open source is good, but smart enough to realize that it’s a pain. I’ve embraced the pain and have been using Linux as my daily driver for like 5 years.
- hggigg 2y agoYeah not happening here. I am Adobe and Apple's bitch. I mean I'd really like to but the software I use just isn't there.
- rty32 2y agoI mean, Microsoft has been very clear about their business model of VSCode -- similar to Chromium, the base product is free and you can do whatever you want (and indeed there are lots of products reusing the core of VSCode), but extension marketplace/remote/GitHub Copilot are proprietary. It sounds like a fair deal to me -- Microsoft can't just do open source without expecting to get something in return. Now, coming back to private APIs, it's hard to know whether this is because Microsoft intentionally wants to keep competition out, or it is just hard to standardize/finalize APIs. I do know that VSCode development team takes extreme care when it comes to their APIs -- new features can take years before they are ready (most recenly coverage APIs, for example), and they don't want to release something when it's not ready, and I respect that. And to be fair, they have a number of "inline completion" APIs standardized as both VSCode APIs and LSP protocol (upcoming). I'm sure there is a lot to be desired, but it should be a nuanced discussion instead of simply "Microsoft bad". (I am a VSCode extension & LSP author, not affiliated with Microsoft at all)
- rcarmo 2y agoThis. LSP is a great example of something that also takes a while to flesh out because the problem space spans a lot (syntax, autocomplete, etc.)
- deleted 2y ago[deleted]
- radiojosh 2y agoDo you have any links or resources you could direct me toward that were more helpful than Microsoft's basic how-to pages for learning VS Code plugin development? I attempted to build a VS Code extension, but the attempt fizzled out. I managed to make some progress in creating the simplest of UI elements and populating them. I'm particularly interested in building a GUI-based editor of JSON / YAML where a user can select a value from a prepopulated dropdown menu, or validating a JSON / YAML file against a custom schema. Any help or advice you could provide would be appreciated!
- oigursh 2y agoEmbrace, extend, extinguish.
- Eikon 2y agoSeems pretty common that a platforms owner would actually try new apis with their own stuff. What better way to get primary real world usage before stabilizing?
- spankalee 2y agoThis is the real answer to this. They know they can coordinate with the Copilot team to change or remove API usage much quicker than third party extensions. I bet they'd love if there were a way to have trusted testers that they could _force_ to make timely updates like they likely can with Copilot. Maybe they should look into Chrome's Origin Trial system and make time-limited API tokens so that extension developers know that features relying on experimental APIs will break, even if the API itself doesn't. That seems to keep causal usage at bay and make sure that trial developers stay on top of things.
- torginus 2y agoThis, there are APIs in Windows today, that were added temporarily in one of the early betas of Windows 95 as a stopgap measure. By the time MS got around to replacing them with proper versions, they found that big applications were already using them.
- pzmarzly 2y agoHuh, I assumed that MS Live Share and GH Copilot extensions were already using some secret APIs in the past, since I never saw any open source extension being able to do what they do. I guess I was wrong before, and this only starts being the case now?
- tristan957 2y agoMicrosoft VSCode, as far as I know, is not purely what is published under https://github.com/microsoft/vscode https://github.com/microsoft/vscode.
- rty32 2y agoVery interestingly, just yesterday I discovered that VSCode has a set of APIs for adding SSH tunneling, and under normal circumstances you must launch vscode with special flags to be able to use them. Somehow their built-in JavaScript debugging extension can use these APIs without any issues. https://github.com/microsoft/vscode/blob/main/src/vscode-dts/vscode.proposed.tunnels.d.ts https://github.com/microsoft/vscode/blob/main/src/vscode-dts... And you can hardly find any public information about these APIs. Well, unless someone asks -- As of 2 years ago, they didn't have any plans to "finalize" these APIs, i.e. make them public. You are advised to find other workarounds (which do work). https://github.com/microsoft/vscode-discussions/discussions/174 https://github.com/microsoft/vscode-discussions/discussions/... This is much less "harmful" than Copilot though, I guess.
- ghuntley 2y ago[flagged]
- Etheryte 2y agoI have discovered a truly marvelous reason for them being private, which this margin is too narrow to contain [0]. [0] https://en.wikipedia.org/wiki/Fermat%27s_Last_Theorem#Fermat's_conjecture https://en.wikipedia.org/wiki/Fermat%27s_Last_Theorem#Fermat...
- jdthedisciple 2y agoI see what you did there (Y)
- klabb3 2y agoYeah I love the paternalistic “it’s for your own safety” arguments. > Why did my payment not go through? > Why was my comment removed? > Why is my binary flagged as malware? > Why did my app fail review? > Why is my 10yo account suspended? The answer of yesteryear was “we’d love to tell you but then we’d help the bad guys”. The answer today is “we don’t even know because we replaced the human moderators with a black box AI”.
- bitwize 2y agoThere are just certain technologies my brain says "fuck, no" to. GNOME. The Great Banality Laser (whose official name was once Twitter). Visual Studio Code. The fullness of time usually proves my brain's initial impressions right, as it seems to be doing now with Visual Studio Code. I can still remember the monthly paroxysm of bliss that radiated throughout Hackernews, regular as clockwork, timed with Microsoft's monthly VS Code drops. Glad to see it enter its trough of disillusionment, at least on Hackernews.
- scotty79 2y agoI was with you on the first two. VS Code is the best developer experience I had since Delphi and Kate. I don't care for it being in the news though.
- postalrat 2y agoSent from my iPhone
- nilsherzig 2y agoPlease explain Gnome, im a happy user after some years of i3 and hyprland. Gnome just works ^tm.
- bitwize 2y agoBack in the day I looked at a GNOME 1.0 binary and saw it had like 60 library dependencies. Aint_nobody_got_time_for_that.mov Given the utter malarkey that's transpired since with GNOME, including the crappy UI revamps, the slowness (in the Windows 7 days, it was literally better just to use Windows on aging hardware), and the arrogant devs reinventing Windows 8 poorly and not listening to what users actually want, nor allowing users to make changes, I've been VERY happy keeping my environment GNOME-free.
- frenchie4111 2y agoEveryone is reading this as intentional anti-competitive practices. While that may be true, isn't another reasonable explanation that the Copilot development team is moving as fast as they can and these sorts of workarounds are being forced through in the name of team velocity? It takes a lot more time/energy to push public APIs and it's probably a very different team than the team developing the copilot extension. Seems a bit like a "don't attribute to malice..." kind of moment to me
- gavinray 2y agoSeems like the only sensible comment in this thread so far. Here's what I imagine it's like working on the Copilot team: > Mgmt: "We need this feature, and we need in 2 weeks." > Devs: "That feature is not technically possible." > Mgmt: "Well, figure out a way to make it possible. That's _your_ problem."
- rcarmo 2y agoThe few people I know in the Copilot team(s) (not necessarily VS Code) are laser focused on prioritizing features based on customer demand, not top-down guidance :)
- LudwigNagasena 2y agoWho decides what customer demands? Is it a free for all environment where people just push whatever they want into the trunk?
- zooq_ai 2y ago[dead]
- milkytron 2y agoSounds like when Slack started taking marketshare from Skype for Business and they pushed out Teams as fast as possible.
- immibis 2y ago
- sub7 2y agoI had to block all network traffic from VSCode that shit is spyware out of the box. Maybe the vi crew is actually onto something.
- hggigg 2y agovi crew here. We had dark mode since before it was fashionable.
- 0cf8612b2e1e 2y agoI am this close to running VSCode inside a VM. The plugins have seemingly no sandboxing. Microsoft has repeatedly demonstrated they view my analytics as their right. Why should I trust this to access my home?
- isatty 2y agovi/emacs crew was never wrong. Imagine willingly using a Microsoft product.
- rcarmo 2y agoI started with emacs back in the VT220 days (we didn't have tmux/screen in VAXen, nor in Ultrix, and the mail reader was great), moved to vim in the Slackware years, and now switch between VS Code and nvim on my Mac without any qualms. Sometimes I even run nvim inside the VS Code terminal for quick edits.
- wiz21c 2y agoMicrosoft gives a product for free. It is free to add whatever features it wants in it. No? (and that's why I use emacs...)
- troyvit 2y agoExactly. I'm not sure why I clicked on this article given that [Giant Corp] introducing hidden [Anything] into [Free Product] isn't exactly a surprise is it?
- zb3 2y agoBut we'll be better off if we pressure them not to do that.
- epolanski 2y agoPlenty of companies thrive on the forks, stackblitz, cursor, gitpod and many others. But you can't expect from Microsoft to also open and share every single tool for vsc itself, you're still free to implement it though.
- rcarmo 2y agoI honestly don't see the issue here (Full disclosure: I work for Microsoft, but in professional services, not in product - and nevertheless fully expect to be downvoted to oblivion). If these aren't finished, that most likely means that they still haven't stabilized enough to go through the full support and release pipeline--that usually means documenting them, publishing a couple of reference development samples, doing a public announcement, i.e., the full nine yards of fostering adoption of the product feature. Which you typically will only do once the "preview" is stable and flexible enough to pass muster. I mean, it's not as if there isn't a huge API surface for the editor (the sample extensions repo is huge - https://github.com/microsoft/vscode-extension-samples https://github.com/microsoft/vscode-extension-samples), and there are already samples out there to extend the Copilot functionality: https://github.com/joyceerhl/vscode-mssql-chat https://github.com/joyceerhl/vscode-mssql-chat (I wrote my own based off this one for a personal project) So maybe consider that those things just take time to build out fully before assuming the worst?
- rcarmo 2y agoYep, downvoted to oblivion alright. Took all of five minutes, and doesn't reflect at all well on radical HN folk's ability to empathize with people working hard to ship actual product.
- Sakos 2y agoYou working hard doesn't change the facts. Velocity doesn't excuse anti-competitive behavior. I would've thought the DoJ case against Microsoft would've taught you that you can't just do whatever you want because it's convenient for you, especially when it has an effect on your competitors. This isn't about feelings. This is about a multi-billion dollar corporation doing whatever it wants, yet again, to the detriment of other players in the market. Empathy doesn't have a place here. It really is tiring to see people who earn hundreds of thousands a year crying about a lack of empathy. What a joke.
- rcarmo 2y agoWhy are you making this personal? Do you know me? Do you know where I live, or how much I really earn? (Spoilers: One of the ass-ends of Europe, not that much - _certainly_ not anywhere near what my US counterparts earn, even "adjusted" to local terms) Or do you hate Microsoft so much that you think that frees you from, you know, having basic human decency? I suppose you've found this to be great excuse to go on a crusade and avoid having a civil discussion with another person (and, to be honest, insulting them in the process). Bravo.
- gigel82 2y ago"Hidden APIs" is clickbait; VS Code is open source. Unless they're saying the published VS Code binaries are somehow altered to offer the APIs that are not otherwise available in the open source repository (which is not the case).
- tristan957 2y agoVSCode is not open source. Code-OSS is open source and is what is published at https://github.com/microsoft/vscode https://github.com/microsoft/vscode. VSCode is a proprietary application you download from Microsoft that is a distribution of Code-OSS with Microsoft branding and presumably some proprietary changes.
- nextworddev 2y agoGiven how Cursor etc built a direct competitor business on top of VSCode, understandable
- deleted 2y ago[deleted]
- Jcampuzano2 2y agoI really don't get why people are mad about this. I get it, people don't like MS but theres really no surprises here, nor is it really all that bad. They put time, effort and money into developing VSCode. Its open source so if you want to use these API's you can in a forked version. And of course if you're developing something thats free for everyone to use, and its not forcing you to use it, I don't see an issue with using private API's. And while some make the alegory to IE its not the same since its not pre-installed on every machine, nor are they forcing you to use it. So while yes they have a lot of market share, they have nothing stopping you from forking it yourself or just using a different editor.
- wincy 2y agoBecause people are concerned that the embrace, extend, extinguish of Microsoft will rear its ugly head and we’ll all have been bamboozled again to use closed source software.
- dirkc 2y agoPeople have been bamboozled, but maybe not the way you're implying. Microsoft is only doing open source since it proved to be an extremely useful way of doing things, not because they turned into an altruistic company that started caring more about making the world a better place rather than making money.
- prewett 2y agoI've not been unable to understand why people trust a corporation with 20 years of demonstrable embrace, extend, extinguish and other tactics, and with not even a word of repentance or even contrition, to not do this again. I think we should be assuming it's in the corporate culture to do this again unless they at the very least publicly say they intend to do otherwise. (Of course, talk is cheap, but if you want to rebuild trust, it's the first step.) Although I pretty much disagree with their entire design value system even on the technical and UI levels (especially the latter), and can't see why anyone puts up with Windows. But clearly many people do, so obviously I'm missing something.
- _9hey 2y ago[flagged]
- p1necone 2y agoIt's felt for a long time to me that MS has been slowly boiling the frog with VSCode - injecting little bits of proprietary/non open source functionality at a time. I want to switch to something else but the community at large for the languages I develop in is pretty centered on VS code (Rust and Typescript mostly), and it's a really good editor. Obviously not helped by Typescript being stewarded by MS too.
- replete 2y agoVSCodium is VSCode without the Microsoft EULA and extra stuff. Most extensions are available in the app, others through openvsx.org
- Gazoche 2y agoCompatibility can be iffy though. I eventually switched back to the official VSCode application because I was fed up that extensions kept breaking randomly. I'm worried that Microsoft is succeeding at making the semi-proprietary version of VSCode the only viable option, while keeping the OSS forks as second-class citizens at best.
- replete 2y agoHow common is this? I've used for years and haven't encountered plugins breaking on me.
- Gazoche 2y agoI don't know, it's just my personal experience. I used the "OSS Code" fork for a few years on Archlinux but Python intellisense kept breaking when I needed it the most, often with one cryptic error or another. Sometimes I could fix it by switching to VSCodium, installing/uninstalling the `code-features` package, or some random config tweak, but at some point I just got tired of fighting the editor instead of coding.
- mr90210 2y agoWebstorm and RustRover by JetBrains. I pay for Golang, it took me some time to acknowledge that an IDE is slower than a lightweight code editor such as VSCode, but it feels great to use a tool entirely crafted for a language.
- quyleanh 2y agoI don’t see any problem here. They spend money, effort, time to develop their products. Why do they need to give that products for free to everyone, or even their competitors? Others can choose to use or not use vscode. If they concern about the telemetry, build themselves or use other code editor then.
- deleted 2y ago[deleted]
- vanchor3 2y ago> Why do they need to give that products for free to everyone, or even their competitors? It is "free". Anyone can make an extension using the API features. However they do not allow anyone other than themselves to bring it to market (i.e. the official extension marketplace).
- lacker 2y agoAfter doing some VS Code extension development, I don't really understand what this could enable that isn't already possible. You can run arbitrary code on the client side from a VS Code extension, you can run a full web application inside the VS Code UI, you can read and change developers' files in any way you want. What is Cursor doing that they couldn't do as an extension?
- swyx 2y agohave you tried their cmd+k and Composer experiences? those are new ui paradigms not implementable in extension. native integration that "feels" third party is not going to stand out.
- danpalmer 2y agoWhat is this Cmd+K / Composer experience? For me Cmd+K is the first hotkey in the multi-key bindings that I believe ship by default. Searching for Composer just suggests the PHP Composer extension that I assume isn't what you mean.
- swyx 2y agosearch cursor composer
- astroid 2y agoThanks, I just found this example and I will definitely be tring this out: https://prototypr.io/post/cursor-composer-cmdi https://prototypr.io/post/cursor-composer-cmdi (Not my site or any affiliation, but I guy uses Curser Composer to build a DuoLingo clone pretty quickly with prompt-based editing only) I'm starting to check this out now: https://cursor.directory/learn https://cursor.directory/learn
- lacker 2y agoI have tried those, but they seemed like they were just using standard VS Code UI elements. You have text input boxes, decorations of existing text, and additional panels. I guess Cursor is modifying the UI more than the text decoration methods in VS Code allow?
- dagaci 2y agoWhat dirty, dastardly and deviously, deceptive deceiving and clearly damnable practice of Microsoft yet again.
- sporedro 2y agoMicrosoft seems to have most fooled with vscode.. The only other IDE’s worth touching imo are Jetbrains and they have most likely been hit by the fact vscode costs $0 and is “good enough”. Microsoft has already made it difficulty to compete with their “free” by giving away enough and locking down parts that would allow competition to easily fork it (Python LSP, Extensions marketplace). Vim and Emacs seem to be thriving but I wouldn’t call them drop in replacements.
- afandian 2y agoThis seems like a good time to mention Zed. Recent discussion: https://news.ycombinator.com/item?id=40928893 https://news.ycombinator.com/item?id=40928893
- canucker2016 2y agoFrom some members of the Atom team, a code editor before VSCode showed up. Electron sprouted from the Atom project. see https://en.wikipedia.org/wiki/Atom_editor https://en.wikipedia.org/wiki/Atom_editor
- grigio 2y agoEEE Embrace Extend Extinguish 2024 version
- deleted 2y ago[deleted]
- rvz 2y agoExtend to Extinguish - Round 3. [0][1] VS Code + GitHub + OpenAI exclusivity deals + Copilot = The best tools available for close to free. To use the latest features they will only be found on MS branded tools like the ones above. With the competition getting eliminated with total MS coverage of the developer ecosystem with almost everyone sitting on GitHub using VSCode and OpenAI. Monopoly with close to no competition all without any regulatory scrutiny has been achieved internally. With the extending being the extinguish. [0] https://news.ycombinator.com/item?id=38280513 https://news.ycombinator.com/item?id=38280513 [1] https://news.ycombinator.com/item?id=34612959 https://news.ycombinator.com/item?id=34612959
- veblen 2y agoHas VS Code dominated the code editor market? If not, is this a prerequisite for discussing anti-competitive issues?
- zokier 2y agoIt definitely is very popular. Domination depends on your viewpoint. https://survey.stackoverflow.co/2024/technology/#1-integrated-development-environment https://survey.stackoverflow.co/2024/technology/#1-integrate...
- epolanski 2y agoI don't necessarily see anything particularly malicious to be honest. Before you introduce public APIs you need a use case and someone to spearhead them and copilot is doing that. As for Microsoft not allowing installs of stuff like live share on other forks I guess it is because they are seen as different products and not part of the vsc codebase itself. I would understand if extension authors would complain about not being able to access the same apis (might be the case) but at the end of the day they can still fork and do whatever they prefer. Lots of companies out there thrive on forking vsc, from gitpod, stackblitz, cursor and many others. But they can't possibly expect to have all proprietary plugins too. What other code editor has ever been so impactful and open in the last decades?
- ekvintroj 2y agoThere are comments questioning whether this is a malicious practice or not, I remind you that we are talking about Microsoft, they have always taken the ‘Embrace, extend, and extinguish’ approach.
- neilv 2y agoWordPerfect and Lotus 1-2-3 have entered the chat.
- vouaobrasil 2y agoI am thinking of uninstalling VSCode and using something else because they are too invested in AI.
- insane_dreamer 2y agoNot sure why this is a problem. VS Code doesn't have a lock on market share for IDEs the way say Google does on search. There are plenty of other options either with or without CoPilot.
- htk 2y agoTo everyone talking about EEE, what can they extinguish here, code editors? If they get too annoying, like really forcing copilot or something like that, there are several other editors to choose from. Until this day comes I'm having a positive experience with VSC.
- datavirtue 2y agoThe horror!
- favflam 2y agoLadies and gentlemen, I present to you the miracle called Lazyvim (terminal based IDE). Once you go lazy, you don’t come back. I can’t stand vs code now. The mouse even works in Lazyvim.
- _imnothere 2y agoI suppose this is somewhat related to previous discussion[1], Microsoft has shown it's true color for multiple times, why even bother trusting them? [1]: https://news.ycombinator.com/item?id=41691577 https://news.ycombinator.com/item?id=41691577
- beretguy 2y agoI assume it's not a problem if you use vscode on Linux? (I personally run vscodium on Linux).