Hacker News new | past | comments | ask | show | jobs | submit login
Vscode.dev (visualstudio.com)
803 points by connor4312 41 days ago | hide | past | favorite | 260 comments

Very cool stuff.

I remember being at Build 2018 and asking the PM on the Live Share team if they had any plans to bring VS Code to the browser. Maybe do managed environments for labs and companies (what GitHub code spaces now is), would be great for education. Lots of students (especially non-CS nerds, like the physics kids with a CS requirement) find environment setup to be one of the hardest parts. He seemed to think I was a piece of shit for not ‘getting’ what Live Share was all about and how those other offerings (code spaces, running in the browser without install) were bad ideas not worth considering.

I think the moral of the story is, if you’re a PM, don’t treat your most enthusiastic customers like shit. Or maybe do, because it won’t actually have business impact.

I'm really sorry to hear you had this experience :( I'm not sure who you spoke with, but this perspective definitely isn't representative of the team and/or how I'd ever want to see us talk with developers.

I'm actually a PM for both Live Share, Codespaces, and some of our education-related experiences (e.g. the GitHub Classroom extension for VS Code). A web client for collaboration, with zero-install/onboarding, has always been our north star, and so your intuition/feedback was 100% right back in 2018.

Now that we have Codespaces, vscode.dev/github.dev, and Live Share support for the web, we're actually looking to further optimize our support for education, since we believe we have a lot to offer. In fact, I'd love to connect and hear your thoughts, to make sure we're going in the right direction. If you'd be interested in letting me make up for that terrible conversation in 2018, you can reach me at joncart@microsoft.com. Thanks for sharing this feedback, and letting us know where we can do better.

Hey! I'm curious how vscode.dev fits in with GitHub Codespaces. Are they competing products, or is Codespaces only a superset of the other?

Codespaces provides a backend/server so you can install plugins and run build scripts. You can't do that with this site.

On every HN thread I count the minutes until it turns into a personal rant against some big company, and it never disappoints.

And while those stories are interesting to hear, I don’t know why they so often make it to the top or near it. Like is one PM being bad at listening to user feedback really the most interesting topic of discussion for this post?

The truth is most people lack the skills required to understand and comment of most things posted here. They also have a "need" to get involved in discussions, thus they cling to what they know/understand.

This is why you get these anecdotes upvoted, this is why you get "options" on most "Show HN" threads.

Well .. yes actually. VS in the browser is not that amazing - we already got it on https://github.dev a month ago

codesandbox.io had VSCode running in the browser in March 2019. https://codesandbox.io/post/announcing-codesandbox-v3

They're almost as tedious as

"I want to share an anecdote about me that is tangentially related to the article. I'm not going to comment on the article, but the title reminded me of something that I thought of once, or maybe something that happened to me. I'm pretty smart so I'll share it with my fellow smart people here now. It's about me.

Back in 2003 I was running an FTP server from my garage. It was running on one of the new Slackware BSD boxes that were popular at the time. We didn't have many users but one that we did have was Jamie Zawinski - actually he was my roommate at the time.

We used to spend most evenings coming up with new compression algorithms and practicing Vim exit sequences and ..."

Yeah anyway I'm not a HN comment generator AI but it's crazy how many comments here are just "let me tell you a story about me".

Have you noticed that you just described “conversation”?

That is what it looks like when people get together and talk to each other. Lots of us are here for that, and it seems like a pretty natural thing to do. The articles do a nice job of suggesting topics to talk about.

It reminds me of conversations I used to have with an autistic guy who didn't really get conversational cues. He would just come out with facts that didn't at all fit the flow of the conversation.

In any case I don't think the point of the articles is just to be a conversation starter.

the thing i enjoy about watching that in HN vs reddit or some other ranty site is that at least on HN the actual people being ranted AT will often show up.

It happens on twitter too apparently but then I would have to use twitter.

Have you considered bird watching or needlepoint?

As a CS student we used Cloud9 IDE for developing and code sharing in assignments -- we didn't know what Git was and using it didn't become a requirement until later semesters. "Don't touch anything, let me compile first" was a common utterance.

Haven't looked into it for a while, apparently it was bought by Amazon and you need an AWS account? Back then it was just open the site and you're coding

If you really want to use something like that, Harvard's CS50 has made it available freely (under their own wrapper of tools): https://ide.cs50.io

Speaking of education/CS50: we (the Codespaces/Live Share team) have actually been very excited/privileged to collaborate with the amazing CS50 team, as they've built their student experience on top of VS Code/Codespaces (http://code.cs50.io). Lowering the barrier of entry for learners, and supporting student success, is a huge goal of ours, and so I'm looking forward to getting our tools in the hands of more developers, and iterating based on feedback.

This is really cool

Very cool of Harvard to keep c9 alive, I have fond memory of it. Having said, vscode is just superior in everyway.

The open source version is still available as c9sdk on GH, some docker images are available on dockerhub

Just a side note... as a CS nerd and a software engineer with 15+ years of professional experience, environment setup is still one of the hardest parts for me, especially if I'm picking up a new tech stack.

It's tedious because you'll always run into an error even if following documentation. Automated dev environment setup ftw

