The key to being productive as a programmer is to have a great code editor. I have been an avid user of Atom since 2014, and its successor Pulsar since now in 2023.
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. π
@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.
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).
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.
I recently started learning Java and Intellij Idea was recommended to me by the course. This is the second time in a week I've heard about this. In your opinion, what makes it good?
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.
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.
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."
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 π
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.
@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?
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.
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.
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.
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.
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.
Yes, I use MS Word then print as image to pdf. Outlook works too, but it's less secure, and Power Point is too fancy for my taste (I don't like animated transitions when my code wraps between columns). It's amazing how far we've come from punched cards, and how fast, I can barely keep up.
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.
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.
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.
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