Live data from Hacker News

Improving startup time in Atom with V8 snapshots

blog.atom.io

41–50 of 173 posts

Re: Improving startup time in Atom with V8 snapshots

#42
post #36
post #22

Earlier quoted context omitted.

I hope you're right that this goes the way of emacs. I've been productive in emacs for 30 years, but I'm growing impatient for emacs to get a real programming language with lexical scoping like they were talking about doing with Scheme 20 years ago. Despite its lack of macros, JavaScript is arguably a better Lisp than Emacs Lisp. I've toyed with Atom a couple of times recently and am seriously thinking of switching.

Emacs Lisp in GNU Emacs has now lexical scoping...

Oh cool how did I miss this? https://www.emacswiki.org/emacs/DynamicBindingVsLexicalBindi...

Re: Improving startup time in Atom with V8 snapshots

#43
post #35

Earlier quoted context omitted.

Must every thread about VSCode and Atom start the same way? It's a trade off: performance for a cross platform JavaScript app development. If that is a tradeoff you don't have to make, don't do it. Atom and VSCode have made that tradeoff. I don't know what rehashing this can possibly accomplish.

> Must every thread about VSCode and Atom start the same way If many people believe this is the case, why not? All articles get some common types of responses based on the topic, this is just one topic/response combo that you happen to disagree with. > It's a trade off: performance for a cross platform JavaScript app development. It's an unnecessary tradeoff. If a single developer can create ST from scratch for Windo…

If this was truly that simple, don't you think someone would have already done it? Furthermore, is there even an actively maintained, open source, cross platform, development-focused text editor with native UI components?

Re: Improving startup time in Atom with V8 snapshots

#44
post #25
post #20

just tried the beta its still pretty slow :(

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.

Re: Improving startup time in Atom with V8 snapshots

#45
post #8
post #6

Earlier quoted context omitted.

What kind of application are you building?

Electronics design software. :) Most of the time is spent doing fine collisions with shapes coming out of an R-tree to build up a connection graph. For the vast majority of designs, it's fast. For very dense, imported designs, it can get slow. (No two tools keep data in the same form, so translating leads to inefficiencies.)

That sounds less like startup inefficiency and more like the application doing actual work on startup. Have you tried caching it?

Re: Improving startup time in Atom with V8 snapshots

#46
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

And sendmail long ago (pre-sendmail 8) -- it used to dump out a binary image of itself after parsing sendmail.cf to speed up startup.

Re: Improving startup time in Atom with V8 snapshots

#47
post #31

Google long ago released Snappy Start, a tool for snapshotting processes, saving the full state to disk, so new instances can be launched faster. This is a more general Checkpoint-Restore capability than V8's impl and a bit different, but definitely somewhere in the same field of computer technology. https://github.com/google/snappy-start

Seems also related to CRIU, which does something similar, but for the purposes of live migrating a process from one host to another. https://criu.org/Main_Page

Re: Improving startup time in Atom with V8 snapshots

#48
post #30

From the article it sounds like they're basing these tests off probably their dev machines. Seems like they should be trying this out on slower machines.

It sounds to me like they are testing it on slower machines (specifically slower hard drives), as they specifically call out one of the "smaller" optimizations as having a significant impact on machines with slower hard drives.

It sounded to me like they were extrapolating though, "This resulted in a ~100ms improvement on a fast machine with an SSD but, since most of this work was I/O bound, we expect it to be even more noticeable on slower hardware." This in fact was where I drew the inspiration for my comment from.

Re: Improving startup time in Atom with V8 snapshots

#49
post #22

Earlier quoted context omitted.

I hope you're right that this goes the way of emacs. I've been productive in emacs for 30 years, but I'm growing impatient for emacs to get a real programming language with lexical scoping like they were talking about doing with Scheme 20 years ago. Despite its lack of macros, JavaScript is arguably a better Lisp than Emacs Lisp. I've toyed with Atom a couple of times recently and am seriously thinking of switching.

See, I just don't understand why you would want to use emacs over an editor that does all the work for you. Thats why I avoid it, it seems like a big cost that I don't have to pay if I just use a different editor.

Whether an editor needs to be programmable or not depends on what "all the work" is. If you're doing the same exact work as everybody else then certainly a programmable editor is overkill. If your work is different, then programming is how you tell the editor what it means to do all the work for you.

Re: Improving startup time in Atom with V8 snapshots

#50
post #37

Earlier quoted context omitted.

I don't consider emacs successful. Succesful among fanatics, maybe, but I don't consider is valuable to a serious programmer. Also, surely it's not that hard to switch languages? In my experience all languages are essentially the same.

> In my experience all languages are essentially the same. That's the problem: you don't seem to have enough experience.

I dont seem to have much experience? Based on what? For having a different view than you? Isnt that a little naive?

So as far as actually talking about my point goes, what exactly am I missing? There are small differences but I've never seen a language that I couldn't get up and going in over the course of a week.

How much experience do you think I have? I've used plenty of languages, and I'm well aware that there are nuances.

Post reply on HN