The PM on the live share feature only gets a promotion if they can prove the value and engagement of their feature. Sadly this leads to very close-minded and hostile attitudes at different levels in the product. You want to talk to the group PM for the VS code product to pitch an idea about new features (but you aren't going to see this person spending time at a trade show booth).

It seems like this person had the wrong personality to man a conference booth.

Being a PM with a closed mind doesn’t qualify you. Seeing conferences as opportunities to learn new ideas or even hearing from existing customers can bring a lot of value.

Heya, Geoff from Gitpod here.

> Maybe do managed environments for labs and companies (what GitHub code spaces now is), would be great for education.

I agree. There is an entire class of problems that attendees and educators continue to put up with when they shouldn’t need to because these concerns can be removed through automation. I dumped my thoughts about this over at https://www.gitpod.io/blog/workshops-as-code

> "Lots of students (especially non-CS nerds, like the physics kids with a CS requirement) find environment setup to be one of the hardest parts."

Advice I received early that has stuck with me (and that I have found to be true): "Environment setup is the hardest part".

This was true for me in school and has remained true through multiple professional teams.

And always assume when a customer tells you something like that that YOU are the one that doesn't get it.

Otherwise, you might be the one that gets fired, probably like this guy.

We built lab.computer for this. Root access, state save, sharing, auto/manual grading. We would love to get some feedback. Everyone using it seems to love it.

This seems really cool, and seems like it took a lot of man hours to put together.

However, I'm not sure who this is for. Downloading and installing an application is not a particularly big ask for the type of people who use VSCode. The browser version will always be a compromised experience, given the inherent limitations of browser applications. Even if it works 99% of the time, that 1% would add enough friction to make it more of a hassle then it's worth.

The post gave some use cases involving hardware that can't easily run Desktop VSCode (e.g. iPads and Chromebooks). I just don't see that being much of a use case though, except in desperate circumstances where a more capable dev machine isn't available.

If there are some use cases I'm missing, I'd love to hear about them! This is a pretty new concept, and I certainly don't know how everyone likes to code. But from my perspective, I struggle to see any situation where someone would choose to use this, and few situations where someone would have to.

Surely shoving VSCode into a tab is just step 1. Think about what this could do, that your local app couldn't.

Off the top of my head: Complete remote state. Open vscode.dev on your desktop, work for a while. Then open vscode.dev on your Macbook Air later, and be in _exactly_ the same state. I don't mean, the same project, I mean the text cursor is at the same position in the same file with the same set of tabs open.

Need a GPU for some CUDA work? The only question is how many GPU cores would you like.

Could your next engineering hire's onboarding guide be: open vscode.dev/company/workspace, click the "run all tests" button. OK, you're done, please pick the topmost "ready to start" ticket from the queue.

This already exists with github codespaces. https://github.com/features/codespaces

Sadly still limited to teams or enterprise users. I hope they open it up to individual contributors soon.

I've used Gitpod (https://www.gitpod.io/) for this same scenario and it's available for anyone, way cheaper than Github Codespaces (possibly free depending on your usage), and it works really, really well. It felt like coding in the future.

We're starting to set up Gitpod for LAMP apps (e.g. Drupal), and it seems to work well with docker-in-docker running each part of that stack in their respective containers.

Geoff from Gitpod here. Come join https://www.gitpod.io/chat <3

I have been a very happy user of VSCode Remote - SSH. I have a VM in AWS with a GPU that I SSH into using VSCode, and I can use VSCode as if I were running it locally, with all of the computer power of a big server. Would highly recommend!

Geoff here from Gitpod. I have a bare metal machine that I remote into and use for supportive tasks such as (in a couple moments) exploring the TruNAS marketplace ecosystem. My primary computer these days is an iPad - see https://ghuntley.com/anywhere

There are big changes happening in development ecosystem which will happen faster then people realize. Soon more than 80% of the IDE market will have built-in functionality to connect to developer environments running in the cloud, while keeping the editing experience you are used to from your Desktop application in a very short time and Gitpod’s IDE architect went into detail about this over at http://gitpod.io/blog/cloud-ide-history

But this is already far better if you use code server [1] because you get your extensions/compilers/etc. running on the same host

This particular implementation (opening local files via browser) sounds rather useless.

[1] https://github.com/cdr/code-server

Saving state sounds pretty awesome indeed, but does it really work like that? From the blog post it sounded like it is opening files on the local filesystem.

I look at this as an opportunity for beginners to get started. Makecode does a good job for kids. But at some point all the current languages require you to install something or get an IDE going. Having the ability to do everything in the browser with little setup on an inexpensive Chromebook can go a long way for a beginner.

>However, I'm not sure who this is for. Downloading and installing an application is not a particularly big ask for the type of people who use VSCode

It's like how nerdy types could easily slap together their own Dropbox, with rsync and duct tape (as per the famous comment), but most didn't - plus the world is not just full of types who'd do it. And then MS can start adding all kinds of collaboration tools built in, from pair coding to bug tracking, time tracking and so on.

I can imagine an enterprise giving devs just this + something like local/Cloud VPS/CI/CD environment to work in. Immediately reproducible, no hassle, secure, and so on.

>The browser version will always be a compromised experience, given the inherent limitation

Well, offline VSCode is a glorified browser as well.

"I can imagine an enterprise giving devs just this + something like local/Cloud VPS/CI/CD environment to work in."

That sounds horrible.

It's really freeing when coupled with something like Gitpod or CodeSpaces. You join a new project and you have ZERO setup to do on your own. You can open up a new branch and start working in seconds. I don't have to worry about whether my computer has enough memory to keep up with Docker, if it's fast enough for this new project, if I have to install version managers to separate runtimes for each project (rbenv, pyenv, nvm, etc).

To perform experiments it's even better. I have multiple directories with sample/initial projects from many languages where I was just feeling out a new framework or library or concept. Then months pass and I can't run them again because the specific dependency is no longer installed on my laptop. Now I can create these new study projects and know that it'll run in seconds when I get back to it.

Plus not all of us can work from highly performant workplace-provided workstations. I have just my laptop to work with. Imagine running Docker and Chrome and Spotify and maybe macOS decided that was the right time to hog my disk and do file indexing while I'm running tests...it's a hassle I'm glad to be rid of. I'd rather a company get me a Gitpod/Codespace and I can separate things cleanly.

That is how many of us used to work on UNIX and similar timesharing OSes.

The cloud + browser is back to the future.

Brings back sweet memories of Multics[0], which predated Unix by quite a bit:

[0] https://en.wikipedia.org/wiki/Multics

My first experience with such setup was the DG/UX at the university campus, where we had a mix of classical green/ambar phosphor terminals, and a couple of X-Windows thin clients from IBM to connect to it.

Regarding Multics, it was a failure only for Bell Labs themselves, as the project kept going and had still a couple of years for itself.


That makes a lot of sense. Thanks for the insight.

>Well, offline VSCode is a glorified browser as well.

Not really, it may use electron for the front end, but a huge amount of what makes vscode useful and fast is the native binaries that power all of its functionality.

What are those native binaries? I know that VSCode ships with ripgrep, but that's the limit of my knowledge. Those binaries probably could be compiled to WASM to make VSCode fully run in a browser too.

The Language Servers that power all of the intellisense and syntax highlighting and stuff are all native code. As are the compilers and everything that make VSCode more than just a text editor.

I think the typescript compiler and language service are implemented in typescript and compiled to JavaScript.

And none of them require Electron, because they run out of process.

well, the browser is not going to provide them.

The server backend will, and this is also a way to run VSCode on system browser without Electron bloat.

Good points, you still have to rely on an OS for all that stuff.

Language servers for any non JavaScript language? Python, rust, Go, C++, and many more.

Additionally the ability to say.. start a web server and run it? The ability to run the actual generated binaries from any of those other languages?

>Additionally the ability to say.. start a web server and run it? The ability to run the actual generated binaries from any of those other languages?

You could trivially had those with VSCode in the browser. They just run on a remote build/CI/CD environment.

> It's like how nerdy types could easily slap together their own Dropbox

Let's be honest, setting up and maintaining your dropbox clone, versus installing one executable once, are not the same kind of "easy".

> And then MS can start adding all kinds of collaboration tools built in, from pair coding to bug tracking, time tracking and so on.

But they can do that just as easily today with the vscode app. The fact that this runs in your browser does not help (or hinder) at all: As you said, offline VSCode is just a glorified browser.

> I can imagine an enterprise giving devs just this

presumably they would have to give you a laptop to access it, and any laptop that can run it in the browser can run it offline, this is 99% the same codebase.

Overall I also don't understand where this fits between offline VSCode and Codespaces. Codespaces makes sense because you don't even have to clone your code, and the compute/build happens elsewhere. Plus collaborative features can be added with no hassle because authentication is already baked in.

But this seems like it brings 0 value over offline, except skipping a 30 seconds install, once.

>But they can do that just as easily today with the vscode app. The fact that this runs in your browser does not help (or hinder) at all: As you said, offline VSCode is just a glorified browser.

On the contrary, it does help a lot. Offline VSCode might be just a glorified broswer, but web VSCode will hook automatically with the vendors development/build/code repo backends. And you could have the appropriate environment (eg. a linux version x, with y libs, and z servers running) per project, available everywhere you go with no setup of your own.

>presumably they would have to give you a laptop to access it, and any laptop that can run it in the browser can run it offline, this is 99% the same codebase.

Yes, and then you can install this or that, diverge from the common environment, and so on. And you have to setup all of those, even if it's just some docker instance running locally or some cloud stuff you access.

With the bundled web-vscode+cloud-backend, you wont have to.

>Codespaces makes sense because you don't even have to clone your code, and the compute/build happens elsewhere. Plus collaborative features can be added with no hassle because authentication is already baked in.

Codespaces is the whole idea behind this too. In other words, this is just a component of codespaces / a codespaces type deal.

> web VSCode will hook automatically with the vendors development/build/code repo backends. And you could have the appropriate environment (eg. a linux version x, with y libs, and z servers running) per project, available everywhere you go with no setup of your own.

But again, that is codespaces. They have rolled this out months ago, and it does exactly what you are talking about, with vscode in the web and all. And I agree that it makes sense.

Vscode.dev looks like it could have been an early prototype of codespaces, with 10% of the features. So I still don't understand why this is coming out after codespaces is already in production.

> Well, offline VSCode is a glorified browser as well.

It's the opposite, you download an OS that runs VSCode. That OS is a web browser. It's just that it's an OS that runs on other OSes.

>That OS is a web browser.

The key point os "glorified browser" being "you still run non-natively in a sandbox, whether it is JS or web assembly, and you still call the DOM for drawing".

Ubuntu is my hypervisor.

I use a mixture of Gitpod, GitHub Codespaces and Proxmox. https://ghuntley.com/anywhere

Why bother with all of that when you could just ssh (nee telnet), remote X or VNC sessions to a server?

Apparently current generation never worked in classical UNIX development environments.

Not to mention corporate rules.

I teach coding to new programmers, in particular kids, and every step is a pain. In particular, since we had to go fully remote it's really hard to even get people started.

Anything where I can just say "go to this website, start typing python/javascript, see cool stuff happen" is cool.

Teaching code is hard enough, anything that makes the process easier, especially at the start, is greatly welcome.

Hey, Geoff from Gitpod here. I agree! Check out https://gitpod.io/blog/workshops-as-code


"This simple gateway to the local machine quickly opens some interesting scenarios for using VS Code for the Web as a zero-installation local development tool, such as:

* Local file viewing and editing. Quickly take notes (and preview!) in Markdown. Even if you are on a restricted machine where you cannot install the full VS Code, you may still be able to use vscode.dev to view and edit local files.

* Build client-side HTML, JavaScript, and CSS applications in conjunction with the browser tools for debugging.

* Edit your code on lower powered machines like Chromebooks, where you can't (easily) install VS Code.

* Develop on your iPad. You can upload/download files (and even store them in the cloud using the Files app), as well as open repositories remotely with the built-in GitHub Repositories extension."

Also various interesting URLs are now possible:

"For example, change https://github.com/microsoft/vscode to 'https://vscode.dev/github.com/Microsoft/vscode'.

For Azure Repos, do the same. Change https://dev.azure.com/… to 'https://vscode.dev/dev.azure.com /…'."

"As you can see, vscode.dev URLs are a powerful way for us to deliver new, lightweight experiences. Another example is that Live Share guest sessions will also be available in the browser through the https://vscode.dev/liveshare URL. The sessionId will be passed to the extension to make joining a seamless experience."

> Local file viewing and editing. Quickly take notes (and preview!) in Markdown. Even if you are on a restricted machine where you cannot install the full VS Code, you may still be able to use vscode.dev to view and edit local files.

If the sysadmin has blocked install of VSCode for security reason, I would also expect (s)he also blocked access to the special API that gives access to local files from browser.

Your solutions are to problems that a decent developer doesn't accept anyway.

Working on locked down machine where you are not allowed to have visual code? Seriously?

Working on a chromebook? Why?

Sorry to be negative but I feel sometimes you tech guys get excited about solutions to problems that doesn't actually exist in the real world.

> about solutions to problems that doesn't actually exist in the real world.

Problems that don't exist, or that you personally don't have?

Why is enabling development on a Chromebook a bad thing? You ask "Why?", but it seems a more reasonable question to me is: "Why not?" This seems to pull one of the bricks away from "why not?" for working on a Chromebook. I don't see why that's a bad thing.

This "decent developer" thing sounds a bit gatekeepy - this solution isn't here to replace a fancy IDE on a MacBook Pro, it's here to help make coding easier to beginners or on shitty machines. I'd have loved to use this in high school/college instead of relying on the IDEs already installed in the lab.

It's entirely gatekeepy. We should be doing everything we can to encourage development where people are at, not trying to say that unless you do it a certain way (which costs a lot of money for a student, or someone in a developing country) you're not a "decent developer".

Plus there are more than enough "dark matter" developers making an otherwise good living at Fortune Xty companies that are afraid of technology and love micro-management and require all software to install to go through 6 month+ review processes. I've known some fantastic developers that will put up with that (and more), code in Notepad and Perforce if they have to, so long as they make a living wage and can clock out directly at 4:59pm every day. (In some of those cases there is maybe hope for them that getting a personal internet access firewall exception for vscode.dev might only be one form and a 30 minute review versus that 6 month+ process to get VS Code installed properly. I appreciate that it may be a nice new option for them by existing.)

It's not a lifestyle that I want for myself, but that doesn't mean I don't respect those folks as "decent developers". It takes a lot of fortitude to build software in those sorts of constraints.

It may be late in October, but I guess some people don't appreciate horror stories of actual development jobs that exist. If I could find a way to package that and sell it as Developer Haunted House experiences, I imagine I could make a quick buck.

Even if everything about remote workspaces were bad for professional developers, they will accept it if that's what companies are offering. Just like they accepted open offices, standup meetings, all-day video calls, agile, etc. And there's a lot to like for an employer: spend less on computers, reduce IT costs by locking down machines, get new employees productive sooner, make developers more interchangeable...

It's going to happen, and it doesn't matter much if employees like it or not.

It has happened since UNIX/VMS/.... systems exist.

That is a typical enterprise setup, thin clients with development taking place on a beefy server.

For Windows systems, you get a VM with RDP or Citrix access.

And native cloud development, is exactly the UNIX/VMS/.... model with fancy UI.

You should consider yourself lucky to never have been under the boot of a crappy IT department that won't let you have diddly (and even if they let you have diddly, it's five years out of date).

