this post was submitted on 20 Feb 2024
31 points (63.2% liked)

Programming

17313 readers
72 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 1 year 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] 67 points 8 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.

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

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

[–] [email protected] 7 points 8 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.

[–] [email protected] 4 points 8 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.

load more comments (5 replies)
[–] [email protected] 38 points 8 months ago* (last edited 8 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).

[–] BatmanAoD 28 points 8 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 8 months ago (1 children)

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

[–] BatmanAoD 2 points 8 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)
[–] varsock 30 points 8 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] 21 points 8 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 πŸ˜„

[–] varsock 4 points 8 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 8 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?

load more comments (1 replies)
[–] [email protected] 28 points 8 months ago

The team also created the Electron Framework

😑

[–] [email protected] 28 points 8 months ago* (last edited 8 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.

[–] BatmanAoD 26 points 8 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!

[–] technom 17 points 8 months ago* (last edited 8 months ago) (2 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.

[–] BatmanAoD 4 points 8 months ago

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

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

You wouldn't happen to think of yourself as a world-class programmer by any chance?

[–] technom 4 points 8 months ago (1 children)

If I were, I wouldn't be hanging out here, would I? BTW, I use both Vim and Emacs.

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

Yeah it was just an open goal of a joke, didn't mean to be an ass πŸ™ˆ

[–] varsock 5 points 8 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.

[–] zygo_histo_morpheus 4 points 8 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.

[–] porgamrer 25 points 8 months ago (3 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] 6 points 8 months ago* (last edited 8 months ago)

I'm under 50 and I know Vi because it was always available on every Linux/BSD system i used from the day i discovered Linux up to now

[–] Sheldan 3 points 8 months ago (1 children)

There are actually a lot of people learning latin

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

Yep, I learned a good bit of it in school. That shit's helpful.

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

Romanes eunt domus!

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

Me too, but I never found it helpful. What's your experience in using it in life?

[–] [email protected] 2 points 8 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] 18 points 8 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.

[–] varsock 13 points 8 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] 11 points 8 months ago (1 children)

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

[–] [email protected] 7 points 8 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.

[–] [email protected] 11 points 8 months ago

You spelled vim wrong.

[–] [email protected] 6 points 8 months ago

It’s definitely not the fastest…

[–] [email protected] 5 points 8 months ago (2 children)
[–] [email protected] 40 points 8 months ago (3 children)

That can only run on mac. Hard pass.

[–] [email protected] 6 points 8 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)
[–] [email protected] 6 points 8 months ago

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

load more comments (1 replies)
[–] autokludge 2 points 8 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.

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

VS Code gang

[–] [email protected] 4 points 8 months ago* (last edited 8 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

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

Clearly you never tried emacs

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

Why should I install a second operating system?

load more comments
view more: next β€Ί