5 ms·
> I'm sure there's a VSC plugin for that This part of your comments nails 100% why, for me (web developer, 90% in typescript these days), it's nearly impossibl
by ghego1 6y ago
> I'm sure there's a VSC plugin for that
This part of your comments nails 100% why, for me (web developer, 90% in typescript these days), it's nearly impossible to justify paying for an IDE.
Visual Studio code has almost everything that I need, and what it's not baked in, is easily done with a plug-in, which in the worst case I can write myself. But that's really a worst case scenario, since to this date it has never materialized as all my needs are covered by existing, and excellent, plugins.
- mattdeboard 6y agoI used Emacs for 10 years. When I started writing JS almost exclusively at my current job, I switched finally to VSCode (albeit with emacs keybindings). The plugin/extension experience between emacs and vscode is, of course, almost an apples to oranges comparison. But VSCode is much better in that regard in my opinion. I want yak-free IDE. After ten years my Emacs config is a herd of beautifully shaved yaks. VSCode is yak-free, for me, right now.
- gegtik 6y agoSomeone please port org mode to vscode
- ketzo 6y agoThere's actually a couple of decent ports already!
- bartread 6y agoThe problem I've had with VSCode - and also Sublime, as it happens - is that on a moderately large JS project it's something of a CPU hog. Both editors seem to do a lot of indexing, and this is even with loads of ignore folders configured. The irony is that this has driven me to try emacs. I am being driven nearly to distraction by the fact that every single operation seems to almost glory in using a different key combination than any other editor I've ever used. Even TAB can't be used for indentation because emacs is "opinionated" (or, as I prefer to call it, "a twat") about it in most modes, but you can get what you want with M-i. The thing it absolutely seems to nail is performance. I'm getting zero CPU thrashing on the same project, and auto-complete-mode, whilst not quite as good as VSCode's autocomplete, is much better than Sublime's. For one thing it seems to work well across files, even when using ES5 with no typing hints. The payoff in a cooler laptop and longer battery life is worth the sometimes seething frustration in the meantime. (Of course, at the moment I'm squandering most of that extra battery life looking up keyboard shortcuts, but that will pass.)
- dbt00 6y ago> The thing it absolutely seems to nail is performance. I'm getting zero CPU thrashing on the same project, and auto-complete-mode, whilst not quite as good as VSCode's autocomplete, is much better than Sublime's. For one thing it seems to work well across files, even when using ES5 with no typing hints. Speaking of ironic, yeah. Emacs used to be the massive resource hog, compared to it's competition (BSD vi?) back in the day -- the joke was that EMACS stood for "eight megs and constantly swapping", back when 8MB of RAM was a lot. It's just that, after that, they failed to keep up with Wirth's law.
- bartread 6y agoHa! I remember that. The joke had started to come unstuck a bit by the time I first used emacs in 1999/2000 (my own machine had 128MB, quickly upgraded to 256MB of RAM), and we weren't making much use of the multi-user aspects of UNIX, but it still had some currency amongst older hands in the department (and in my first job or two).
- hvis 6y agoDo you use it with lsp-mode or similar? One would imagine that most CPU load because of rescanning would happen in the language server, and those should be the same between VS Code and Emacs.
- Rotten194 6y agoYeah I tried to use Emacs, but the LSP had way worse performance than in VSCode and was very glitchy. I was disappointed because I really enjoyed Emacs in other ways, but I couldn't get that to work reliably. Maybe I was doing something weird.
- hvis 6y agoWhen was that? Emacs 27 (released recently) with native JSON support was reportedly a huge improvement. The `native-comp` branch on master is receiving great feedback too.
- mongol 6y agoWhat does yak refer to? Is it a reference to gnu?
- mwcremer 6y agoI'm guessing https://en.wiktionary.org/wiki/yak_shaving https://en.wiktionary.org/wiki/yak_shaving
- mmm_grayons 6y agoIt refers to yak-shaving, which often manifests as pointless tinkering with meaningless config files. https://seths.blog/2005/03/dont_shave_that/ https://seths.blog/2005/03/dont_shave_that/
- deleted 6y ago[deleted]
- rtpg 6y agoI was a big Jetbrains person for a while, Emacs with LSP mode has been a bit hit-or-miss but Typescript has been _very good_ in that front. It really depends on you wanting to use something like Emacs, of course.
- madeofpalk 6y agoIn saying that, it's astonishing how much the the smart IDE features are better in Visual Studio/C# compared to VSCode/Typescript. The text editor in VSCode is better than VS (multi cursor support isnt great in VS). I would love to see VSCode get the smart refactor features from Visual Studio, working with Typescript.
- pault 6y agoI would hazard a guess that this is more to do with the soundness of C# relative to TypeScript, which had to make many sacrifices to stay compatible with decade old JavaScript conventions.
- copperx 6y agoI almost agree; but in my experience, JetBrains IDEs are worth every cent. I am more productive on them than in Visual Studio Code, even for "simple" tasks, like raw HTML/CSS/JS editing.
- ajkjk 6y agoWeird, I can't stand them. Mine falls over on a moderately sized project and it feels like it's always melting while re-indexing-- which also totally blocks inspection operations.
- Aeolun 6y agoIn my experience, indexing takes longer, but after that the autocomplete is actually instant, as opposed to VS code’s ‘lets wait 10 seconds to show you the hint you might want to automatically import this’. I’m flipping between Jetbrains and VS code a bit, but Jetbrains is by far the superior experience.
- OOPMan 6y agoThat sounds like a hardware issue. If you're going to roll Jetbrains then the more RAM the better and a good CPU also helps. Obviously, this means MacBooks that aren't fully kitted out are bad picks.
- jeroenhd 6y agoThe proactive indexing sure does require a decent CPU and a good bunch of RAM, but most developers have both these days. I've noticed on Windows that anti-virus is a major bottleneck for Jetbrains editors, even with a decent CPU and plenty of RAM. In my experience, the lazy autocomplete takes less resources at start but the result is that autocomplete suggestions are loaded in as files are being parsed. The larger projects grow, the slower this process is. I suppose slower CPUs like the i3 series and low i5 series Intel chips will probably have a lot of trouble with the indexing. You need a laptop with a decent sustained core speed to do the work (which can be a major deal breaker in cheap Windows laptops and the lower tier Macbooks), but the few seconds wait you get on a professional machine when a project gets loaded in is well worth the wait to me.
- RussianCow 6y ago> it's nearly impossible to justify paying for an IDE. The reason I pay for IntelliJ IDEA is exactly the fact that I don't have to install any plugins, or fiddle with config settings, or really do much of anything; the product works extremely well out of the box with all of the IDE features I would ever want (and then some). The last time I seriously tried VS Code[0], I felt like I was constantly trying different plugins and changing various settings in order to get it working the way I want, and many of them weren't quite as polished as what I get immediately with IntelliJ. [0]: Admittedly, this was over a year ago, so it's possible things have improved. But I'd rather pay $89/year than spend the time to find out.
- bredren 6y agoI’m a heavy pycharm user and have found there are plugins that handle gaps in the IDE. Some of them are for minor customization like hot keys to move tabs. But the product doesn’t support Environment Variable configuration very well. For example, Pycharm can’t injest a .env file. The devs point at a plug-in, but that doesn’t cover runtime and terminal / python shell.