These aren't my solutions, they are the ones presented in the article.

That said, I do a lot of professional software engineering with a Chromebook and a Linux server, so.

Welcome to enterprise IT world.

Downloading and installing is a big ask if you don’t have the required system permissions (computer labs, work issued laptops, Chromebooks).

Another data point: I used to compile VSCode for ARM to run it on a RaspberryPi and had to do it anytime there was an update.

So you as a developer are not allowed to install a code editor... To edit code... Which is... Your profession...

So you need to use a Web browser as a code editor because... Installing a binary to the disk is not allowed?

It's crazy!

You've never wanted to edit text/code on a computer that isn't yours before? There are a lot of cases where I can see this coming in handy for making quick edits as an IT professional, especially in cases where I need to mess with a slightly complex file on an end user's machine but don't have the time or desire to copy it back to my own.

It's a tool, you don't have to use it.

I think the craziness of it is highly context dependent. If you're expected to be running everything in "the cloud" anyway, then as long as you have execute permissions on the cloud computer you are authorized to...ok no now wait a minute, you're right. This is crazy no matter how you slice it.

M: "Ok, here's your company issued computer. You're not allowed to do anything with it, because security and IP."

D: "Ok, but I need a computer to compile unique code, and I need to be able to execute that code..."

M: "Good news! We bought lots of cloud compute, so you can do whatever you need or want with your compute!"

