Live data from Hacker News

Ask YC: Why is emacs a great editor?

news.ycombinator.com

1–10 of 84 posts

Ask YC: Why is emacs a great editor?

#1
I recently installed emacs since a lot of people (yes - yc users) seem to think it is the best code editor around. I read that it has a steep learning curve, but that it would be worth the effort. I accepted that and started using it as my primary editor to get my hands dirty. After 2 weeks of use I'm still not productive in it. I can think of the following reasons for this:

- I use my mouse a lot, and it seems that emacs is made primarily for keyboard input. I don't use keyboard shortcuts much.

- A nice looking GUI and well designed intuitive interfaces matter to me. Emacs is extremely lacking in this respect.

- I simply haven't spent enough time with it - the learning curve is steeper than initially expected.

What do you think? Am I missing something obvious, should I carry on in the belief that this is a divine tool that just takes time to master, or is emacs simply not for me?

Re: Ask YC: Why is emacs a great editor?

#2
Have you read O'Reilly's Learning Emacs? I strongly recommend it. It's a useful tour guide.

Failing that, have you read the tutorial?

Have you read Steve Yegge's "Effective Emacs"?

If none of that can help or inspire you then I probably don't have much chance. But I'll offer you some coaching anyway. Imagine Vince Lombardi reading this to you:

Stop using the mouse. If you're using emacs and you're touching the mouse, you're doing it wrong.

Stop fretting about the GUI. Why does your editor need a GUI? Emacs is a text editor, a program that is all about text. It's text all the way down. If it had more chrome, that would be wasting pixels that could be devoted to text. (Seriously: As Yegge will tell you, the true emacs user turns off the pull-down menus to make more room for text.)

Stop worrying about "intuitive". Yes, until you get to know the moves, emacs is nonintuitive, kind of like the piano. No matter how expensive and well-designed a piano I buy, I won't be able to just sit down and play some Chopin. (Well, technically you can buy player pianos that will do just that, but what would a concert pianist call such an instrument? A toy.) You're learning an open-source text editor that's quite possibly older than you. You will live with this software for months, years, or decades. You don't need features that make it easy to learn emacs in five minutes. You need the features that make it worthwhile to use emacs after thirty years.

And, yes, you haven't spent enough time. In particular, it's not just a matter of plugging away in emacs for weeks or months; it's unlike any other software you've ever used, and until you're oriented you won't find it easy to pick up things just by playing with it. You have to study it a little. Try some of the references. Try the Emacs Wiki.

Re: Ask YC: Why is emacs a great editor?

#5
> A nice looking GUI and

You're editing text. What "graphical"s are you expecting? (You should be seeing syntax and selection highlighting.)

> well designed intuitive interfaces matter to me.

What's the difference between "intuitive" and "familiar"?

Yes, the keyboard commands are not what you're used to. If you want the keyboard commands that you're used to, you can program them. That's generally a bad idea, but emacs is full of rope.

Re: Ask YC: Why is emacs a great editor?

#6
At this point I've spent about ten years learning Emacs. I'm sure there's still plenty I could learn that would make me even more productive - Emacs is big.

When I was in my early twenties, I decided enough of my heroes at the time raved about Emacs that I should just trust them and not care how long it took to learn or how hard it was. This turned out to be a good decision.

Re: Ask YC: Why is emacs a great editor?

#7

Have you read O'Reilly's Learning Emacs ? I strongly recommend it. It's a useful tour guide. Failing that, have you read the tutorial? Have you read Steve Yegge's "Effective Emacs"? If none of that can help or inspire you then I probably don't have much chance. But I'll offer you some coaching anyway. Imagine Vince Lombardi reading this to you: Stop using the mouse. If you're using emacs and you're touching the mouse…

I agree with what you said about about intuitive UIs. Intuitive just means familiar. After enough time, emacs (or vi, or any text edit) will be come familiar, i.e. you won't have to consciously think about using the editor. At that point it becomes intuitive.

Re: Ask YC: Why is emacs a great editor?

#8
post #5

> A nice looking GUI and You're editing text. What "graphical"s are you expecting? (You should be seeing syntax and selection highlighting.) > well designed intuitive interfaces matter to me. What's the difference between "intuitive" and "familiar"? Yes, the keyboard commands are not what you're used to. If you want the keyboard commands that you're used to, you can program them. That's generally a bad idea, but emac…

If you want the keyboard commands that you're used to, you can program them. That's generally a bad idea...

Let me underline this sentence. Some people (particularly the ones who think that copy and paste were invented by God on the eighth day of creation) get it into their heads that they should redesign the emacs interface on their first day. This is particularly tempting because the ability to remap keys all over the place is one of emacs' best features.

Resist the temptation to do this at first. The emacs ecosystem actually makes a great deal of sense once you settle into its way of thinking. It's sometimes hard to believe, but very smart programmers have spent decades working out where to put things in emacs. If you insist on ignoring their efforts, and instead try to pretend that emacs is a lot like the Mac OS, you will never even learn the basics, like the glories of the kill ring and the mark ring, or the important distinctions between a file and a buffer.

Re: Ask YC: Why is emacs a great editor?

#9

Have you read O'Reilly's Learning Emacs ? I strongly recommend it. It's a useful tour guide. Failing that, have you read the tutorial? Have you read Steve Yegge's "Effective Emacs"? If none of that can help or inspire you then I probably don't have much chance. But I'll offer you some coaching anyway. Imagine Vince Lombardi reading this to you: Stop using the mouse. If you're using emacs and you're touching the mouse…

I just read Steve Yegge's "Effective Emacs", thanks for the link. It was very enlightening on many levels and told me several things that were written between the lines, namely:

- Initial user experience is (very) secondary to long-term efficiency

- if you aren't in this for the long term don't bother - the article actually suggestes swapping the caps lock key and the ctrl key to have it better positioned for emacs use...

- unplug your mouse, the keyboard is faster once you learn how to do it well.

It seems to me that Emacs is a friend for life, but only if you have the patience for a year or two of courting and learning its tweaks and quirks.

I'll buy O'Reillys book and see how it goes.

Post reply on HN