this post was submitted on 20 Feb 2024
32 points (63.8% liked)

Programming

17313 readers
383 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities [email protected]



founded 2 years ago
MODERATORS
 

Pulsar (former Atom) is still the best code editor in my opinion. It is easiest and fastest to use, has all the nice productivity boosting plugins and is overall great for all the same reasons the Atom was great. πŸš€

See also [email protected]

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 64 points 9 months ago (1 children)

The best code editor is the one that you enjoy using, because you're going to be using it a lot.

[–] LucidDaemon 12 points 9 months ago (1 children)

I agree with this. In my opinion helix is the best code editor.

[–] [email protected] 7 points 9 months ago (1 children)

@LucidDaemon @Aurenkin out of curiosity, how long have you been using Helix and what do you like about it? I tried it awhile back and liked it, but it wasn't able to break VS Code's iron grip on my dev workflow.

[–] LucidDaemon 3 points 9 months ago (5 children)

About 6 months since I've switched away from vscode. To make Helix worth it you also need to use software that compliments it.

I work in DevOps, so I don't do a ton of programming but everything I do is via terminal. I use Kitty Terminal, ZSH with oh-my-zsh for the shell, Zellij for an emulation layer (think tiling and tab manager in kitty), nnn for in terminal file manager, and helix for editor.

I almost never leave the terminal now, except when web browsing.

[–] [email protected] 1 points 9 months ago

@LucidDaemon Aaah, that makes sense. I can see how Helix would be perfect for that use case.

Most of my work is webdev (JS/TS, Ruby, etc.), so it's not quite the same. But I'd love to get back to Helix and use that more in my day-to-day. Would be nice to stay in the terminal more rather than bouncing back and forth between kitty and vscode.

load more comments (4 replies)
[–] abhibeckert 37 points 9 months ago* (last edited 9 months ago) (5 children)

Pulsar is a fork of Atom, which was discontinued because almost everyone jumped ship to VSCode.

What does Pulsar do that is better than VSCode? All the features this article highlights are in VSCode too, and I can think of a bunch of features that Pulsar doesn't have (dev containers are a big one for me - they allow you to have different versions of the same software installed, depending what project you're working on right now... and you can work on/run both versions of the same software at the same time, on the same hardware... you can also emulate other CPU architectures in a dev container, some of the software I work with every day can't actually run natively on my hardware).

[–] [email protected] 26 points 9 months ago (1 children)

The author also makes some incorrect or misleading claims, specifically about emacs. I acknowledge there's a high bar for entry there and don't personally like emacs, but it's not modal, and it does have the ability to display images and markdown previews.

[–] [email protected] 2 points 9 months ago (1 children)

Well, it's not modal by default. It is if you want it to be.

[–] [email protected] 2 points 9 months ago

Sure. But the author cites that as a disadvantage of emacs and links to an article about the person who invented ctrl-c and ctrl-v for copy and paste.

load more comments (4 replies)
[–] [email protected] 27 points 9 months ago

The team also created the Electron Framework

😑

[–] fubo 26 points 9 months ago* (last edited 9 months ago)

The best code editor is the one that works well with your other tools, including your compiler and your keyboard.

Corollary: If you use an unusual compiler or an unusual keyboard, this may change what the best editor for you is.

[–] [email protected] 25 points 9 months ago (3 children)

Had a distinguished collegue (from the Bell Lab days) say to me recently:

"IDEs take up a lot of RAM on my machine. Vim takes up a lot of squishy RAM in my head. I need squishy RAM to hold info relevant to problem solving, not options available in my tool chain."

[–] [email protected] 18 points 9 months ago (1 children)

While I agree with the sentiment, the key bindings have been burned into my less squishy ROM at this point, and I've got all banks of squishy RAM available πŸ˜„

[–] [email protected] 4 points 9 months ago

hahaha good point.

That colleague, keep in mind is a bit older, also has Vim navigation burned into his head. I think where he was coming from, all these new technologies and syntax for them, he much rather prefers right clicking in the IDE and it'll show him options instead of doing it all from command line. For example docker container management, Go's devle debugger syntax, GDB. He has a hybrid workflow tho.

After having spent countless hours on my Vim config only to restart everything using Lua with nvim, I can relate to time sink that is vim.

[–] [email protected] 4 points 9 months ago

@varsock @otto
Oh god yes! Each instance of VS22 takes up more than 1Gb of RAM - what I'm doing right now with this piece of code does NOT need 1Gb of memory! Have they not heard of lazy loading?

[–] [email protected] 1 points 9 months ago

Vim doesn't take any thought for me, it's all muscle memory.

[–] [email protected] 24 points 9 months ago (2 children)

I know several world class programmers, and interestingly, the commonality among them is that they all seem to use Vim as their code editor. Many people I know who think of themselves as world class programmers use Emacs.

What a burn!

[–] [email protected] 15 points 9 months ago* (last edited 9 months ago) (1 children)

More like a personal bias in the form of a distasteful snark that the author thinks is funny. Their demonstrated knowledge about Emacs in the article indicates the worth of such remarks.