D: "...how is this different."

M: "Well you see, we didn't issue those computers. So if something bad happens, it isn't because of us. It's because of the cloud."

D: "...but if something 'bad' only happens because of the code that I wrote, isn't it still bad whether its running here or there?"

M: "Fine! If something bad happens, it's your fault, not the cloud, because we didn't do it, and of course the cloud is infallible."

D: "I'm not working here."

M: "..."

D: "..."

Or the steelmanned version

M: "Here is your company laptop for policy reasons it is the same as every other laptop in the company"

D: "But I need to install and compile more stuff..."

M: "We know so we have provided a developer environment tailored to your needs, we understand it might be inconvenient but it might also allow for :generic inspirational stuff:

D: "oh, ok"

I work in finance and as you’d guess my main app is Excel. 9/10 big companies I worked for are on a >5 year old license at any given point. Since it’s so heavily tied in with outlook, exchange, etc. and they typically tie a office version to a windows version these days, it’s so frustrating constantly having to use outdated software for no good reason. As you said, it’s crazy!

There are good reasons: some of your finance colleagues have done crazy spreadsheets with that old Excel version and everybody fears of breaking business if those critical spreadsheets break.

That’s not usually the case. That’s what IT department thinks is the reason, but finance can and does deal with broken files all the time for a variety of reasons.

I think what you’re referencing is when the IT department asks me and my team, do any processes break if we change version’s? And the answer is always, please we’ve been asking for years. Occasionally there is an add on we use that becomes a dependency. I feel like that was more of an issue in the past. Now that basically everything is 64 bit compatible, we do some testing and tell IT no risk here.

Excel has good support for rolling forward. Not always backwards compatible, but going forward breaking is quite rare. Things like XLS to XLSX happen rarely and they still largely work moving forward.

When I talk to the IT guys it’s more about reliance on exchange servers, outlook/calendar, and of course the corporate licensing that makes upgrading just for us finance guys difficult

If you're an employee with a work computer you don't have an admin account on, there's a reasonable chance you can convince someone to install something you need. If you're a student in a computer lab, that's likely out of the question.

Yes, quite common on Fortune 500.

Well, works for us.

VSCode will happily (and automatically) install under the user directory with no admin privileges on Windows, FWIW.

Tablets for sure. There are no good coding apps on Tablets. Say you're going on a trip somewhere and don't feel comfortable bringing your $3,000 laptop. Pickup a $150 android tablet + keyboard. Or low income individuals, you could start coding right from your phone without having to buy anything new.

There a couple of nice coding apps in Android and iOS, naturally they are mostly for coding on the train/plane, or tying out ideas at the local coffee shop, but that is good enough for me.

I just tried it and it mostly works in Chrome on Android, except that I can't right-click because Chrome uses that to go back.

Anyone know how to disable that in Chrome?

For me the point is more around generally pushing things towards the cloud and away from snowflake local environments. One click app generation from templates, one click deploys of your app to ephemeral environments for testing and sharing... all without requiring any setup, and integrated into GitHub for collaboration. Want to onboard someone to working on your app, just send them a hyperlink to the repo.

I've used the github.dev "." shortcut (on any repo in Github press dot to jump to github.dev) a few times to browse the code "more comfortably" with many of my VS Code extensions (via Settings Sync) without needing the time to clone locally. (There is a way to get one of the Github extensions locally to give you a Remote Repository experience in a local VS Code window, but that dot shortcut is much more convenient.) I've even forked and made small (mostly Markdown) PRs that way now.

I'm excited that VSCode.dev now supports the same thing with my company's current Azure Repos. Maybe they can give us a dot shortcut there now too. (If anyone is still active enough work on it to make such a change.)

Though I think the big new use case (that a lot of people are overlooking) is the new Theme Preview Playground use case in the article towards the bottom is a pretty great one. For instance, here's the VSCode theme I currently use because it shiny and rad and totally tubular:


You don't have to download the theme to try it. It opens a fake workspace with several examples of code highlighting to get a feel for the theme. If you've got Settings Sync turned on you'll see how it interacts with your other settings (like which side you keep the "explorer bar" on) and if you decide to Keep the theme by clicking the button in the notification it pops up, your other devices will install the extension automatically and start to use it as soon as they next sync.

It's pretty neat and the article implies it's the first "playground" of this sort and probably not the last as they get other ideas of extension types people might prefer to test before they download.

Students and kids with chrome books - a huge amount of middle and high school students in the US. Students who Microsoft would like to grow up thinking software development = Visual Studio.

> ...the type of people who use VSCode

This type of gatekeeping helps no one. We should be optimizing for lowering barriers to entry, not justifying making an already hard problem (learning to code) harder.

> ...except in desperate circumstances...

Some 15% of American adults are smartphone only. That percentage rises very quickly once you look outside of the G20. Those are also some of the people most likely to have their lives drastically improved by having access to the ability to code.

The fact that you don't have a usecase for a tool absolutely does not mean that such a usecase does not exist, nor does it make that usecase less valuable.

Some non western countries have student/junior freelance developer populations comprised almost entirely of people using mobile devices for development. I imagine this will be a god send for them

> The post gave some use cases involving hardware that can't easily run Desktop VSCode (e.g. iPads and Chromebooks). I just don't see that being much of a use case though, except in desperate circumstances where a more capable dev machine isn't available.

This is _huge_ for education. Many school districts are distributing managed chromebooks to each student because of their low cost of ownership and really all you could code on with those was replit.com. VS Code in the browser allows you to expose students to a programming environment just like what they'd use professionally.

This isn't meant for the developer with the latest 16" MacBook Pro, it's meant for people who can't necessarily install vscode on their machine. Maybe it's on a shared machine at a library and they can't install software, or maybe it's a Chromebook.

I’m excited for it being able to, I believe, do a bit of coding on my iPad :)

I dunno. It would be pretty sweet to not have to bring a laptop with me when I travel / go places. Just whip out the iPad, open a browser, connect to remote host, and get to work.

The caveat of course is that this supports connecting to a remote host.

In Safari:

> Your current browser doesn't support local file system access.

> You can either upload single files or open a remote repository.

Honestly, this looks amazing for times when I'm in a meeting and want to look a piece of more complex code but don't have a local copy of the repo. The Azure DevOps repo UI leaves a lot to be desired, especially if you know where a piece of code is called from but don't know where it's defined off the top of your head.

> iPads and Chromebooks). I just don't see that being much of a use case though, except in desperate circumstances where a more capable dev machine isn't available.

A number of schools dispatch iPads and Chromebooks to their students. They can hook a keyboard and a mouse, and with vscode.dev they now have a decent dev machine.

Sure parents could buy a windows/linux/macos laptop, but outside of the cost, maintenance is not trivial (parents wishing to restrict access to whatever resource will have a harder time)

