Live data from Hacker News

The Era of Visual Studio Code

blog.robenkleene.com

521–530 of 698 posts

Re: The Era of Visual Studio Code

#521

Earlier quoted context omitted.

For what it is worth, I have never experienced this issue on modern hardware, and I regularly work with a very large monorepo. Perhaps it is my habit of opening a subset of the repo into the workspace rather than the whole thing (e.g. only the bottom 4 or 5 directory levels so there is at most only a few hundred files in the workspace - builds etc just run from the usual command line so not having the entire repo in…

I use VS Code daily, and most of the time I have a single workspace open with everything in it, probably more than a thousand repos. Checking now, the workspace contains ~3.7 million files. I have had no perceivable performance issues with the editor, it works like a champ. Granted I have a beefy machine, but VS Code has been a pleasure from my first impression. For my needs, it's a great development environment. Rec…

Absolutely agree with the remote SSH being a game changer - it is seamless and works amazingly well.

Since the start of lockdown I've been using it to remote edit from my laptop into my dekstop still at the office and it has been a flawless experience.

Compared to laggy and visually-aliased remote desktop experience (I did this for a while a few years ago and I ended up feeling see-sick after a while), or the faff of remotely mounting disks, it has been utterly seamless.

Re: The Era of Visual Studio Code

#522
post #480
post #469

Earlier quoted context omitted.

Sorry to spoil the party here but I wouldn’t call it excellent. I need to set environment variables and PYTHONPATH in 3 places (for the integrated terminal, for background processes and for the debugger). New environments are only detected after restart of the UI and It doesn’t Index or allow go to definition for libraries downloaded via pip most of the time. Also no refactoring support... This is really frustrating.…

In my company we use pyenv with virtualenv and everything works seamlessly. VSCode automatically runs the activate script from pyenv in a new terminal (in my case it is even the fish shell), debugging works fine, and I can go to definitions. Note that a new extension, that works alongside the original python extension, has been developed by Microsoft: Pylance. It speeds things up based on pyright, a python type-check…

Hey, thanks for your input. I will look into using pyenv so that might solve my problem with "go to definitions".

However, I was also having a lot of trouble with environment variables, especially PYTHONPATH. How do you solve that?

Also rope did NOT work well for me. When I tried to refactor (rename) a function definition, it also changed variables in unrelated scopes that had the same name and were not related to the function at all. So I did not gain anything from that which I couldn't achieve using CTRL+F replace.

Re: The Era of Visual Studio Code

#523

Earlier quoted context omitted.

As someone who uses all three of the editors you named, I think that each serves a pretty different purpose in practice. Each aspires to be the be-all, end-all editor/IDE, but that's just unrealistic to me. For me, I use VIM all day, every day at work (C++), because while it doesn't have the full IDE experience out of the box, it's close enough, and can be brought much closer with various plugins and knowledgeable ad…

I couldn't stand VScode when I tried it. To be honest I didnt even get it working properly for C development. Visual studio on the other hand is awesome.

What kind of problems have you ran into? I am not having any problems using VScode for C.

Re: The Era of Visual Studio Code

#524
Another cool thing about VSCode is it can be run in browser [1] now and this browser based VS code is available on GCP[2], AWS[3] and Azure[4] as well if you want to give it a try but note that there is usage cost in addition to the infrastructure usage for the cloud vm.

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

[2] https://console.cloud.google.com/marketplace/details/techlat...

[3] https://aws.amazon.com/marketplace/pp/Techlatestnet-Visual-S...

[4] https://azuremarketplace.microsoft.com/en-us/marketplace/app...

Re: The Era of Visual Studio Code

#525

The author is right about VS Code becoming the incumbent solution for text editors ... but for the wrong reasons. As he demonstrates, extensions have largely completed their evolutionary cycle with VS Code playing a heroic role in the final act. And he is also right about the benefits of having of a Very Large Corporation collaborating with the open source community. But instead of asking yourself what will be your d…

>Hint: it won't be EMACS.

Of course it will be Vim :p, jokes aside I think you may be surprised by the answers you get if you run such a poll

> * Git is a first-class citizen.

I don't see how it's an argument against Emacs since both Doom Emacs and Spacemacs (two of the most popular Emacs distributions) ship with Magit (the best Git interface imho) by default

> And I would really like to see other authentication providers for Live Share beyond GitHub and Microsoft accounts.

Given the current direction of VSCode development in general, this is more likely to never happen.

Re: The Era of Visual Studio Code

#526
post #96

The UI is an absolute mess. "Check for updates" immediately shows "Downloading updates". That's not what I expected. How about some confirmation? Start a .NET project and you see "Downloading package 'OmniSharp for OSX' (49713 KB)", "Downloading package 'Razor Language Server (macOS / x64)' (51227 KB)". No prompt. Just starts downloading 100MB of deps. For some reason the Output tab down the bottom has 20 options in…

Compared to jet brains though? Id argue its a huge improvement.

Comparison of what exactly?

JetBrains' IDEs have built-in update managers. They present you each plugin, giving you a tick-box of which ones to update. The Toolbox app manages the IDEs, allowing to update automatically or not, install pre-releases, and roll back. It's polished.

The IDEs use the established desktop UI norms of toolbar menus.

They come with pre-defined 'Run' templates for many languages/frameworks.

There is a single Event Log for output of updates etc.

The left menu has words so I know what the icons mean, and isn't obnoxiously large due to over-use of large icons.

Re: The Era of Visual Studio Code

#527

Earlier quoted context omitted.

(disclaimer: I am an IntelliJ fanboy) > From my experience out of the box you get poor performance and you have to spend a lot of time figuring out how to change configuration to improve it as knowledge is scattered in many places and not always up to date. I don't know if you are talking about IntelliJ or VCS, but IntelliJ can quickly start an empty project. And you don't to spend time to figure out how things work.…

I know this is how a lot of people think of the text editor/IDE divide, but it’s just not true anymore: for specific languages like Clojure or Common Lisp, emacs has plugins that provide all the essential features of an IDE with minimal fuss. For JavaScript, VSCode or tide-mode for emacs have, in my experience, significantly better code intelligence than WebStorm. The only languages IntelliJ is better at than the com…

Well, obviously a text editor built on top of Lisp is going to be pretty good at editing Lisp-based languages like Clojure. Emacs is pretty poor at everything else though. I remember trying to get it to do even basic completions in C++ beyond hippie-style completions and it just couldn't do it no matter how many packages or servers it had to help it. That was some years ago though, but emacs develops slowly so I doubt it's changed.

That said, the tiling WM features it has are pretty good.

"LSP tooling" for Java/Kotlin/Scala doesn't exist as far as I'm aware. I'm sceptical about LSP stuff anyway. In an IDE performance and latency really matters. IntelliJ plugins have direct heap access to the AST and editors so they can rapidly explore the code, add annotations etc. Java adds some overhead but it gets lower every year, they just never stop optimising the JVM, and serialisation/context switching is gonna add a lot back. Especially as you'll really want to be writing language servers in high level languages anyway. There's no justification for writing such a thing in C++ or Rust.

Re: The Era of Visual Studio Code

#528

A bit of a tangent, but I think it would be worth distinguishing between vim-as-the-text-editor and vim-as-the-keybindings. For me, the value of vim comes from how quickly I can manipulate text, not necessarily that I can use a text editor in the terminal. For bigger projects, I mostly use VSCode (and used IntelliJ in the past) but with vim bindings turned on. Because of this, I feel it's a bit difficult to compare t…

The Vim extension in VSCode is very clumsy for many things, not to mention the lags and the slowness (which defeats the purpose of using Vim keybindings) that's what drove me back, but I keep an eye on Onivim[0] which aims to be VSCode with Vim as a first class citizen.

0: https://onivim.github.io/

Re: The Era of Visual Studio Code

#529

Earlier quoted context omitted.

(disclaimer: I am an IntelliJ fanboy) > From my experience out of the box you get poor performance and you have to spend a lot of time figuring out how to change configuration to improve it as knowledge is scattered in many places and not always up to date. I don't know if you are talking about IntelliJ or VCS, but IntelliJ can quickly start an empty project. And you don't to spend time to figure out how things work.…

I'm a fanboy of both JetBrains and VSC. In the many years I've used JetBrains IDE variants (IntelliJ, Webstorm & Pycharm), I was never able to get rid of the frequent project re-indexing that slows everything down and makes the fans go crazy; you'd think they would cache that info and write it to disk.

It is cached and written to disk. Actually they're now going further and supporting downloads of pre-calculated indexes.

I use IntelliJ every day and I'd say reindexing only happens now when there's an actual need for it, like because I switched to a different JDK (which may therefore have different classes in the std lib). It's incremental too so this doesn't bother me like it used to. Definitely an area of focus for them.

Re: The Era of Visual Studio Code

#530
I have been using Sublime since 3 months and I like how lean it is. I tried VSC but I find it heavy on resources on my i5 with 24GB of ram. Maybe it is a perception thing though. What I find interesting is that UltraEdit, an editor I love, is not even on the rankings here.
Post reply on HN