[–] [email protected] 3 points 9 months ago

Yeah, I commented elsewhere on the misinformation regarding emacs in the article.

[–] [email protected] 3 points 9 months ago (1 children)

As a former Vim user myself, I have to say I really dislike screensharing with coworkers who use Vim. They are walking me through code and shit pops up left and right and I don't know where it comes from or what it is I'm looking at. Code reviews are painful when they walk me through a large-ish PR.

These days, I tend to bring my vim navigation/key bindings to my IDE instead of IDE funcs to Vim. Hard to beat JetBrains IDEs, especially when you pay them to maintain the IDE functionality.

[–] [email protected] 4 points 9 months ago

Pair coding with vim is a skill in itself (for the vim user). You can make things a bit easier to follow by making liberal use of visual mode for example. I have a CoworkerMode command that turns on smooth scrolling via vim-smoothie and cursorline, and I've also added some stuff to the neovim right-click menu so that I can explicitly right click go to definition for example. It can be worth switching editor sometimes, but it's not always worth it if you're in the middle of something.

[–] [email protected] 23 points 9 months ago (2 children)

Counter-point: Atom is terrible. Its electron competitors are terrible. Big IDEs are terrible. Simple text editors are terrible.

If you are under 50 and chose to learn vim or emacs, there is a 100% chance that you were also forced to learn latin at school and honestly it's not your fault that you turned out this way.

These are all the options. Sometimes all the options are terrible.

[–] [email protected] 2 points 9 months ago

There are actually a lot of people learning latin

[–] [email protected] 2 points 9 months ago

Vim or emacs? I mean I know they were created a long time ago, but they are both pretty good pieces of software, both highly configurable. I don't understand people aversion to them, rather than having the false belief that they are too complicated? When in reality they just aren't intuitive in terms of modern stuff. But they aren't difficult, just different.

[–] [email protected] 17 points 9 months ago

The key to being productive as a programmer is to have a great code editor

True true.

The best code editor came from GitHub

I'm out.

[–] [email protected] 12 points 9 months ago (7 children)

code is just text, so code editors are text editors.

What sets IDEs apart are their features, like debugger integrations, refactoring assists, etc.

I love command line Β± Vim and used solely it for a large portion of my career but that was back when you had a few big enterprise languages (C/C++, Java).

With micro services being language agnostic, I find I use a larger variety of languages. And configuring and remembering an environment for rust, go, c, python etc. is just too much mental overhead. Hard to beat JetBrain's IDEs; now-a-days I bring my Vim navigation key bindings to my IDE instead of my IDE features to Vim. And I pay a company to work out the IDE features.

for the record, I am in the boat of, use whatever brings you the greatest joy/productivity.

load more comments (7 replies)
[–] [email protected] 10 points 9 months ago

You spelled vim wrong.

[–] [email protected] 9 points 9 months ago (1 children)

just keeps on keeping on with neovim, vimium, a tiling window manager, and an ortholinear keyboard.

[–] [email protected] 7 points 9 months ago
  • opens file in nvim, can edit code immediately, code is processed in the background and info appears after ~30 seconds
  • opens Idea project, everything is unresponsive for a minute

Yep, I will stick to nvim.

[–] rammjet 5 points 9 months ago (2 children)
[–] Sanctus 40 points 9 months ago (3 children)

That can only run on mac. Hard pass.

[–] paperplane 6 points 9 months ago

It's open source though and they plan on adding Linux/Windows support in the future

[–] [email protected] 6 points 9 months ago (1 children)

It looks like it'll be really nice when it comes out for the other platforms though, and they do plan on doing that eventually.

It's probably a good thing to get it right on one platform first before getting into the other ones. If they release it buggy on Linux it'll leave a bad taste.

load more comments (1 replies)
[–] abhibeckert 1 points 9 months ago* (last edited 9 months ago)

They're working on Linux compatibility. It's not ready yet but it's well along the way with about half the necessary tasks completed. Windows will be after that.

[–] [email protected] 2 points 9 months ago

Atom did bring about tree-sitter at least.

From https://zed.dev/blog/we-have-to-start-over

We got to a certain point with Atom. It was 2017 when we'd shipped Teletype and it felt like, okay, it's no longer our own ignorance holding us back, it really is like the platform holding us back at this point.

...

the ironic thing is that we created Electron to create Atom, but I can't imagine a worse application for Electron than a code editor, I don't know.

[–] suckmyspez 5 points 9 months ago

It’s definitely not the fastest…

[–] boblemmy 4 points 9 months ago* (last edited 9 months ago)

When I write code in the terminal, the editor I use the most is nano. I know vim and emacs are more powerful, but I don't really feel that nano is incompetent. I run nano in byobu

[–] Feathercrown 4 points 9 months ago

VS Code gang

[–] [email protected] 3 points 9 months ago (1 children)

Clearly you never tried emacs

[–] [email protected] 2 points 9 months ago

Why should I install a second operating system?

[–] [email protected] 1 points 9 months ago

Lapce is the most promising tool I've seen in the editor space for some time now.

load more comments
view more: next β€Ί