To push a bit farther, there are pretty powerful and usable Chromebooks, and iPads are now on par with most laptop when it comes to processing power, especially JS. Extending their role to be able to code a bunch is nothing to sneeze at.

I suspect those "inherent limitations" will continue disappearing over time. It wasn't that long ago that file-system access was one of the biggest ones. WASM and/or Workers could bridge the gap on language servers, building/running code, etc. Not much would be left at that point

And I think there are definitely cases where installing is a barrier to entry; think about people in locked-down enterprise environments, or students coding for the first time (on their own computers or otherwise). We're talking about an IDE becoming as readily available as Notepad (or even more so, since it's available on all platforms)

>However, I'm not sure who this is for. Downloading and installing an application is not a particularly big ask for the type of people who use VSCode.

True, but IMO doing anything we possibly can to get from individuals who want to code -> actually coding faster and easier with minimal setup is a huge win. I remember starting out using codeblocks for C++. My biggest hurdle was figuring out how to get a compiler integrated with the IDE. https://repl.it is doing first class work in this space. I highly recommend you check them out as well.

I'm not sure who this is for.

I guess it’s for me, 15 years ago, backpacking across Southeast Asia without a laptop and stopping at Internet cafes to work on a side project. Back then, I had built a little ghetto web ide out of a textarea and chosen php for the project in question because it didn’t need a compile step. Today, this would let me do my thing in c# as nature intended.

But then also, today has crazy fast two pound laptops that would fit in that tiny bag I had back then. And no Internet cafes anymore.

So maybe not for me today, I guess.

Being able to run VS Code with only browser APIs and no Electron/Node.js is still a big win for PWA proponents even if it doesn't offer anything new.

I'm not sure what the use of the standalone site is, however Microsoft has already integrated VSCode-in-a-browser into Github. If you go to a Github file and press . then that repository will open up in a VSCode instance in browser. It's quite useful to have it's search features rather than needing to clone down a project first.

This VSCode.dev standalone site adds Azure Repos support in addition to Github.dev's existing GitHub support, and they say it will be extendable by extensions so maybe hope for Gitlab/Bitbucket/Gitea/Sourcehut/who knows who else to add this sort of remote dev experience that the Github dot shortcut does.

Also, there's a new "Theme Preview Playground" which lets you write URLs to try theme extensions before you download them.

The use case is Codespaces.

Codespaces is magic because it allows you to go from zero to fully configured dev environment, even for the most complicated environments, in five minutes via a preconfigured dev container

VSCode in the browser allows you to do this, but is only part of the story, and without the dev container, you miss the really valuable part of that story.

Taking Electron to the death row.

> I'm not sure who this is for.

Especially since many extensions are incompatible.

Not open-source yet, the best alternatives for self-hosting right now are:



Update: also check the discussion about their differences https://github.com/cdr/code-server/discussions/4267 (IMO both are much slower and worse than vscode.dev)

There is no direct comparison, so unfair to call them slower or worse. Both these services are for running your own private server and for browser IDEs to be thin clients. You can configure the server with your language tooling, build scripts and whatever else. You can also pause and resume your session from a different device (since a majority of business logic is handled by the server).

vscode.dev runs fully in your web browser, and files are read from local disk. There is nothing in the cloud. So yes it is faster, but serves a different use case.

+1 for GitPod .. Stellar integration with GitLab as well for CI / automation

They claim Github integration as well (although I have not tried that yet).

Geoff from Gitpod here. GitHub, GitLab and BitBucket are 1st class citizens. In time I’d like to see Gitpod extend support for sourcehut, cgit, gogs and gitea but we haven’t got around to it yet. Fortunately Gitpod is indeed opensource so anyone in the community could send in a pull-request and add support for the context parser. Come join the discord at https://www.gitpod.io/chat #contributing channel.

> Not open-source yet

Will it eventually be open sourced?

LPT: press . on any github repository when logged in and it will open that repository in vscode.dev with everything set up

Similar to github codespaces without a real computer to back it up

Good tip, although it's not vscode.dev, but github.dev. Slightly different thing as explained in this section: https://code.visualstudio.com/blogs/2021/10/20/vscode-dev#_g...

it's neat but I wish it would also allow you to run code in a vm when you do this, so you could do things like linting, running test suites, etc before actually committing code. Without those things, this is really limited in its usefulness for any serious project, and more or less most useful as an overpowered CMS for GitHub pages blog sites or something.

Github Codespaces is a way to do exactly that, but you have to pay for it by the hour.

(shameless plug) I have been working on something that does this for free: https://tym.so . Basically, it's an in-browser vscode that can connect to any computer with a one-line install. So you can edit and run code from the browser (edit from any device run on any other device) and also has some multiplayer features when you share your url. Would you be interested in trying it?

"LPT" = Life Pro Tip (just learned that)

This is exactly what I've been looking for. There was another site (forget the name, something-something-cloud) that supposedly did this but it seems abandoned and didn't work on any browser that I used.

An online VS Code would not only make doing quick things with GitHub repos much easier but can be great for people just getting into learning programming because it doesn't require installing anything, but you are essentially starting out with a professional tool.

That and every once in a while I'm not on my own computer thus it would be pretty nice to kill time coding with a VS Code instance that doesn't need installation.

Was it cloud9?[0] I remember this from a few years ago, but it seems like it was killed after they were acquired by AWS.

[0]: https://aws.amazon.com/cloud9/

You might be thinking of https://coder.com

>"Code-server is the primary open source project we maintain. It allows developers to use a browser to access remote dev environments running VS Code"

I find a couple things pretty neat here:

1 - All of the screenshots are from a Mac. This never would have happened with the old MSFT.

2 - The performance of this is pretty good. Admittedly, I just played with this for a couple minutes, but even opening a folder with a bunch of files was snappy.

Microsoft has long been one of the biggest application vendors on the Mac, there were previous eras where most of the screenshots of Office would have been taken on a Mac too. Though yes, never would have happened in the "Windows is our sports team, hoo rah" parts of the Ballmer era.

This is because Microsoft doesn't seem to want Windows developers to use VS Code. They want to keep them locked into Visual Studio and Windows Azure, which is why the C# plugin is one of the worst from all language plugins in Code.

That's a pretty strange implication. I just tried opening up a .NET Core application in VS Code developed exclusively in Visual Studio, and it fired right up. Now I certainly wouldn't say that the debugging experience is as good as VS, but nobody should expect it to be. VS Code isn't supposed to be a replacement for VS, although it can certainly hold it's own. And it's free.

VS community is also free :)

Yes, but it has a very significant licensing restriction that prevents it from being used to develop commercial software. VS Code has no such restriction.

A little oversimplified - Visual Studio Community can be used to develop commercial software, with restrictions to (summarizing) 5 conccurrent users in non-enterprise organizations. https://visualstudio.microsoft.com/license-terms/mlt031819/

For those who think web-based IDEs are inefficient, I recommend giving VS Code in the browser a try: nowadays it's just as performant as it is on the desktop.

Even on the iPad it's just as performant (with 120Hz scrolling!), although as noted in the announcement, the file system limitations make it a bit of a pain to work with for ad hoc coding.

