Live data from Hacker News

The Era of Visual Studio Code

blog.robenkleene.com

561–570 of 698 posts

Re: The Era of Visual Studio Code

#561
post #198

I find this post along with the comments in "A Picture of Java in 2020" https://news.ycombinator.com/item?id=24551390 to be incongruous with my experience as a professional developer. My first couple of years writing software I used Vim, then VSCode, then worked in a Java shop and was forced to use IntelliJ. I didn't like it at first, but now after a couple of years I cannot see how I lived without it. The idea that…

I tried out vscode for python now that I started a new job. I'm on linux for what it's worth. The experience has been massively frustrating coming from pycharm. First I installed the open source version, and found that microsoft publishes plugins that are programmed not to work with the open source version. They don't tell you this, rather, the plugin throws exceptions that some API is missing. I tried out the offici…

Which Open Source version? Is it supported by Microsoft? Do you use an unsupported version of Pycharm? :-)

Re: The Era of Visual Studio Code

#562
post #270

Earlier quoted context omitted.

I see them as complementary. VS Code shines if you’re jumping between independent codebases for distinct projects, and startup time matters. But my startup monorepo I keep loaded in IntelliJ for days at a time and have never looked back. For the 1% of time it’s laggy due to a JVM GC or background indexing, the other 99% of the time it’s immensely productive to have e.g. full-stack debug breakpoints that Just Work, we…

I wonder if ZGC in Java 15, now that it is GA, would clean up any lag folks see.

I tried both ZGC and Shenandoah (with plenty of heap space available) and haven't noticed much difference compared to the default CMS. Also, Shenandoah (or maybe both?) does not support compressed pointers, so there was a noticeable increase in memory usage.

Re: The Era of Visual Studio Code

#563
post #534

Earlier quoted context omitted.

Note that this feature doesn't work in open source builds of VSCode, it's an MS only thing.

Eclipse foundation has a new project, Theia[1], which forks VSCode and one of the reasons they state is that the extension ecosystem is not opensource. They want Theia to be a tool to build your own editor and it can be built as a hosted solution (like code-server) or a standalone editor Edit: I see that the article also mentions Theia but this point about Theia vs VSCode is not mentioned. [1]: https://theia-ide.org/

The beauty of open source. Take code written by others rename and call it an alternative to the original product.

Re: The Era of Visual Studio Code

#564
post #304
post #256

Earlier quoted context omitted.

All of this is fine if you don't work with others. The point of these tools is to standardize around something to reduce the cognitive load someone has to experience contributing to code that they didn't write. The amount of possible paths are commonly reduced for the reader. Linting, snippets, autocomplete, are all things that prevent you from bending the nail or breaking off the head which makes maintenance harder…

High-friction languages allow you to pump your codebase full of unbounded coupling and complexity, to turn your codebase into a hypercube of connections (subclasses; interfaces; macros; annotations; DSLs; monkey-patches; etc.) IDEs for these languages give you a fancy N-dimensional submarine to efficiently navigate this "wondrous" landscape. Low-friction programming languages just don't give people all those N dimens…

> subclasses; interfaces; macros; annotations; DSLs; monkey-patches; etc.

I think this excludes every programming language known to man, since 1980 or so :-))

Re: The Era of Visual Studio Code

#565

Earlier quoted context omitted.

I work on TS only project but VS Code doesn't highlight my SQL queries and what part is significantly better? Genuinely want to know. I would switch if it really is.

