
Atom text editor 1.4 released - seanwilson
https://github.com/atom/atom/releases/tag/v1.4.0
======
leejoramo
I continue to want to like Atom, and I try it out several times a year. Just
updated, and see that it still has big performance problems on my system. I
currently have BBEdit and SublimeText open for real work, and these are apps
the have been running for days.

Here 100% would represent full usage of a CPU core:

BBEdit:

    
    
        15 files open (various types/sizes)
        76MB RAM 
        < 2% CPU
        1 process
        25MB app disk space
    

SublimeText:

    
    
        10 files open (various types/sizes)
        169 RAM
        < 2% CPU
        1 process
        27MB app disk space
    

Atom

    
    
        1 small Markdown file open 
        > 1.2GB RAM !!!!!!
        > 85% CPU 
        7 processes
        205MB app disk space
    

Just sitting in the background I am seeing Atom's CPU and RAM usages fluctuate
wildly. The numbers above are the LOWEST I observed.

I will spend a little time looking into why this is happening. I certainly
could be related to some add-on package that I have installed, but I don't
every recall seeing BBEdit or SublimeText behave so poorly with all of the
customizations I have thrown at them.

Update: added disk space for base app. Even with a 500GB SSD, Atom would make
me think about its value vs space usage.

Update 2: the system specs. 2011 MacBook Pro 13-inch, 2.3GHz i5, 500GB SSD,
16GB RAM, OS X 10.11.2

Update 3: performed a clean reinstall of Atom, removed all third party
packages, removed preference files, disabled Markdown preview. Atom is still
using over 80% cpu and greater than 1GB RAM with one short markdown file open

~~~
leejoramo
To summarize my above findings.

For me the biggest problem here is the high CPU usage when the app should be
_idling_. That KILLS battery life. I would not accept this behavior from high
end video software, I certainly will not accept it from a text editor.

Following that the high RAM use can lead to swapping which will impact
performance and battery live. As I said above after a clean install, and with
just one short markdown file open, Atom is now using over 2GB RAM and
Climbing. Fortunately, I have 16GB RAM on this system, otherwise I would
already be swapping.

BBEdit and SublimeText never tax the CPU unless I am working with extremely
large files, or doing search & replace on a huge number of files. I often will
have 50 to 100 files open for days in these editors.

I like the evolving ecosystem of Atom, it now looks to be about on par with
Sublime, and I can see that it will soon over take Sublime on that front. But
it really need to get the resource utilization under control.

To be fair to Atom, I also tried installing it on a Mac Mini with an almost
clean Mac OS X 10.11 installation. I had similar problems.

~~~
stymaar
> BBEdit and SublimeText never tax the CPU unless I am working with extremely
> large files […] it really need to get the resource utilization under control