> For those who think web-based IDEs are inefficient, I recommend giving VS Code in the browser a try: nowadays it's just as performant as it is on the desktop.

This doesn't read to me as the acclaim that you think it is. What I'm hearing is that the desktop application is as slow as a web IDE.

No doubt the people at VSCode have put every effort into making the application run well on desktop, but that's not to say that it comes close to "native".

For another point of reference, I'd say that Discord is "as fast in the web browser as it is on desktop", but that's no compliment; the desktop client is extremely laggy, even on an up-to-date Windows PC. [That said, relatively speaking VSCode is leagues ahead of Discord on this front].

> the desktop application is as slow as a web IDE.

Have you ever used VSCode on the desktop? I have never experienced any issue with VSCode nor have I ever wished it performed better.

I envy you for never having issues with VS Code. I have to restart it far, far too often for it grinding to a halt. I'll lose my auto-complete menus completely. Forget auto-completing any paths (like for imports) when it gets to this state. I have to restart my whole computer sometimes.

I have minimal plugins, but have once again removed some more that I thought were helpful, performance got a little bit better again. But we shall see how long it holds up, as I've done this a couple times now in an attempt to gain reliable performance. This is on basically a brand new 15" i9 Intel MBP.

I'm not the only one I've talked to that has random slow-downs like this. I've literally contemplated going back to Sublime Text 2 for my sanity - I just want things to work reliably. Oh, and if you accidentally click on one of your build files, enjoy the system lock-up!

I don't need new features every month in VS Code that I won't use. I just want better performance on the basics so I can get back to being in flow, writing code, solving problems.

It’s not an especially fair case, but I was surprised at how poorly VSCode ran on a Raspberry Pi 3 when I tried it awhile back. Running it with a remote connection to a beefier machine would make for an amazing thin client.

Have you ever compared it against Notepad++ or Sublime Text?

FWIW I've used web-based IDEs for certain bespoke tasks and desktop VS Code is still magnitudes ahead of them in speed/performance.

Performance between IDEs can vary dramatically, so vscode vs (non-vscode) web IDEs is not a useful comparison - especially now that you can compare web vscode vs "native" (electron?) vscode.

I suspect the performance difference is trivial (or soon will be once teething problems are sorted out).

Geoff here from Gitpod. My primary development machine is an iPad after I bricked my M1 laptop. I’m currently out in the middle of no-where of Australia with my van so I’m all in. Even when I get my M1 fixed I’m likely to keep my thin client device for hipsters as my primary development machine.

See https://ghuntley.com/anywhere for tips and tricks.

Thanks for your link. I can only imagine a future where remote dev work is the new norm. As the rest of society discovers the joys of working from anywhere, such browser-based coding innovations are helpful to on-board new curious developers. We no longer need costly setups/desktops to run very useful software like VSCode.

After seeing this post, I started searching for a cheap and good tablet which led me to a soon-to-be released Android tablet from Nokia (less than 250€). Tablets are trending again! Coupled with other existing affordable solutions like Termux and Git, software development will attract more people regardless of personal background/status/location. We won't be seen as hipsters for long.

I am heading towards making life changes similar to yours (hopefully after Santa delivers his gifts on-time), so I feel grateful that you shared your experience.

> Even on the iPad it's just as performant (with 120Hz scrolling!), although as noted in the announcement, the file system limitations make it a bit of a pain to work with for ad hoc coding.

That's on Apple, because they only allow Safari (or reskinned variants of Safari) on iOS.

There would be no performance difference (at least at the UI layer) between a web app running in the browser and the same web app running in Electron, so this doesn't really demonstrate anything new WRT performance

As mentioned in the release notes, this only works for web languages sadly. And no debugging. In a way, that's not really a complete IDE (though they are probably working on it).

It actually loads way faster for me in Safari than the actual VSCode app. To be fair, Safari is already running when I try this versus a cold boot for VSCode.

I'm intrigued by the use of webapps in this way, but I really think we need a better solution for rebinding keys in the browser. I tend to use Emacs bindings (which practically every editor supports), but they are a bit of a mess in browsers because even extensions can't clobber bindings like C-n, and I recall having issues with C-w and C-p as well. Otherwise, very exciting to have high-quality, zero-install tooling like this!

I'm not an emacs user, but I am a vim user and I've been successfully using VS Code Remote + VSCodeVim the past few months from a Chrome browser without any keybind issues. I'm curious what exact keypresses the browser is struggling to intercept?

C-n is 'next line' in Emacs, but is permanently bound to 'new window' in every mainstream browser.

Interesting they're using tree-sitter for syntax highlighting. Obviously they can't run LSPs in the browser so this must have been an alternative. I'd be curious to see this get into mainline desktop VS Code though (and I'm not alone: https://github.com/microsoft/vscode/issues/50140).

The article points out that the Typescript/Javascript and Python LSPs run in the browser providing "better" experience than the tree-sitter experiences for languages without browser capable LSPs today.

They don't use tree-sitter for syntax highlighting unless the extension you're using uses it. By default (and almost everything uses the default) VSCode uses the Textmate syntax highlighting system.

And there's no reason they can't use the LSP in the browser as long as the actual language servers can run in the browser - pretty easy with most languages these days.

why can't they run LSP?

It’ll be interesting to see how this evolves compared with other players in this space. (Stackblitz comes to mind. They added support for “WebContainers” recently, for in-browser hosting of server-side code: https://news.ycombinator.com/item?id=27223012)

It's not only an awesome technical achievement, but it has also so much potential to be useful.

And yet, something at the back on my head is screaming:


I have the intuition that, on the long run, using more and more tools that are not on your own machine will create a dependency on systems big companies control. And something tells me we are going to pay for it in the end.

So I'll stay away.

Maybe I'm getting paranoid, but I don't regret not having ever created a Facebook account, or not getting on the 2010 hype train of magical SAAS services like Firebase that lock you in eventually.

We'll see in 10 years I guess.

This is my personal opinion. I don't imply in any way or form that my point of view is right. You can down-vote, call me names, or ignore what I am sharing. I don't care.

Since Apple CSAM attempt, something at the back of my head screamed: Regroup. React. Change. Now.

Two months after Apple's "postponing for better implementation": My company runs on Arch/Manjaro (over old MacBooks Pro without T chip, custom PC's, etc). There is no iPhone in sight - my colleagues/employees found personal alternatives. I use DeGoogled Android device for banking app and flip phone.

Designers are with powerful Linux boxes: Windows VM - mainly Figma (I don't like it, but this is production standard now) and Affinity Designer/Photo. We use mainly Vim/Emacs/VSCodium/Sublime.

Vendor lock-in is inevitable, SaaS business logic is based on this premise. I don't care how cool it is, or how 'trendy', there is no way my company production code to be served as a "free petrol" for some monopolistic/"good intention" scheme which will feed AI advancements geared towards removing of skilled professionals.

I don't like SaaS apps direction at all. We have powerful hardware now, there are proven ways of collaboration with FOSS, moving everything in the browser is utterly insane.

I cannot hide how I feel about the lack of critical thinking in designers and developers today. They are always ready to jump on the bandwagon just to feel 'cool and important'.

Call me crazy, or paranoid. In 5 years time all will be transparent and obvious even for the most "optimistic" ones.

We are back at UNIX/VMS/mainframe timesharing infrastructure.

SaaS direction is the only way people have found out to extract money from open source tooling that devs don't want to pay for, it is either SaaS or hardware, so there you have it.

> We are back at UNIX/VMS/mainframe timesharing infrastructure.

It is worst. We are in the new times of "surveillance economy", "data hoarding", politically driven business decision making, 4th industrial revolution, real-time data driven "psyops" and "marketing", "AI advancements", you will own nothing and you will be happy.

I will gladly return to UNIX/VMS times with low connectivity, real human connections and minimal dark patterns in design and product implementation:)

