Atom was unbelievably slow. How will the performance be improved? Visual Studio Code somehow managed to surpass the awful Electron performance just enough to make it usable, and it's pretty unbelievable this project will come close to that.
For those who want fast and lightweight without falling all the way back to emacs/vim, I’m really digging Lite-XL.
Lua for customization, thin accelerated rendering layer in SDL2+freetype, zero nonsense. Binary packages are like 2MB. The code itself is clean and readable.
The plugin collection is still young and won’t have everything you’d find in the Electron-family of editors, but that’s also a plus when it comes to it staying lightweight and streamlined like some might want in these tools.
Why couldn't they take the optimizations from vs code and integrate them? VS code is open source, it's only their proprietary extensions like remote dev that aren't open.
I remember Atom in its later releases had significantly improved performance to the point I never noticed problems.
Electron is rarely the cause of performance problems itself. It's more that JavaScript makes it really easy to write slow memory bloated code. But it's possible to write really fast and efficient apps in JS.
There are a few fundamental limitations with web/js. No shared memory concurrency, no reasonable storage layer, no integer types. Those can make some things hard to make performant but most apps I see are not limited by this.
Most apps are slow due to a few common mistakes.
- React/Anglular diff based rendering cycle.
- Garbage collection due to careless allocation of objects in tight loops.
- Poor client side data models, resulting in blocking on the network for simple things.
- Careless use of the bad storage abstractions (bleh indexeddb) which requires copying data for every operation leading to GC pressure and wasted CPU.
- V8 is a moving target in what it chooses to optimize well and what it fails to optimize.
tl;dr fast electron apps are possible but the platform makes it easy to write slow apps by default.
This is the community attempt to continue / revive atom right? Interesting that atom doesn't really get mentioned in the docs anymore- hopefully a sign that it's finding its feet and direction as a project in its own right.
I don't know, seems a bit weird not to mention Atom at all. At least "This project was forked from Atom" or whatever.
Besides it being nice, it's also a requirement of the Atom license, that the copyright and license notices are preserved. Seems the only mention of their heritage is "Original work copyright (c) 2011-2022 GitHub Inc." in the LICENSE file but again, no mention of Atom.
"The team behind Pulsar is a community that came about naturally after the announcement of Atom's Sunset and decided that they needed to do something about it to keep their favorite editor alive. This is a true community-led project to modernize, update and improve the original Atom project into a contemporary, hackable and fully open editor."
It's interesting to see this coming out of the atom community. I've been really impressed with Zed (https://zed.dev/) which is from the original atom folks and focused on speed and collaboration. Rapid improvements since initial launch.
I’ve been using Zed for a couple of months. It has replaced eMacs and VSCode for writing Rust. The integration is so well done, it’s like a constant conversation with the compiler. I’ve got ten invites by the way.
One thing I worry about a little is the business model. They want to target teams and charge for the cooperative features. But as a single user I’d love a way to just buy a lifetime license and feel that I can expect at least five years of use. I don’t like when software I love treats me like a casual fling.
Care to share a binary or some other project that is actually beyond a closed alpha? Otherwise not a lot of point in sharing it as an alternative, it's not available to the public.
Edit: signed up for the waiting list and received "Zed currently only targets macOS" so sounds like they only target ~10% of the actual market. Interesting strategy.
I haven’t read the docs lately but when I was hacking on Atom years ago, the plugin model was TOO freeform, and with plugins all running on the main thread, it was easy for a plugin to kill performance and slow down the editor. The vscode model strikes a better tradeoff between extensibility and performance. Extensions have less power but my editing experience is never ruined by a rogue extension.
One of the last things I remember about Atom was that by the time they’d figured out all the stuff they needed to fix, VSCode had come in and stolen all the eyeballs, so to speak. So they have a good roadmap, they just need to do the implementation.
The team behind Pulsar is a community that came about naturally after the announcement of Atom's Sunset and decided that they needed to do something about it to keep their favorite editor alive.
Does Pulsar support terminals over SSH? The reason I (only) use emacs and vi, is that they're available *everywhere* and work in literally every environment.
I'm enjoying the explosion in editor software going on right now. Even if most of them don't survive or gain a large audience, I'm sure the cross-pollination of ideas will lead to some great improvements in those that do.
Folks who know Pulsar and Zed internals: which one of them is more likely to gain support for Atom packages? I find Hydrogen[1] invaluable as a data science scratchpad since it supports python/r/julia/etc under a common interface via jupyter, and have been unable to construct a comparable workflow in vscode or any other editor [using scripts as opposed to notebooks, which i find far too bloated].
Pulsar already supports (nearly) all the Atom packages and has a brand new backend reverse engineered from the closed source Atom.io packages backend.
I think it is unlikely you will get any Atom support in Zed any time soon.
Some packages had to be removed due to incompatible licenses
I'm done with these JS/Electron editors. They are Ok (for the most part), but using Neovim in 2023 is such a huge step above everything else if you have the inclination to learn it. I'm integrating my workflow into Nixos and it's pretty incredible what is possible if you constrain your development to the terminal.
[+] [-] coldblues|3 years ago|reply
[+] [-] swatcoder|3 years ago|reply
Lua for customization, thin accelerated rendering layer in SDL2+freetype, zero nonsense. Binary packages are like 2MB. The code itself is clean and readable.
The plugin collection is still young and won’t have everything you’d find in the Electron-family of editors, but that’s also a plus when it comes to it staying lightweight and streamlined like some might want in these tools.
[+] [-] qbasic_forever|3 years ago|reply
I remember Atom in its later releases had significantly improved performance to the point I never noticed problems.
[+] [-] admax88qqq|3 years ago|reply
There are a few fundamental limitations with web/js. No shared memory concurrency, no reasonable storage layer, no integer types. Those can make some things hard to make performant but most apps I see are not limited by this.
Most apps are slow due to a few common mistakes.
- React/Anglular diff based rendering cycle.
- Garbage collection due to careless allocation of objects in tight loops.
- Poor client side data models, resulting in blocking on the network for simple things.
- Careless use of the bad storage abstractions (bleh indexeddb) which requires copying data for every operation leading to GC pressure and wasted CPU.
- V8 is a moving target in what it chooses to optimize well and what it fails to optimize.
tl;dr fast electron apps are possible but the platform makes it easy to write slow apps by default.
[+] [-] rcme|3 years ago|reply
[+] [-] thatxliner|3 years ago|reply
[+] [-] benrutter|3 years ago|reply
[+] [-] capableweb|3 years ago|reply
Besides it being nice, it's also a requirement of the Atom license, that the copyright and license notices are preserved. Seems the only mention of their heritage is "Original work copyright (c) 2011-2022 GitHub Inc." in the LICENSE file but again, no mention of Atom.
[+] [-] i_am_proteus|3 years ago|reply
"The team behind Pulsar is a community that came about naturally after the announcement of Atom's Sunset and decided that they needed to do something about it to keep their favorite editor alive. This is a true community-led project to modernize, update and improve the original Atom project into a contemporary, hackable and fully open editor."
[+] [-] heliostatic|3 years ago|reply
[+] [-] smodo|3 years ago|reply
One thing I worry about a little is the business model. They want to target teams and charge for the cooperative features. But as a single user I’d love a way to just buy a lifetime license and feel that I can expect at least five years of use. I don’t like when software I love treats me like a casual fling.
[+] [-] capableweb|3 years ago|reply
Edit: signed up for the waiting list and received "Zed currently only targets macOS" so sounds like they only target ~10% of the actual market. Interesting strategy.
[+] [-] xd1936|3 years ago|reply
[+] [-] return_to_monke|3 years ago|reply
[+] [-] ZitchDog|3 years ago|reply
[+] [-] neurobashing|3 years ago|reply
[+] [-] animuchan|3 years ago|reply
It's funny the README doesn't mention it.
[+] [-] leapon|3 years ago|reply
The team behind Pulsar is a community that came about naturally after the announcement of Atom's Sunset and decided that they needed to do something about it to keep their favorite editor alive.
[+] [-] asah|3 years ago|reply
[+] [-] NoraCodes|3 years ago|reply
[+] [-] hackrnusr|3 years ago|reply
[+] [-] hyperhopper|3 years ago|reply
We don't need a new editor. Just make a spacemacs layer or doom plug-in.
[+] [-] untech|3 years ago|reply
[+] [-] meanmrmustard92|3 years ago|reply
[1]: https://github.com/nteract/hydrogen
[+] [-] Daeraxa|3 years ago|reply
Some packages had to be removed due to incompatible licenses
[+] [-] ericyd|3 years ago|reply
[+] [-] Daeraxa|3 years ago|reply
[+] [-] 29athrowaway|3 years ago|reply
No, thanks.
This one on the other hand, looks very promising
https://lapce.dev/
[+] [-] rwalle|3 years ago|reply
[+] [-] haolez|3 years ago|reply
[+] [-] xrayarx|3 years ago|reply
[+] [-] bstar77|3 years ago|reply
[+] [-] JaggerJo|3 years ago|reply
[+] [-] m348e912|3 years ago|reply
[+] [-] moremetadata|3 years ago|reply
[1] https://learn.microsoft.com/en-us/visualstudio/ide/how-to-tr...
[+] [-] Daeraxa|3 years ago|reply