Neither does Atom for most users. It's not just n problem of «resource
utilization», you're clearly facing a bug … Maybe you should consider
submitting an issue
([https://github.com/atom/atom/issues](https://github.com/atom/atom/issues))

~~~
leejoramo
I see a number of current CPU related issues for Atom. I will look into using
the performance diagnostic tools and see if I can contribute any new insights.

Again, I am see the issues on admittedly rather heavily customized workhorse
MacBook (lots of Unix level tweets), AND on my stock Mac Mini. So I don't
think this is a case isolated to just me.

~~~
leejoramo
As noted in this thread, I solved my problem, and filed an issue:
[https://github.com/atom/atom/issues/10421](https://github.com/atom/atom/issues/10421)

------
cageface
The decision to base Atom on web technologies remains controversial and it's
still not as snappy as Sublime, for example, for similar tasks. But I think
that decision has been vindicated by the speed of development it's made
possible. Since the bar to entry for contributors is so low the ecosystem
that's developed around Atom is second to none. You can find a package for
just about anything and the UI polish of a lot of these packages is much
higher than I've seen for any other editor, thanks to the ability to leverage
modern HTML, CSS & JS.

Atom may never be as fast as a truly native client but it's perfectly usable
now and is increasingly leaving the competition in the dust when it comes to
features.

~~~
mintplant
For all the extensibility and speed of development, the Atom ecosystem is
still missing features I can find in any other major editor. Off the top of my
head, there's no way to automatically (hard) word-wrap text. The vim plugins
only implement the basics, and they all seem to be missing the command bar
entirely.

~~~
yalestar
Here's a nice plugin to add the vim command bar:
[https://atom.io/packages/atom-vim-colon-command-on-
command-p...](https://atom.io/packages/atom-vim-colon-command-on-command-
pallete)

~~~
mintplant
Sadly that only supports four simple commands.

------
cryptos
The development of Atom shows a common anti pattern of software development:
choosing the technology first. The goal was to develop an editor with web
technologies, and not to develop the best editor in the world. The result is
as sad as foreseeable: a buggy and slow memory hog named Atom. When I tried it
last time, a couple of days ago, it was impossible to enter an @ sign into the
text area.

~~~
jonpaul
> not to develop the best editor in the world.

The problem is that "best" is subjective. I think one could more accurately
say that they're trying to develop an editor that is easily extensible with
technologies familiar to many developers.

i.e. your perception of what they want Atom to be and the reality of what they
want Atom to be are probably not the same.

My take? Revisit this in five years. I bet it'll be one of the richest
ecosystems in software development. As one who has written Atom plugins (live
unit testing w/ real-time feedback), I've never encountered such a developer
experience until Atom.

------
Atom4966
Please note:
[https://github.com/atom/atom/issues/4966](https://github.com/atom/atom/issues/4966)
remains open and packages `metrics` and `exception-reporting` are still
enabled by default.

* metrics: sends personal data to Google Analytics

* exception-reporting: sends personal data to bugsnag.com

~~~
AlexeyBrin
The good part about using an open source editor is that you can disable (and
know about them) these packages if you don't want to be tracked.

~~~
PhilipA
Yes, but you first have to know about it.

------
michaelwww
I'm really enjoying the innovation that is happening in text editing. I prefer
Visual Studio Code for light weight editing. Both Atom and VS Code are built
on the Electron [1] engine but "VSCode uses Monaco for the user interface, not
Atom. It is the web editor which Microsoft developed for Visual Studio Online.
Electron is just the common core between the two applications. You can think
of it like different programs using the same .NET framework, or two games
built on top of the same engine." [2]

Both are fine editors and I use both [Ubuntu versions] in different contexts.
It's fantastic that both are open source. That's were Sublime Text 3 loses me,
because it is proprietary. I agree with some of the concerns raised in this
thread, but realize some see closed source with one benevolent dictator for
life as a benefit [3]. Other editors I'm keeping and eye on are Adobe Brackets
and Facebook's Nuclide. LightTable is interesting. I have given vim and emacs
a spin, but I am not a keyboard jockey. Aint we got fun!

[1] [https://discuss.atom.io/t/visual-studio-code-and-
atom/16479/...](https://discuss.atom.io/t/visual-studio-code-and-
atom/16479/12) [2]
[https://en.wikipedia.org/wiki/Electron_(software_framework)](https://en.wikipedia.org/wiki/Electron_\(software_framework\))
[3] [https://forum.sublimetext.com/t/sublimes-future-and-open-
sou...](https://forum.sublimetext.com/t/sublimes-future-and-open-source/7424)

~~~
jarcane
Brackets was quite nice for what it can do out of the box, but I found the
community support very poor, so there's really not much _more_ than that it
can do.

LightTable was a clever idea that never quite fit my workflow, and which as
far as I can tell is basically dead. The creators have abandoned it, and the
surviving maintainer support is of the "pull requests welcome" variety. There
are glaring bugs in basic features like inline eval, and maintainer response
was a combination of "eh, we're cutting that feature anyway" and "fix it
yourself."

Sure as hell doesn't give me any hope that this "Eve" thing their hyping is
anything but smoke and mirrors.

~~~
13years
I'm still using and prefer Brackets. Starting using it because it's
performance was better than any other prior to VS Code.

However, Brackets new instant search is awesome and no other editor has it.
For large projects I find it a great feature to be able to search all files in
realtime as you type.

~~~
bdisraeli
Unless I'm totally missing the point of the instant search feature, this is
definitely something you can do in Emacs[1], and something I believe I've seen
co-workers do in Sublime.

[1] [https://github.com/syohex/emacs-helm-ag](https://github.com/syohex/emacs-
helm-ag)

~~~
13years
At a cursory glance, I'm not sure it is the same. Brackets keeps some type of
index. So there is zero delay whenever you perform a project wide search.

Looks like Emacs helm uses Silver Searcher which is real time, but
impressively fast.

------
rplnt
Haven't tried it since launch, and while it's still insanely HUGE for a "text
editor", I find it much faster. It was unusable back then, now it seems to
work. Startup time used to be longer than the OS itself (well, not really, but
you get the point), now it's somewhat reasonable.

Do you use "in production"? Is it OK?

By the way, Find seems to be only working on three or more characters? How do
I find two-letter substring? :)

edit: Regexp find is a bit slow overall (one 5-line file). Like it is waiting
for a while before commiting to updating the UI. And that's on an i7 desktop,
can't imagine it working on my Celeron laptop (but will give it a try later).

~~~
glenndebacker
The install size doesn't bother me personally (although my colleague's with
newer Macbook Pro and smaller SSD may have an other opinion) but the speed of
the editor is important for me.

It is fine for smaller simple files but I have had occasions that with some
text files it can be really slow to a point that it is unworkable.

Last I was working on a HTML5 game and I copied the base64 encoded version of
a font into my file that handled the assets and boy was that a bad idea. The
preload.js was just 49KB but one big base64 encoded line made atom choke...
Textwrangler or sublime didn't crimp on the same file and opened it in an
instant.

Granted my Macbook Pro is old but a i7 with 8Gb RAM should be able to deal
with these kind of situations.

~~~
Klathmon
Yeah atom has always had issues with files over a few kb that are all on the
same line.

If the file doesn't have any crazy long lines, i've had it handle 5mb+ files
with no issues.

~~~
PlzSnow
_" i've had it handle 5mb+ files with no issues."_

Wow! It's so exciting living in the 1990s!

~~~
Klathmon
Okay, if you want to be a dick about it.

I've had it handle 5GB+ files with no issues.

I've got a 6.3gb log file open in it right now.

~~~
PlzSnow
Try doing a find/replace/syntax highlight/multiple cursor/anything productive.
Actually don't, your computer will explode!

~~~
Klathmon
find/replace works fine, and it's an XML file so syntax highlighting is
working great (although it does take a few hundred ms to actually apply the
syntax highlighting after a lot of scrolling)

It did take about 2 seconds to load the file though, so you can make fun of
that!

~~~
kedean
On a more constructive note, I've found that it does have significant problems
with certain text structures, namely really long single lines.

Just the other day I had to debug a json serializer, so my q&d solution was to
copy the text out of the eclipse debugger, paste it into Atom (as it was
already open), then find my way to the section I was looking for. After
significant delays getting to the spot I needed with 'find', any use of the
left and right arrows to navigate the text further was accompanied by a ~5
second delay per character. The same operation in Notepad++ went smooth as
butter.

~~~
Klathmon
I agree 100%

I'm not sure specifically what it is, but it seems longer lines just wreck the
performance.

I've seen a few commits talking about fixing specific problems that have
caused this in the past, leaving me to think that it's most likely either one
or more of my plugins causing the issue, but i just haven't cared enough to
look into it yet.

Just like you I keep Notepad++ around for my "quick" needs (open a file for
less than a minute) and for big files that aren't "code-ish" (they have long
lines), and then atom is used for everything else.

------
josteink
I find the momentum which Atom has gathered to be impressive. It seems to be
building up an ecosystem at quite a rapid speed.

Myself, I prefer Emacs, because I like it's base philosophy ( _everything_ is
a text-buffer, _everything_ is hackable LISP) and the endless possibilities
that provides in form of customization, extensions (and extension on
extensions, and customization of those, etc etc).

I don't think Atom is quite there, or ever will be. It will be interesting to
see if if has the staying power of Emacs, or if it will yet another TextMate,
Sublime Text or whatever hip text-editor of the month there has been the last
decade.

~~~
k__
Yes, many nice features are missing.

I mean, you have to code your themes, therefore you have to know much stuff
about the editor. In many IDEs you can just load a them and get a config UI
that lets you fine-tune it.

~~~
yAnonymous
You can style it using CSS. How much easier could it be?

~~~
josteink
I've heard that Atom doesn't really reuse CSS or (SASS/LESS sheet variables)
in any meaningful way, meaning having consistent theming is hard, at least if
you want to use extra modules and plugins.

He may be thinking about that?

------
qwertyuiop924
Atom: Now one step closer to being emacs. Now all you need is a proper text
buffer model, instead of the clumsy hack you've got now, and lisp as an
extlang. Wait, you already have that because clojurescript. So now you just
need better APIs, and a proper buffer model.

While I am a diehard emacs user, I considered using atom for light editing
(short enough that I'd want proper highlighting/indent support, but not long
enough to get emacs out), but the lack of uniform buffer treatment was a
dealbreaker for me. If you can't switch between settings and terminal screens
using the same mechanism you switch between text screens with, and it all of
the above don't have the same underlying mechanism, than you're doing it
wrong.

~~~
SpaceCadetJones
Do you know of any examples out there on how to write plugins using
ClojureScript? I got into Emacs a few months ago, but have been considering
switching over to Atom so I can write plugins in CLJS

~~~
qwertyuiop924
[https://github.com/MarcoPolo/atom-paredit](https://github.com/MarcoPolo/atom-
paredit)

I'd also recommend looking at the atom api docs, if you really want to switch.

~~~
SpaceCadetJones
Thank you, this looks like a great minimal yet complete plugin. I'll have to
try and hack my own together this weekend.

~~~
qwertyuiop924
You're welcome :-D.

I'd recommend sticking with emacs though. CLJS is a better lisp than elisp,
but emacs is a better platform than atom.

------
unsignedint
One thing I noticed about Atom is that it doesn't handle (or preserve) Byte-
Order-Mark and that wrecked havok on one of Unity project I was editing
before.

I liked the design of Atom, but for this reason, I guess it's not the time for
me to give up Emacs yet

------
cdnsteve
Been using sublime, code and atom. Atom seems to freak out in unexpected ways
and has the downside of spewing tose node.js errors.

Code and sublime just seem more solid. I don't need explosions in my editor
when I'm focused.

------
catshirt
not calling anyone a liar, consider it an anecdote, but i've used Atom
exclusively for over a year and it performs great.

~~~
k__
Well, I'm coming from WebStorm and in contrast to that it works just great ;)

~~~
xiaoma
With the notable lack of "click through to definition"!

~~~
13years
Brackets can do this. Ctrl/Cmd E will open definition inline.

------
osdf
If you like vim and spacemacs, give proton-mode a shot:
[https://atom.io/packages/proton-mode](https://atom.io/packages/proton-mode)

------
mparramon
If you're thinking on taking the plunge from Sublime Text, here are some setup
notes aimed at web developers:
[http://www.developingandstuff.com/2015/04/setting-up-atom-
fo...](http://www.developingandstuff.com/2015/04/setting-up-atom-for-rails-
development.html)

~~~
tobr
Haven't tried Atom for about one and half years; at that time it was a
performance trainwreck. Is it better?

~~~
jimcsharp
My only frame of reference is visual studio... Atom is darn fast.

~~~
rplnt
To start maybe?

------
edent
> The Linux version does not currently automatically update so you will need
> to repeat these steps to upgrade to future releases.

Bit of a shame, I wouldn't have known about this update if I hadn't seen it
here. While I appreciate auto-updating isn't for everyone, an in-app
notification would have been useful.

------
zump
The runtime architecture is a bit bloated IMHO.

------
seivan
Still can't use it for reviewing a commit (git commit -va) kills my MBPr.

But glad things are moving forward. Still haven't decided between Atom and
Sublime though..

~~~
greyman
Me too, but I think I will settle with Atom eventually. Price of the sublime
itself is acceptable, but then also sftp plugin is another $30... Or is there
some other worthwhile alternative?

~~~
bloke_zero
Vim? Takes some setting up/learning but everything I ever wanted is 'out
there'. Amazing plugins for git, linting, code completion, whatever you can
think of some one has done/is doing. I used to use Textmate a lot, tried
sublime, Atom etc. I'll never go back. (Sorry, but someone had to be 'that
guy'.)

~~~
sarkron
I've been a happy vim user for 10+ years. I took Atom for a spin last week and
I absolutely love it. There's a vim mode package for Atom that implements some
vim features (not all, obviously) here [https://github.com/atom/vim-
mode](https://github.com/atom/vim-mode)

------
traspler
I try it again every few versions and would really like to try Atom for longer
but it really bothers me that I can't really configure hot exit the way I want
it to work.

It seems like I'm a minority in that I don't want Atom to open the whole
folder in the tree view when I open a file. What annoys me even more is that I
want hot exit completely disabled, so that when I open Atom, no previous
files/tabs or folders are open. I could never get this to work. The previously
opened folder will always be present in the tree view when I open Atom again
and when I open a file it will always open the folder in the tree view.

Does someone know if there is a workaround to this?

------
kup0
The features do not outweigh the performance loss in my experience.

------
konart
Still eats lots of RAM and hangs on large files.

~~~
knotty66
I like it, but there was that joke doing the rounds that Atom was an acronym
for 'A Terabyte Of Memory'.

~~~
tyingq
More funny with the context that EMACS was known as "Eight Megs And Constantly
Swapping".

------
wyager
I've been using atom for a few weeks. On my low-power 12" MacBook, it is only
slightly slower than sublime text. The only two tasks that are annoyingly slow
are opening the editor or a new editor window.

The barely noticeable lack of snappiness during editing is more than
compensated for by the quality of the editor and its plugin ecosystem. I've
also started using a ligature font for programming, which sublime doesn't
support.

------
bhaak
When I tried it last time, maybe a year ago, I was quickly turned off by how
uncustomisable it was, despite the claims.

All I wanted was a non-blinking block cursor ...

Now I just found this [https://github.com/olmokramer/atom-block-
cursor](https://github.com/olmokramer/atom-block-cursor)

But more than 200 commits to support non-blinking block cursors? I think Atom
is not for me.

~~~
tokenizerrr
So many of those commits are "updated readme", "updated changelog" and stuff
like that. Scrolling through the log it's not uncomming to find 5 or 6
"updated readme" commits right after each other in that repository.

It's not a good metric. Instead look at the 278 lines of code necessary to
achieve it.

------
kapv89
Disappointed to see so much FUD over here. I switched to atom from sublime 2
months back, mainly because its tooling for ES7(emmet, babel, eslint etc) just
works. And the editor is much more accessible to me than sublime.

Btw, I develop on an 14'' i3 3rd gen, 8gig, no-ssd laptop, and I am able to do
react-native dev, with the emulator running just fine

~~~
michaelmrose
Are you sure its not just other peoples experience that doesn't match yours
rather than FUD?

~~~
kapv89
Are you sure its not FUD?

I setup the dev team of a startup(in Delhi, India) I was consulting with with
Atom for react and node dev few months back. These guys were provided pretty
shitty, and pretty old, 4 gig ram laptops. And they used to screw up things
which could've easily been resolved with in-text-editor linting. I got them
running atom with emmet, babel and ESlint, and they are still using it without
any issues.

I have seen atom run reasonably well on _really_ _shitty_ machines. Its very
hard for me to accept that all this complaining about its performance is not
FUD.

~~~
uncreative24
I suspect those who are experiencing high cpu usage while idling are running
into weird bugs. It's only been 6 months since they released 1.0.

It runs well enough on my laptop with a 4th gen i7, 8gb ram, ssd, running
linux but cpu utilization is rather high. Scrolling inside a moderately sized
file puts a 20-30% load on all 4 of my threads. If I enable on the fly
linting, autocomplete features, minimap, and etc, it starts to add up.

I've used vim, emacs, and sublime text and I've found that with my uses cases
(mainly python development), atom ranks at the bottom of efficiency and
performance (but highest in productivity). I consider myself a proponent of
atom and it's currently my favorite editor, especially with vim-mode but it
has it's drawbacks. It's just not a fair fight; comparing the
performance/efficiency of atom to editors written in c/c++ doesn't make sense
to me.

------
vdnkh
I love Atom and I've been using it for a long time now, but have they fixed
the horrible stability issues in Windows yet? I run it on 3 distinct Windows
machines and they all experience the same issues (most notably, I cannot have
two editors open without the most recent crashing).

------
nikolay
I love Atom, but it along with Chrome it eats all my memory with just a few
open files/tabs! Why would an editor and a thin (!) client use gigabytes of
RAM?! Remember when computers had just 48KB of RAM and did great things?

------
YngwieMalware
Posting to say I love Atom and I am excited for its future. I've added
Facebook's Nuclide package and it has some really great features. Would love
to continue to see Atom as a full featured IDE

------
matiasb
Happy to see highlighted JSCAD [0]

Does anyone find JSCAD modeling inside Atom useful?

Tips/suggestions? I've been working on this project [1]

[0]
[https://github.com/github/linguist/pull/2712](https://github.com/github/linguist/pull/2712)

[1] [https://atom.io/packages/atom-scad-
preview](https://atom.io/packages/atom-scad-preview)

------
codygman
Atom seems pretty nice these days, but why would a competent emacs user switch
to atom?

Why would a spacemacs user switch to atom? Does it have any advantages?

~~~
nhunzaker
As a front-end web developer that has used Emacs for several years, I often
feel the pull to Atom. It draws very clear, direct inspiration from Emacs.

Spacemacs is an improvement, however I think it the biggest advantage it (and
any other modern text editor) has over Emacs is the on-boarding process and
general beginner friendliness.

Beyond that, Atom's modes for front-end web development are pretty top notch.
We have js2-mode, and web-mode in Emacs, but the overall experience in Atom is
often superior. For example, it's extremely easy to quickly install a color-
picker, pull open a CSS file, and use a color wheel to make a hex value
slightly darker. More, the color-picker UI feels tightly integrated into the
editor.

On the surface, this feels trite, however the slow build-up of user friendly
developer conveniences adds up.

The general command over the entire environment continues to draw me back to
Emacs. Still, I continue to watch for when Atom can achieve this.

------
caio1982
Does anyone know of a good Python completion plugin for Atom similar to what
PyCharm has (i.e. can complete models stuff etc)?

~~~
madspindel
I use this: [https://atom.io/packages/autocomplete-
python](https://atom.io/packages/autocomplete-python)

------
renke1
Does anybody know if it's now possible to use Atom as a sane $GIT_EDITOR (or
$SUDO_EDITOR...) such that a new tab is opened in an existing window and the
invoking process (git, sudo,...) is notified when the tab is closed (similar
to Sublime Text)?

~~~
jhasse
[http://blog.atom.io/2014/03/13/git-
integration.html](http://blog.atom.io/2014/03/13/git-integration.html)

~~~
renke1
I can't test it right now, but I am pretty sure I tried that before and it
opened a new Atom window instead of opening a new tab.

~~~
jhasse
Ah I see. You're right: It opens a new Window :(

------
okdtsk
Atom 1.3 was hang up when opening same file name. 1.4 seems to fix this issue.
[https://github.com/atom/atom/issues/10060](https://github.com/atom/atom/issues/10060)

------
jmsdnns
I submitted a PR for homebrew's cask once I read about the update.

[https://github.com/caskroom/homebrew-
cask/pull/17022](https://github.com/caskroom/homebrew-cask/pull/17022)

~~~
jmsdnns
Tight. They merged it in already. Homebrew is ready to go!

~~~
seanp2k2
Just curious, what's the advantage to installing this with homebrew? Does apm
still work from the terminal?

~~~
jmsdnns
Just makes it super easy. No difference other than how you do it. And yep, apm
works

------
gisely
I've stopped using atom due to horrendous latency issues. Pretty disappointed.
Would really love a modern open source text editor, but noticeable lag between
pressing a key and having it appear on the screen is a no go.

------
stefanix
With all the people complaining about Atom performance, I cannot confirm this.
Switched from Sublime Text about two years ago and never had speed/snappiness
issues. If anything Atom does quite well with gigantic files.

~~~
ino
On a 500 line file when I start adding multiple cursors, after the 5th or so
It starts taking multiple seconds just to select the next. This was in
December, so a recent version. I can't work like this.

------
manojlds
Best thing about some of the modern tools like Atom is that, by the time you
know about the release, you are already updated!

------
rosstex
But it's still so slow.