It's already that way. It's immensely hard to "develop on an airplane / desert island". eg: even documentation is at best something like "dash" => https://kapeli.com/dash ... forget about anything more complicated than SQLite, and if you're lucky docker-compose for occasionally connected use.

My experience? Chromebook / Crouton, usually offline with occasional network access. I ended up leaning hard towards SPA's + javascript, with most of the documentation being "legit" available. (JS, HTML, CSS, DOM, etc.) ...occasionally researching + pulling in libraries on occasion.

On your site. Never going to use these tools.

This is running on your machine though. The browser downloads vscode as a SPA-style thing, and runs the editor in the browser sandbox, and can edit local files/directories.

Sure. And the google map api is free to use, you can send tweet using sms, facebook doesn't show ads and web services never change policies once they get enough users.

Good thing it's running on your machine and you can see and control when it updates.

If you want to run you own version of this - try this https://hub.docker.com/r/linuxserver/code-server, its very easy to configure. linuxserver has created code-server - which is vscode running in container. I have been running it in my personal network for nearly a year now. It great because it lets you code from any device. Sometimes I use this to quickly script out things on my ipad and then execute whatever script I have created using Terminus.

These are two very different things. vscode.dev runs fully locally. It accesses files from your local disk, and doesn't need a network connection (after initial setup/asset caching).

code-server requires the backing server to be available at all times, and all editor features are pulled from the server via a websocket connection. You can pause and resume whatever you were doing from a different device.

I was hoping this would be the thing that makes coding on an iPad not awful. But any keyboard shortcuts are consumed by Safari, so it's a pain to use. However, I hope that this enables the VS Code team to make a native iOS/Android VS Code app that would essentially just be a web browser that uses this functionality.

I absolutely do not want VS Code to be an iOS or Android app, since that means giving up all the massive progress they have made towards fully open web-based development and bowing down to the gated App Store model. If that means a less than perfect experience on iOS devices then so be it. VS Code as it exists today wouldn't even be allowed in the App Store under existing rules.

iOS at least has second-class support for PWAs via 'add to home screen', where it does take up the fullscreen like a regular app without any attestation to a central authority (besides the CA/B racket and Google safe browsing of course).

You can do this right now on android. If you're using chrome/chromium based browser, just visit vscode.dev and then select add to home screen from the browser menu. A similar option exists in firefox on android too, I believe.

Once you open the shortcut created from the previous step, it will open the webapp without the browser's UI.

Nice, this works on iPad with Safari as well. At the very least, simple key binds work. Thanks!

How did you get Chrome not to hijack right-clicks?

Do you mean vscode.dev itself hijacking right-clicks to display its context menu[0]? If so, there's this great extension I use to enable it on the myriad of websites that use it for non-alt-context-menu usage[1].

0: https://i.judge.sh/thirsty/Flutter/chrome_w3SVLELGag.png

1: https://chrome.google.com/webstore/detail/enable-right-click...

Umm... no. I want vscode.dev's context menu.

I didn't play around with it much. It might have the issues you're facing.

What's the feature that allows a website to open local files and folders?

Edit: I think I found it: File System Access API, supported by Chrome and Edge, not supported by Safari and Firefox

> supported by Chrome and Edge

read: supported by Chrome

While I know it's not the fault of the vscode team, it sucks that Firefox feels like a second class citizen since it doesn't support the File System Access API.

Yeah, Microsoft supporting Google via Chrome feels a lot like big Oil supporting frakking technology.

It’s these kinds of big mainstream products using these APIs that are the only hope to get Firefox to prioritize them. Barring that I see FF further left behind. Very frustrating as a FF user myself.

For any Googlers, how does vscode.dev (or Codespaces) compare to your internal web based editors and code pipeline tools?

I've love to see this for open source, especially integrated into GitHub. A simple "click here to contribute" button could really lower the barrier to entry for first-timers.

I’m not sure if I am understanding your post correctly, but AFAIK you can just hit “.” from your browser on GitHub and it opens an editor (based on VSCode) for that repo.

Not sure if Git is fully integrated in there (although, it being based on VSCode, it should).

Yes, just hitting dot in Github opens up Github.dev which is very similar to this VSCode.dev. So similar that this VSCode.dev lets you get the same experience if you rewrite a Github.com repo URLs and prefix it with VSCode.dev. Today VSCode.dev also supports the same thing with Azure Repos if you prefix dev.azure.com repo URLs.

The "remote repository" experience on VSCode.dev is a little more involved than just "fully integrated git" (it relies on the GitHub/Azure Repos APIs and existing VS Code extensions with Remoting support for some of it beyond just what raw git can provied), but they say in this article that it is extendable and they can and hope to add other providers in the future.

This has been around for a year now: https://github.com/features/codespaces

It seems to be like Theia https://theia-ide.org/ which is based on vscode and runs in the browser. It's used by this project to give a full lab/workspace and ide in the cloud:https://www.eclipse.org/che/ (it's actually closer to vscode even though eclipse is in the name).

No theia has a nodejs server backing its web experience. This vscode.dev is an entirely client side JS application that runs in your browser--there's no backend server beyond something to serve a pile of static JS and html.

Is this true about vscode.dev?

This was the first question I had while reading the blogpost: Do all my local files stay on my machine or do they get uploaded to a remote server?

The blog post says it's using a brand new local file access API only in cutting edge browsers (edge and chrome) so you can access the files on your machine directly from the browser. There is no server upload of anything.

Ah yes that's cool, they mention even the Python extension can run client-side.

Yo. Last night Gitpod’s IDE architect (one of the key folks behind Theia) did a great blog post on the history of cloud IDE’s over at https://gitpod.io/blog/cloud-ide-history

