This essay was evidently written in 1997. I don't know what the competitors to Emacs were in 1997 other than Vi, but these days there are extremely powerful text editors which are exceedingly easy for a novice to pick up and use right out of the gate and then go on to offer vast arrays of substantially more advanced tools for those prepared to explore and become experts.
Just because it used to be extremely painful to become a towering expert at text editing doesn't mean it should continue to be so. It's not like riding a bicycle-- text editing actually iseasy. Or at least, it can be made easy, and there is no argument for keeping it difficult.
Remember, text editing in and of itself is of no value. Tools should get the hell out of the way of their users.
I just don't know what to make of that. It's true, but only in an incredibly over-technical sense. Text-editing is one of the primary forces that drives the world. Pen or keyboard or voice to speech, text is primary.
Yes, of course, the meaning behind the text is more important. But the meaning doesn't appear at all without some means of creating the text. It's like saying that the teeth are not important, it's the food. You can't eat the food without teeth.
I'm saying that the meaning of the text - be it prose, poetry or code - is all that is important. Text editors are tools, like paintbrushes and screwdrivers. They only important or valuable to the extent that they enable us to create stuff of actual value.
You can go down the route of text editing as art, like that Vi Golf concept that was floating around. And a well-made tool is indeed valuable and beautiful to behold. Nevertheless, I maintain that a text editor is strictly as important as the text it is used to create.
Honest question: Have you ever witnessed an emacs or vi master at work? Have you ever had the experience of watching one of those guys push some keys on the keyboard and then ask yourself how the bloody hell they just did that complicated manipulation in two seconds, when it would have taken you 45? That stuff adds up, more than linearly because they'll do things you wouldn't even consider due to effort. (You won't even consciously decide not to do them, you won't even consider them as a possible option.)
(The other day somebody linked a site that extracts the top 100 comments for any HN user. Somebody else started creating links to all the users on the leaderboard. I happened to catch them halfway through linkifying the people on the user board. You never would have caught me halfway through such a task, because I would have used an emacs macro to linkify one, then repeat it 99 times as quickly as I please. And I'm not very good with emacs. Many other tools can do this too, of course.)
Be sure you actually know what tool mastery looks like before you downplay the importance of tool mastery. Sure, what matters is results, but tools profoundly and inescapably influence the results you get, so while "all that matters is results" is a true statement on the surface, the actual claim being made underneath about the irrelevance of tools is deeply, deeply false.
This still isn't an argument against using powerful text editors. If you're doing carpentry, both a hand-driver and a power-drill can drive screws, but one will get the job done faster. The advantage is, of course, situational; but power is especially important when refactoring and modifying existing text/code where being able to automate repetitive changes can speed things up significantly.
> Nevertheless, I maintain that a text editor is strictly as important as the text it is used to create.
Absolutely. And what is the importance of that text to you? To me it is both my passion and my livelihood. In aggregate it's clearly #2 only to my family.
> Tools should get the hell out of the way of their users.
I think this was precisely the point that Naggum was making. Basically his thesis is that emacs is hard to learn, but eventually you can do amazing things without thinking about it. A novice tool on the other hand never makes anything but the most trivial task easy, so though it doesn't get in the way of a beginner, it never gets out of the way of the expert.
You can argue about how true this is, and debate the merits of the modern crop of text editors that make better use of GUI elements, etc; but I still found the argument he makes to be compelling and worthy of consideration even if we ultimately disagree. He didn't just invoke a religious argument about the superiority of his tool of choice—he drew up a meaningful analogy to what it means to devote the time and obsession to perfecting one's art.
Text editing is something that consumes so much of a programmer's time that ease of learning is only relevant if you're switching every couple of months. If I was forced to switch from my current editor to a new one, I would honestly not give two shits how easy it was to learn. Why would I care how bad the first month would be? I'd be using it for many years to come. (If I couldn't count on that, it would be the wrong editor anyway.) The only kind of text editor that can tempt me to use it for a few months knowing I'll never be completely comfortable with it is a full-blown IDE with enough functionality to make up for the awkwardness of not being able to slice and dice text efficiently.
Besides, what does it mean for a novice to be able to use an editor right out of the gate? Will a novice know the keystrokes to jump to the beginning of a line, jump to the end of a line, indent the current line, forward incremental search, backwards incremental search, delete to the end of the line, regex search and replace, display and hide the list of open windows, jump to the previous window, jump to an open window by filename, reload the current file from disk, diff two files, run Make (or Maven or what-not), or do any of the others things that a programmer does dozens of times a day when he's writing code? Obviously he won't, and he'll be working a little slower until he figures all those things out (or, for beginning and end of line, he'll be learning where the Home and End keys are on each different keyboard he uses.)
Even if you know how to cut and paste in a new editor, you still don't know 10% of what you need to know to use it productively.
Just because it used to be extremely painful to become a towering expert at text editing doesn't mean it should continue to be so. It's not like riding a bicycle-- text editing actually is easy. Or at least, it can be made easy, and there is no argument for keeping it difficult.
Remember, text editing in and of itself is of no value. Tools should get the hell out of the way of their users.