Hacker News new | ask | show | jobs
by dizzystar 3134 days ago
I also hated emacs when I first tried it, but once I started moving past my first programming language, I found myself sifting 30 IDEs and decided to give it an honest shot.

I don't use it for much else than programming, so my must-haves are for that purpose. Just the various built-in interpreters make it worth the price of learning.

2 comments

Unlike both of you, I rapidly loved emacs. The only thing I disliked was the confusion around gnu and xemacs.

The reason I loved it was the indentation logic underneath, it was solid and meaningful. Other IDEs would only do very local logic while in emacs, if something doesn't indent where it should, you know you grammared wrong. It was deeply magical and reassuring to me.

However nowadays IDE like Intellij Ultimate give good to best in class support for basically all mainstream languages.

I'm an emacs user (in case it matters).

Some IDEs may offer better language-specific features than the community-supported emacs modes, however I haven't found an IDE that actually does the editing (and displaying) of text as well as emacs.

In particular all the little modes that try to emulate emacs functionality (simple things like rainbow-delimiters or slightly more complex things like undo-tree-mode) are always broken in subtle ways in the "modern" applications. Not to mention all the text navigation features: ace-jump & friends, helm-swoop, etc...!

I guess a large part of this is that emacs has had 40 years to mature and that it was originally written at a time where software was judged on different criteria than it is today.

I find that on balance, most of those language-specific features are the ones that matter most to me, and provide the best value wrt. my time (and finished product).

Comparatively, the text editing power of vim/emacs, while nice, just doesn't provide that much value to me anymore, *most of the time.

That being said, it varies by language. If I were working in C, I'd probably use emacs. Working in Go, I still do use emacs (the side effect of the language's simplicity is that solid tooling is a snap to integrate in both vim and emacs). Java or scala? Not a chance in hell I'm going to do anything serious with those two in vim/emacs.