I found (on a team with a mix of VSC and WebStorm users) that VSCode had better overall support for jump to definition and refactorings: the refactorings, in particular, were more accurate and were less likely to change irrelevant locations or leave usages unchanged. Also, at the time, prettier integrated into VSC better: that may have changed since. (This is mostly for Javascript: Typescript is more Java-like, so In…

> (This is mostly for Javascript: Typescript is more Java-like, so IntelliJ's tooling may be better there.)

What? MS made TS, VS code is written in TS but somehow when it comes to TS, VS code doesn't work as good as JS?

Re: The Era of Visual Studio Code

#566

I'm not a fan of VS Code because everything is a plugin. And plugins are inconsistent, buggy, inconsistently documented, hard to use and find and update and goodness knows who developed them. Plugins can be duplicated, outdated, abandoned and incompatible. But worst of all, a big pile of plugins isn't a consistent integrated product vision. I gave VSCode a solid go, and I had to keep installing plugin after plugin, b…

But Jetbrains IDEs are exactly that a collection of plugins.

Re: The Era of Visual Studio Code

#567
post #141

I use VS Code every day and it's a great platform, but to claim it's the endgame of editors is one big hyperbole. It's a very opinionated piece of software that serves lots of popular niches well right now, but I haven't yet been able to find a mix of extensions that makes it a viable replacement for IntelliJ for Scala, to name one example. I'd expect the next uber popular editor to be optimized towards completely di…

> It's really hard to be effective in any IDE without memorizing dozens of keyboard shortcuts, Curious if you use the command palette much? It should be a decent replacement for route memorization of keyboard shortcuts: How do I format this document agian? Hm... F1;form;enter done. And git push? F1:gpu;enter. Etc. I work on vs code and am trying to improve this area so all feedback appreciated!

> Curious if you use the command palette much

Yes, definitely (I use Cmd-Shift-P a lot, which should be the same thing? I also use Sublime so that shortcut being the same is valuable), but more for things I need to do relatively rarely, as it's an order of magnitude slower than just pressing the respective key combo, plus requires some mindspace (what would I best type to find this?) – so it's not a complete substitute, but still extremely helpful. I'm not sure how I'd manage without. But, say, toggle comment is something I'd rather not do via the command palette, though, too slow and cumbersome, breaks my focus. It's not that great for discovering functionality, either ("autoformat" doesn't work, but might be the first search term I think of, etc.) – but it really helps with all the things I know are possible but that I use too rarely to remember a shortcut for.

I really like what IntelliJ is doing with the Mac Touchbar – that comes much closer to a substitute for memorizing (some) shortcuts for me. Cursor in a class definition, pressing shift gives me "Rename", "Change Signature", "Move Class", with Cmd pressed I get "Show usages", stuff that's somewhat context-sensitive and actually useful, though there's still lots of room for improvement, lots of useful functionality that isn't exposed that way, there could be more context-sensitivity, but it's a good start. It's something I miss a little when using an external keyboard or VS Code (which doesn't seem to support the touchbar yet). I have to look at the thing of course, but then it's right below the screen, so its not like staring at the keyboard while typing, and being able to "just do" these things without any memorization is nice, a little bit slower than shortcuts, but it doesn't break my focus nearly as much. No idea how one might offer something like this on devices with no touchbar, but I think they're on to something there, especially for people who spend only a small part of their time inside an IDE.

Re: The Era of Visual Studio Code

#568
post #221
post #172

Earlier quoted context omitted.

This is also true with TRAMP. Anything in core Emacs, and any package outside it that isn't aggressively poorly written, works transparently with TRAMP. The core utilities for interacting with the OS such as start-file-process are all TRAMP-aware. (Or more specifically, TRAMP provides file handlers which customize start-file-process)

Yeah. TRAMP is magical, and everything just works. And has for years and years.

There is a comment right above yours that contradicts you: https://news.ycombinator.com/item?id=24561943

Re: The Era of Visual Studio Code

#569

Earlier quoted context omitted.

I have to reinstall PlatformIO every time I use the program. It only takes a second but its absolute madness.

I wanted to replace Arduino IDE so bad, but it kinda works. Certainly compared to the pain I experience on PlatformIO.

Arduino also has "Arduino Pro IDE" that's based on Theia, a VSCode fork.

https://blog.arduino.cc/2019/10/25/new-arduino-pro-ide-a-clo...

https://github.com/arduino/arduino-pro-ide

Re: The Era of Visual Studio Code

#570
post #469

Earlier quoted context omitted.

You don't need all the plugins. You just need a curated set. And some of the plugins are fantastically high quality. The Microsoft Python one is excellent, as is the Remote development one. I'm a fan of VS Code because in spite of it having a plug in system, there are great plug ins there. And that one single great plugin is all that is needed (for that specific purpose)

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.…

Yeah, my experience of attempting a very simple refactor (change variable name) with the VSCode Python plug-in is:

“Rope is not installed. Install?” - so I need a package in my virtual env just to rename variables?

“Rope is installed. Refactoring failed”.

Post reply on HN