5 ms·
This is pretty neat, but I think the overhead saved with complete remote development might be cancelled out by using VSCode instead of a JetBrains IDE. People
by vehemenz 6y ago
This is pretty neat, but I think the overhead saved with complete remote development might be cancelled out by using VSCode instead of a JetBrains IDE.
People are advocating remote development heavily, so there must be some *huge* benefit that I don't understand. So much so that people are willing to give up amazing features of an IDE. To get VSCode to a usable state requires 16 third-party plugins, and you're left with about 1/3 of JetBrains functionality, in which the features aren't quite as good. YMMV I guess?
- oblio 6y agoAnd Jetbrains is working on a solution: https://blog.jetbrains.com/blog/2021/03/11/projector-is-out/ https://blog.jetbrains.com/blog/2021/03/11/projector-is-out/ It's still beta so they have a lot of work to do.
- GordonS 6y agoOh wow, I'm a JetBrains fan, but didn't know about this - if it delivers in the same way as the remote extensions for VSCode, it's going to be great! Have you tried the Projector beta yet?
- oblio 6y agoYes. It's based on toolkit remoting. Think RDP.
- crummy 6y agoI have. It's very impressive but not ready for daily use IMO. (I tested it with IntelliJ). However, the 2012.1 releases now support running code on via WSL2 or SSH, which is closer to VS Code's setup. https://blog.jetbrains.com/idea/2021/02/intellij-idea-2021-1-eap-5/ https://blog.jetbrains.com/idea/2021/02/intellij-idea-2021-1...
- dangoor 6y agoI think Jetbrains IDEs can do the same thing: https://www.jetbrains.com/help/go/creating-a-remote-server-configuration.html#config https://www.jetbrains.com/help/go/creating-a-remote-server-c...
- fossuser 6y agoI think what you linked to is different, but they recently announced working on a real remote dev option: https://blog.jetbrains.com/blog/2021/03/11/projector-is-out/ https://blog.jetbrains.com/blog/2021/03/11/projector-is-out/ Their old server config is just pointing to a repo I think, but isn’t remote dev. I looked into this last year before their recent announcement and at the time they said it wasn’t on their roadmap, but looks like that thankfully changed.
- stef25 6y ago> To get VSCode to a usable state requires 16 third-party plugins You mean this literally? It took just that one plugin for me, when experimenting with using another machine on my network as the dev environment.
- vehemenz 6y agoI meant to get VSCode to work as a decent development environment, more generally.
- hasmolo 6y agowould you expand on this? i'm curious what i've been missing, and what possibilities there are! for me, a TS using node nerd, vs code does these things well: 1. ts language server 2. decent plugins (that i can commit to scm) 3. yarn 2 support 4. nice debugger interaction is there more for me to have? is the core difference i use so much m$ stuff?
- vehemenz 6y agoThere are too many to list. I'd recommend using a JetBrains IDE to see what it has. Off the top of my head, VSCode lacks a decent code formatter and a "search everywhere"-type command palette. And the Git and database support is not good either, but that's kind of a given.
- aryik 6y agoI love the gitlens extension personally - I find it to be a big productivity boost when navigating a complex/legacy codebase.
- j1elo 6y agoBelieve them, VS Code is a strange beast in that it's really powerful and has a very flexible extension system... but that's a double edged sword because it lets the devs easily ignore features with the excuse that they should be done with a 3rd party extension. EDIT - child comment is right, the following paragraph is not true! I was writing from my phone and remembered installing this extension [0] but now that I've checked it is for counting offsets from the beginning of the file, not lines and columns. Which I'd concede is not so much of a basic functionality expected in any editor. [0]: https://marketplace.visualstudio.com/items?itemName=ramyaraoa.show-offset https://marketplace.visualstudio.com/items?itemName=ramyarao... And I mean *really* basic stuff... like a status bar label that shows the line and column numbers where the cursor is! Yes, you already need an extension just for that.
- fossuser 6y agoI hope IntelliJ eventually figures out remote dev. Benefits are more obvious on massive code bases that take a long time to build, test (or really just do anything). IntelliJ will get stuck indexing forever and can be frustrating to use - having the code live on beefy servers that can run the computationally expensive bits faster can make a big difference.
- cpbotha 6y agoI've been paying for the JetBrains toolbox for a few years now, I'm a huge fan. However, JetBrains unfortunately has nothing coming close to the transparency and speed of the VSCode remote connection, with your source living only on the remote side. In cases where being able to work on remote, for example very particular configurations, or docker containers, or WSL2, this makes a huge difference. For me this is mostly Python and TypeScript these days, where VSCode has grown particularly strong in terms of IDE features.
- ak217 6y agoThe huge benefit comes in when your project involves loading large datasets or talking to cloud APIs. Both cases can be a non-starter on a local Mac (no local disk space, no bandwidth, or the latency overhead of a 100 ms RTT vs. 5 ms RTT adding up over thousands of requests). I would also point out that Docker on Mac is far less efficient than Docker on Linux, since it runs a separate VM. VS Code Remote is a game changer. It's how IDEs should work. It allows you to run all the GUI chrome locally for responsive editing, while letting the remote do all the heavy lifting (including building, debugging, testing, and deploying). It finally overcomes the latency and other usability issues of using a wimpy local box to connect to a powerful remote box to write software. I never used VS Code much and otherwise prefer JetBrains myself. But the remote development extension changed my workflow permanently, and I now recommend it to all my colleagues who develop cloud/data intensive code.
- arvindamirtaa 6y agoIf only Jetbrains added something more modern to sync files with a remote host, instead of the SLOW SFTP way they do it now, I'd be an instant convert. Recently, I've settled for using my remote machine as the source of truth for my codebase (a monorepo) and only sync specific directories I work with locally. Remote docker interpreter (python) + this is a workable-enough solution. It's not ideal - I still have to switch to the terminal to run git, tests, etc. Compared to this, the VSCode way is just simply better; especially if you don't use all the features of a full-blown IDE.