> quickly parked it (...) (or, if you are from the Boston area like me, we "pahked it"

What a strange joke to include on Developer docs.

This is on /blogs and has an author under the title of the post.

Yeah what a shame...I too prefer to pretend like a robot on this forum.

Proud to be a Bostonian!

Part of the Visual Studio Code brand is that it's open source. With this snarky announcement, they've changed that. I've been using https://vscodium.com/ and who knows when there will be a web version. :(

How is this announcement snarky? Also this seems like something they could easily open-source down the road.

Well the core is surely open source as part of regular vscode. And the hosting magic other groups are doing on their own (gitpod.io ...right?).

I think assuming VS Code means open source is not right. The core of VS Code is open source but most fancy things (remote/ssh/docker usage, browser usage, code spaces like behavior, etc) are regular Microsoft products. Microsoft VS Code team still competes with itself (VisualStudio), the traditional competition (JetBrains, Eclipse) and third VS Code derivates (gitpod.io etc). We cannot assume that they give us the greatest and latest for free when they would cut themselves with that.

> I think assuming VS Code means open source is not right.

When VS Code came out, Atom, which is open source, was popular, and VS Code was thought of as an alternative. So it definitely was part of VS Code's brand.

Two features missing right away: Terminal and Remote SSH.

From my understanding, since their vscode uses browser file access api with zero installation, adding terminal seems non-trivial. I have been working on something that solves that: https://tym.so (shameless plug here). I’m trying to build a vscode on the browser that can be connected to any computer with a one line install and has easy multiplayer features. Love to know what you all think about it

+1 I'm curious how it would be implemented. Would we have to send ssh credentials into some proxy service to get MITM'd? Browsers can't communicate ssh directly? WebRTC hack? As some others have mentioned: linuxserver/code-server on docker would scratch this itch a little bit.

Yes! Remote SSH on this would be a game changer for me. Especially if I can run it on an iPad...

Is not that the differentiator between vscode.dev/github.dev and GitHub Codespaces or Eclipse Che.

Remote SSH would make me swap from my current code-server setup in a heartbeat.

wow why?

I wonder if this uses pretty much the exact same code as the desktop version. It seems to me that one of the big benefits of using Electron would be to have one codebase deployable as a desktop app and a website with very little change for each deployment.

It's going to use most of the frontend UI code but all of the NodeJS-specific stuff in the desktop version is a no-go and has to be shimmed or polyfilled to run in the browser. The biggest thing you lose here is system-level access like the ability to run processes--tests, terminals, debugging, etc. And as the blog post mentions unfortunately these things aren't supported yet in vscode.dev.

See https://github.com/gitpod-io/openvscode-server which has that design philosophy.

> we "pahked it"

It took almost 30 years to finally get comfortable with the way native, mostly British, speakers pronounce R. It still doesn't feel right but I no longer fight.

I can still picture myself yelling my hard Rs at Google translate and it consistently failing to understand me.

Somewhat more on topic: I just realized I've been using nothing but Viscose for 2 years now. Still not as good as WebStorm but it's getting there. It wasn't nearly as good back in 2017.

Not sure I want it to be just a tab in my browser thought. Very cool nonetheless. We've come a long way

> Develop on your iPad. You can upload/download files (and even store them in the cloud using the Files app), as well as open repositories remotely with the built-in GitHub Repositories extension.

With web apps, I’m always curious how well they support offline use. In this case, https://vscode.dev/ appears to do pretty well. You can “Add to Home Screen” on iPad and get the app working fullscreen with WiFi off.

File system access being one of the main reasons to put a web app in Electron, this could be a move toward the more lightweight future that some on HN have been clamoring for

I wonder if there will be better remote development support on vscode.dev? It used to work well for me, but in recent releases the remote functionality has gotten so flaky...

It's crazy how much the dev tooling space has evolved in just the last few years. VS Code is of course a big part of it, but there are a hundred offshoots providing CI/CD, dev VPS, source control integrations, language tools, static hosting, staging, functions. The next step, IMO, is more clarity. How do all these puzzle pieces fit together, and what is the "ideal" solution for me as an individual developer or a small team to use day-to-day?

There’s been loads of progress and some stuff has categorically improved the dev experience, but a lot of it is pretty chaotic churn (hello grunt, gulp, webpack, babel), and we are still missing out of the box UI tooling that shipped with Visual Studio like 20 years ago (MFC/VB forms). And let’s not even get started on the kind of stuff that was possible with Smalltalk.

The problem is much dev tooling is indeed so fragmented and mostly missing strategy or direction. It’s like a collective stream of consciousness that has a bunch of directions in mind.

I wonder if MSFT has the vision to reinvent some of the visionary dev tooling from the last century for the modern web. That would be really something.

I was an engineer on the Visual Studio team at Microsoft from 2002-2009. If you had told me it would eventually run in a web browser I would have thought your were crazy. Back then we had to work closely with the core Windows team (memory optimizations, etc.) just so that it could run natively on a semi-beefy PC. I'm pumped that the team has been able to pull this off!

Ok, you can use VS Code like an editor in a browser. But how are you going to compile / run the code if you can't install binaries on that machine?

The code is still on your local disk. Compile and run it however you want.

What is the context of "that machine" here?

Something worth noting – unlike offerings like Github Codespaces, code-server and others this one is running fully in your browser (no backing VM). This is both good (faster to start and run, no server roundtrips needed) and bad (can't install custom language toolchains or run build scripts, can't pause and restart on different machines). vscode.dev is specifically not a "cloud IDE".

Next up will be using webusb or an extension to do mobile development on browser, and streaming (or straight up running the emulator through wasm).

What api is it using to let you create a file in a local directory? I know about https://developer.mozilla.org/en-US/docs/Web/API/FileSystem but that's for virtualized filesystems

The File System Access API: https://developer.mozilla.org/en-US/docs/Web/API/File_System...

e.g. https://developer.mozilla.org/en-US/docs/Web/API/Window/show...

will give you access to a handle representing a directory on the user's real file system

They’ve literally linked it at first mention - https://developer.mozilla.org/docs/Web/API/File_System_Acces... .

Web file system access API, it's only in edge and chrome right now unfortunately: https://web.dev/file-system-access/

confusingly called the File System Access API


>"Fast forward to today. Now when you go to https://vscode.dev, you'll be presented with a lightweight version of VS Code running fully in the browser."

Does that imply there is functionality missing from the online version of VS Code?

Mostly anything that relies on having a real system attached to it instead of the browser JS engine. Running code, or a terminal, or things that rely on the git binary. Lots of extensions are working to remove their dependencies on the local system though.

So these limitations don't exist for Codespaces then?

They do not.

If you were to continue reading, you would be informed that many of the non-web languages don't have the same support in this version, since it can't run native language servers/any extensions that use OS-level APIs.

Some extensions aren't available, such as GitLens.

Yeah, the first thing I tried was to install some Go extensions. I guess they'll need to have separate web versions (or some sort of extra qualifiers)

If file access is supported by all browsers, this accompanied with WASM could lead to a new era for web apps.

It would be great if we could also run VSCode in terminal. It should theoretically totally be possible, but for some reason, there is still no good text-only browser supporting JavaScript.

Edit: Just tried brow.sh - only displays a white page. Might be a solution though

I don't think this will be a success.

If I get to choose between this and my own local installation, of course i will run the local version.

Why would I want to sit in the browser? To continue on the same cursor position I was if I switch computer? Not worth it at all.

It's not competing against local, it's in addition to.

FYI: You can't run/compile your code (yet), and by extension it means it won't show any error/warning (I tried deleting some lines). I'm guessing the next step is cloud build.


This may be what you're looking for? An agent runs on the development computer, and you get everything that it has (debugging, compilation, etc).

I'm already trying to edit PNGs but in Firefox no file system access API yet, so I tried uploading an image to edit in Luna Paint but it only loads an empty image?

Thanks I can reproduce, I created https://github.com/lunapaint/vscode-luna-paint/issues/103 to track it

One thing that I love about VSCode is the flexibility that it offers. Also, my favorite theme, Synthwave, really makes your editor looks amazing.

When will the code be available? Its MIT, so it should be on github, but it's not.

I've been using codespaces for a while. now my copilot doeasn't work there.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact