Live data from Hacker News

Improving startup time in Atom with V8 snapshots

blog.atom.io

141–150 of 173 posts

Re: Improving startup time in Atom with V8 snapshots

#141
post #11

New world, same old problems. Fascinating to see how this parallels the way Emacs tackled this problem long ago. - https://lwn.net/Articles/673724/ - https://news.ycombinator.com/item?id=11001796

Is Coffee-Script still a thing? Looking at Atom source code it's still 80% in Coffee-Script. Why hasn't someone rewrote (eg transpiled and than refactored) it in JS with hand-tuned optimisation? https://github.com/atom/atom/tree/master/src

Re: Improving startup time in Atom with V8 snapshots

#142

Earlier quoted context omitted.

And here's a relevant explanation from drfuchs. https://news.ycombinator.com/item?id=13076098 I quote it in full, here: OK, if you promise to stay off my lawn, I'll explain the history behind undump. Back in the 70's, the big CS departments typically had DEC 36-bit mainframes (PDP-10, PDP-20) running the Tops10/Tops20/Tenex/Waits/Sail family of operating systems. These are what Knuth used to do all of TeX, McCarthy L…

Hey! I don't get the karma points?!

Sure you do (at least one from me)! You'd get more though if you somehow reintroduced this lovely way of doing things back into the mainstream. I guess we sort of have it again with VM snapshots, but that's not nearly as elegant. I love the idea of having a persistent memory state that can be examined or reentered. That's how it should be!

Re: Improving startup time in Atom with V8 snapshots

#143
Is there any way not to conclude they have just been out designed/architected/optimized by Microsoft?

What a compliment to the VSC team that after all this work, Atom still doesn't seem to match startup time, or more importantly perceived performance while editing.

It's a more interesting comparison since they're both bound by similar constraints, and building cross platform apps.

In the bad old days I once worked for a MS competitor where there were often complaints of unfair competition. Most often around how knowledge of closed sourced OS internals allowed optimization insights unavailable to others.

Not all MS devs are great for sure, but I'm inferring two things here. The VSC team is pretty damn good, and that IP and institutional knowledge from decades of investment in dev tools probably helps a bit.

Re: Improving startup time in Atom with V8 snapshots

#144

I love it when new problems can be solved in old ways. In physics we say there aren't 10,000 problems there are just 10,000 manifestations of 5. And it really seems like that's true here. Maybe we should stop laying off people for being old lol.

The industry is doing fine without the old workers with outdated skillsets. Correctness does not matter as much as velocity to release.

No, industry is pushing food around the plate, and has been for some time. It must have been amusing (to some) to see WebSockets arise, when TCP sockets do the same thing. Why is a new standard needed? Because firewalls block everything but port 80 and 443, and every other program that uses non-HTTP sockets has all-but-died off (with the exception of some games).

90% of the "innovation" in application programming is just an exercise in combinatorial virtualization.

(That said, it's not all bad. The browser has had a remarkable and wonderful effect on GUI application architecture that probably wouldn't have happened elsewhere.)

Re: Improving startup time in Atom with V8 snapshots

#145

Is there any way not to conclude they have just been out designed/architected/optimized by Microsoft? What a compliment to the VSC team that after all this work, Atom still doesn't seem to match startup time, or more importantly perceived performance while editing. It's a more interesting comparison since they're both bound by similar constraints, and building cross platform apps. In the bad old days I once worked fo…

I'd offer the alternative theory that the VSCode team learnt everything they could from Atom's past mistakes.

Speed is only one of the issues–I'm actually quite happy with Atom in that regard. VSCode has a much more restricted API, and a more robust extension system. With Atom, I always felt like extensions started interfering with each other, and with the 'vanilla' experience. OTOH, I was exploring a few ideas, such as inline rendering of comments in markdown, and that's really only possible in Atom.

Re: Improving startup time in Atom with V8 snapshots

#146

I'm way more worried about memory issues while running. Atom take up 1 gig+ with very little open. It pushes all my other tools out of RAM and into swap. Switching to the browser to see documentation takes a few seconds if I'm lucky. Compiling a few more seconds to page in. Ssh a few more. Everything on my laptop slows to a crawl as they fight for RAM with Atom taking up the way more than it should. I know the answer…

Sounds like you're running on 4GB of RAM, which in today's dev world is nothing, I've been on 16GB for over 3 years and have yet to worry about RAM being a limiting factor.

I'd say buy some more RAM, it IS cheap and you never have too much.

Re: Improving startup time in Atom with V8 snapshots

#147

I'm way more worried about memory issues while running. Atom take up 1 gig+ with very little open. It pushes all my other tools out of RAM and into swap. Switching to the browser to see documentation takes a few seconds if I'm lucky. Compiling a few more seconds to page in. Ssh a few more. Everything on my laptop slows to a crawl as they fight for RAM with Atom taking up the way more than it should. I know the answer…

Atom is far from the only option. There are plenty of better text editors that will fly on that machine.

Re: Improving startup time in Atom with V8 snapshots

#148
post #44
post #25

Earlier quoted context omitted.

About 10 seconds of startup opening a directory, from terminal to loaded workspace. I'm on a MacBook Pro (Retina, 13-inch, Early 2015). I have 76 community plugins installed.

76? Daaam. I thought I was overdoing it at 53. (If anyone wants to check: ls ~/.atom/packages | wc -l # minus 1 for the README Have you checked Timecop? (cmd-shift-p, "timecop") Might be a few you can do without.

And here I was thinking I needed to start slimming down at 23.

Re: Improving startup time in Atom with V8 snapshots

#149
post #125

I'm way more worried about memory issues while running. Atom take up 1 gig+ with very little open. It pushes all my other tools out of RAM and into swap. Switching to the browser to see documentation takes a few seconds if I'm lucky. Compiling a few more seconds to page in. Ssh a few more. Everything on my laptop slows to a crawl as they fight for RAM with Atom taking up the way more than it should. I know the answer…

What is cheaper, more memory or a SublimeText license?

Depends on the region you're in. Around here an 8gb ram module costs the same as a sublime text license.

I'll take the license.

Re: Improving startup time in Atom with V8 snapshots

#150
post #11

New world, same old problems. Fascinating to see how this parallels the way Emacs tackled this problem long ago. - https://lwn.net/Articles/673724/ - https://news.ycombinator.com/item?id=11001796

I don't recall overcoming long startup times in vi and vim . Did I miss something?

Not necessarily. You might just be extra patient, or not use many plugins, or only use well behaved ones that down slow down startup that much. I remember years ago when I used Vim I had pretty slow start up time for a while but narrowed the problem down to one plugin I decided I could live without (can't remember which one it was, though).
Post reply on HN