8 ms·
As much as I wanted to like and use VS Code, Electron base still ruined it for me. If it was some other app where I do not expect instant snappiness and lower m
by ssijak 9y ago
As much as I wanted to like and use VS Code, Electron base still ruined it for me. If it was some other app where I do not expect instant snappiness and lower memory usage, for example, Slack (also Electron app), I would swallow it, but for an editor, I can`t.
- veidr 9y agoI upvoted you to try to offset the misguided downvotes. That is indeed the worst thing about VS Code. I have my computer configured so that most file types open in Sublime Text for that reason. For projects with a lot of TypeScript I'll open a project folder in VSCode, and then just leave it open indefinitely. Because that part is annoyingly slow, as you say. I find it less annoying than Slack, though — seems to me that once VSCode is open and focused on what you want, it is a lot faster than Slack at all the basic operations (switching files/channels, searching, etc). Slack feels more like most other Electron apps I have tried — slow enough at just about every little thing to be constantly annoying.
- davedx 9y agoWhy do people use desktop Slack? I always run it my browser, I just don't see the value proposition of a native application?
- smcl 9y agoFor me it's just saving me from minor inconveniences. Things like having an app I can easily switch to instead of flicking through many browser windows/tabs to dig it out.
- mrweasel 9y agoDon't it get lost or closed by mistake all the time? To me much of the value of a separate app is being able to cmd+tab between application and I frequently just close my browser be get remove all windows and tabs. I like the compartmentalisation of separate apps, but I doesn't really care if it's written as an Electron app, as long as reacts fast enough.
- Vinnl 9y agoNot OP, but my browser is open pretty much all the time, and pinning tabs ensures they don't get lost.
- teh_klev 9y agoSo today I just learned you can pin tabs :)
- nojvek 9y agoI have GitHub, slack, Gmail, calendar and JIRA always pinned. That’s my most used web apps. Can’t imagine them each having a desktop app. I would just get lost switching tabs.
- Vinnl 9y agoNext lesson: you can switch to the n'th tab using Alt+<n> (or perhaps a different modifier key depending on browser and OS). Since pinned tabs appear on the left-hand side, that means you'll always have e.g. Alt+1 for email, Alt+2 for calendar, etc. (Nice and related is that you can do Super+<n> for window switching in at least Windows and Ubuntu.)
- mikewhy 9y agoPinned tabs still get closed with Ctrl/Cmd+Shift+W, which is a bit of a drag. I make SSB apps for my most used websites, for me it's much faster than: - switch to chrome - switch to chrome window with pinned tab - switch to pinned tab
- jorvi 9y agoI try to offload as much stuff from the web and into the desktop because it means I can do all my window management with cmd+tab and Spectacle. If something lives in the browser I have a second layer to manage with ctrl+tab, slowing me and increasing mental load. My full setup is cmd+tab for application switching, Spectacle for window ordering, and ctrl+arrows for switching Spaces. Space 1 is my 'grab-bag' desktop, Space 2 is my browser windows, Space 3 is all my code editing stuff, Space 4 is messaging (Telegram/IRC/Slack) Space 5 is Spotify and Space 6 is Mail and Calendar. All applications are 'pinned' to only open in their respective Space, but can be dragged to another one manually. I like to think of it as a best-of-both worlds hybrid between stacking window management and tiling window management :)
- salvar 9y agoTo me a native application just feels more... native. If everything is in the browser then the OS just becomes a secondary thing.
- pc86 9y ago> native application Since when is Electron running a web view a native application?
- atomi 9y agoI can see that if you close your editor often. I don't. By the way checkout GitLens on VS Code.
- spinningarrow 9y agoI don’t think Electron is entirely to blame e.g. I tried the Discord app and it was amazingly snappy (just install both Slack and Discord and you can feel the difference).
- drdaeman 9y agoJust compare VSCode with Atom - both Electron apps, both text editors, both extensible in JS. I can't realistically measure input lag and stuff, but for example... With both having lots of extensions doing approximately the same, startup time is order of magnitude different. (And once upon a time I thought Emacs was bad in this regard, huh)
- merlish 9y agoI actually really want to know how Discord does it. Do they actually use the DOM, or just draw everything themselves? Honestly, anyone who hasn't used Discord, I'd recommend installing it just to try it, especially if you're a SPA web developer or you work with Electron. The performance beats native apps, even dealing with very long sections of text that need to be swapped in and out as you scroll. However they're doing it is probably the way we should be building Electron applications industry-wide.
- acdha 9y ago> Do they actually use the DOM, or just draw everything themselves? The DOM is fast — what's slow are toolkits or poorly structured code which issues many redundant or poorly timed updates which forces the browser engine to do unnecessary updates.
- spinningarrow 9y ago> I actually really want to know how Discord does it. I tried asking them on Twitter and the reply was ‘magic’.
- hasenj 9y agoWhy is Slack being an Electron-based app more tolerable? I find it absurd that you need a whole browser to make a chat app.
- ssijak 9y agoMore tolerable in a scence that I could live with 1-3s occasional actions in it (switching organisations for example). Not saying that it is good. But I will tolerate that more than the editor hanging on large files or taking to long to process actions which should be instantanious.
- xfer 9y agoHow much memory does it use? My emacs instance uses ~200M with a moderate amount of files(along with other processes mostly repls). I would imagine VSCode to be in the same ballpark, and 200M is not that of a big deal imo.
- SaturateDK 9y ago177 MB for me, right now. However that's just the windows task manager, so it's properly not accurate.
- throwaway613834 9y ago> 177 MB for me, right now. However that's just the windows task manager, so it's properly not accurate. I don't see why it shouldn't be. Just make sure you're reading the right column. In this case I think you want to look at "Commit Size".
- barrkel 9y agoTask manager shows working set by default. Working set is affected by things like minimizing the application, it'll also usually shrink if the application has been left idle for some time and other applications are being used. Whether it's the right column or not depends; it's more of an indication of how much the OS feels that it needs to hand over to the process, than how memory-hungry the process is. Private bytes might be a better number for that; OTOH if many of the bytes aren't touched, then they don't count for much. I wrote up an explanation for some of the other columns a few years back: https://stackoverflow.com/a/2031886/3712 https://stackoverflow.com/a/2031886/3712
- throwaway613834 9y agoThat's why I explicitly said you have to look at the correct column though: you need to look at Commit Size, not Working Set.
- 9y ago
- yodsanklai 9y ago> Electron base still ruined it for me It works just fine for me. It's just as usable as any other editor. It slightly less snappy that vim in a terminal, but it doesn't make much of a difference most of the time. I still use vim occasionally though in some contexts (single file editing, constraint environment...).
- Sean1708 9y agoI think there are a lot of people who open and close their editors pretty regularly, I can imagine that the start-up time for VSCode can become quite significant to those people.
- pjc50 9y agoWell, the regular Visual Studio is a native app and has terrible performance and memory usage too. (joking but also serious)
- m_fayer 9y agoThe regular Visual Studio uses about the same amount of memory as VSCode while being an order of magnitude more complex and feature-rich.
- berdon 9y agoA small bit of anecdotal evidence: We have a solution with around 30 projects in it - this solution consumes around 1.25gb of RAM in Visual Studio. In contrast, the same solution in VS Code open along with two other windows open to other solutions are using a total less than around 300mb.
- m_fayer 9y agoI use VSCode to work on medium-sized VueJS+TypeScript projects (maybe a grand total of 200 code files), and it regularly consumes around 800mb - VS territory. Perhaps it's very sensitive to how it's configured/what plugins are installed.
- balefrost 9y agoDo you use ReSharper? Keep in mind that it adds a good chunk of overhead.
- megaman22 9y agoYet I have 32 GB of RAM on my machine, and rather than use any of that, VS2017 will just use < 2GB, and swap constantly on large solutions. The 32-bit restriction is getting ridiculous. Its the main reason I'm excited about Rider.
- EpicEng 9y agoI assume you use ReSharper? I have a 1M+ LOC C++ application that I work on regularly and have never had a performance issue. There was definitely slow down when I moved from VC6 to VS2005, but man, that was so long ago.
- wvenable 9y agoI'm a little bit philosophically opposed to Electron based apps but VSCode has been nothing but snappy for me on all matter of low-end machines and virtual machines I've used it on.
- Shorel 9y agoQuoting myself: >If there were no other way to code a text editor I could accept the idea of Atom. But with faster alternatives, it is just an exercise in consumerism. Wasting computing power for the sake of wasting computing power. >It's the rolling coal of computers.