BBEdit vs. TextMate: The Editor Wars Revisited.

Update: This is kind of like the recent switch in basketballs used in the NBA. Go read Mark Cuban’s discussion of the new ball. Very interesting. Some players benefit immediately. Many do not.

Erik J. Barzeski asks For those TextMate users in the audience, why do you use TextMate? For those BBEdit users, why have you stuck with BBEdit?

Text editing with any great speed is a tremendously intimate bit of interaction between you and the editing software. It is inherently a keyboard driven task and a very complex task, at that, given the myriad of syntax rules and gestural editing possibilities.

As a result, any user who spends any significant amount of time with any one text editor — I’m talking years, here — will build up a set of usage patterns that employed rapidly and repeatedly throughout an editing session. Often this is called “muscle memory”, but it is really more that your brain builds up a library of “mental macros” that are applied almost subconsciously as you work with the editor.

Because of this, switching text editors is incredibly disruptive to one’s workflow and results in some awesome “religious wars”. Why? Because it is just too damned difficult to actually quantify why one editor is so much better than another.

I have written at length about this before.

So, really, it boils down to how many of the “mental macros” can be transported from one editor to another.

Me? I was an emacs user. Because Cocoa’s text editing subsystem has supported emacs like behaviors since 1990 or so, the move from emacs to TextMate was relatively natural. I lost a lot of the more complex features, but I gained a much more modern and native user interface.

An acceptable trade off.

I have tried BBEdit many times and simply can’t use it. It makes my skin crawl to try and do so. Certainly not because it is a bad piece of software or otherwise inferior, but entirely because my learned mental model of text editing is simply incompatible with BBEdit’s implementation.

As I said in the above article:

Using BBEdit literally makes me grind my teeth with the general discomfort it causes. Now, I know that’ll rub a few people wrong (if anyone reads this) so let me be completely clear: BBEdit is a brilliant product and my inability to deal with it is entirely in my head.

So, in this case, it sounds like Erik’s brain has remapped itself to view text editing within the patterns of use perpetuated by BBEdit. As a result, a move to TextMate or SubEthaEdit is going to be disconcerting. It will feel unnatural and the flaws/bugs are going to be amplified.



15 Responses to “BBEdit vs. TextMate: The Editor Wars Revisited.”

  1. John says:

    FWIW, BBEdit (optionally) supports Emacs key bindings for basic navigation and editing.

  2. bbum says:

    Yeah, but it doesn’t behave like Emacs. The handling of words and end of lines is subtly different. Different enough that it seriously offends the macro memory embedded in my brain stem.

    I’m not saying it is broken. It isn’t. It maps Emacs like functionality on top of the BBEdit core editing style — awesome for BBEdit users, not so good for Emacs users.

  3. Nick Fagerlund says:

    Quite sensible.

    I’m in the odd position of thinking TextMate is probably a better* editor than BBEdit, but being either unable or unwilling to actually use it. The marathon editor testing spree during which I first used them both was kind of spurred by my dissatisfaction with Emacs,** so I was probably in the mirror image of the situation you were in.

    Learning how BBEdit worked was the strange experience of discovering that, to a kind of unsettling extent, the damn program works the exact same way my brain does. BBEdit makes me happy; TextMate doesn’t. I’ll freely own that this is all in my head.

    _____
    * Vastly more customizable, and with some really really clever underlying ideas that would probably have been impossible to implement in an existing tool.

    ** Fine for poetry and some source code, endlessly irritating for prose. This is probably my problem rather than the app’s; Steven Brust wrote a bunch of novels in Emacs, so what the hell do I know.

  4. bbum says:

    Nick — you are pretty much exactly a case study for what I wrote about. Your neural net has wired itself for BBEdit and it’ll be damned hard to rewire for TextMate. I can’t stand BBEdit for exactly the same reason — I know it is an awesome editor that people swear by, but I simply cannot use it!

  5. Scott Stevenson says:

    I was a BBEdit (and vi) user for eight years before I picked up TextMate, and found the transition very natural. Maybe this was partially due to the fact that TextMate really felt like it was designed for Mac OS X.

    I’m an advocate of “use what works for you” since you’re not going to be doing anything useful if you’re forced to use a tool that feels unnatural. But to contend that TextMate doesn’t have hugely useful features that other editors currently do not is insanity.

    My experience is that people are happy to say “no big deal” about TextMate, only up until the point that I show them tab triggers, all of the bundles, the text transformations and so on. I’m pretty sure I made a few converts at CocoaHeads last night.

    Allan has done an absolutely amazing job setting up a foundation to work with, and the TextMate user base has responded with some fantastic bundle implementations.

    A lot of people just feel their current app is “good enough,” and don’t think that there might be other ways to do things that they haven’t considered. You’d think of all people, Mac folks would get this.

  6. bbum says:

    I’d be willing to bet that most of you that made the switch from BBEdit didn’t have “deep workflows” or didn’t work on the same body of source for a decade or so. That is, that your use of the Mac evolved significantly over time — new technologies with each release, etc, all became a part of your workflow.

    Or you spent a bunch of time in other Cocoa derived editors and, as a result, your brain was already dual mode.

    And, yes, I completely agree — right tool for the job and BBEdit is an amazing tool that is “good enough or better than that” for many many people. No need to switch. It isn’t like they are Windows users.

  7. Matthew says:

    “Because Cocoa’s text editing subsystem has supported emacs like behaviors since 1990 or so, the move from emacs to TextMate was relatively natural.”

    Yes, TextMate is a Cocoa application but I am pretty sure it doesn’t use Cocoa’s text editing subsystem. Instead it uses lower level frameworks.

  8. barry says:

    This is a good point, and as such it is pointless for an experienced user to ask why they should should switch. Overcoming the loss of their mental macros will require the other editor to be at least an order of magnitude better than their previous editor, and its not that often (pretty much never) that a new editor will trump an older editor to such a great degree.

    We would be mistaken to assume that this implies that the which editor is better question is of no use. Plenty of people are growing up and switching platforms all of the time. Either way, they are people who are new to OS X or new to coding / writing markup and therefore need an editor for the first time.

    Thus it is important to have a sensible discussion of which editor offers better features and most importantly which editor offers the best framework and community from which future growth will come, otherwise new users will have no Google guidance when trying to decide on an editor. As you have proved so well here, switching editors is hard, so when picking one for the first time, it is important to ensure you pick the editor that is hopefully the best today but definitely the best for long haul.

    Like any debate, the editor debate is only interesting once the personal aspects are removed (as much as possible) from it.

  9. bbum says:

    TextMate behaves enough like a Cocoa text editor that it feels only slightly different beyond undo behavior and drag-selection behavior, both of which could be implemented via Cocoa’s text subsystem (and, as a result, do not feel that alien).

  10. links for 2006-11-11 « Amy G. Dala says:

    [...] bbum’s weblog-o-mat » Blog Archive » BBEdit vs. TextMate: The Editor Wars Revisited. (tags: amusements technology religion) [...]

  11. Pim says:

    Although I’m quite particular about my texteditor, very little of it has to do with the editor’s internal workflow. Open, save, find, replace. That’s where my interest ends. I do care, however, about how an editor presents my text. I’ve been with BBEdit for a long while for that reason, but in the looks department TextMate actually wins out for me. Where it loses,though, is its inability to deal with C++ syntax when a statement spans multiple lines, that’s a deal killer for me, so I’m stuck with BBEdit for now.

  12. Arden says:

    Personally, I find that I use whichever editor I’m most comfortable with for a particular situation, and I frequently switch between editors as the need arises. For example, I might use BBEdit’s (amazing) search engine to find some particular data or other, and then edit it all at once in SubEthaEdit in block mode before moving chunks of data around with TextMate’s code folding. Each editor has major strengths that the others do not, so there’s no clear winner with any of them.

  13. Around the web | alexking.org says:

    [...] bbum’s weblog-o-mat – BBEdit vs. TextMate: The Editor Wars Revisited. [...]

  14. Michal Bencur says:

    I was a VIM user for 8 years. Tough relationship, me and VIM, thousands of hours together. You know what I mean, if you craft code on daily basis. Not to miss new opportunities, every year or so I’ve tried another editor – emacs, kdevelop, jedit, subethaedit, bbedit, java IDEs … lots of. I liked none of them, and after few hours or days happily came back to VIM. When seeing colleagues editing text in other editors, I was happy I invested time learning to use VIM.

    I discovered TextMate in its “hey, I have no preferences and I can’t print” era (late 2004 or early 2005). I liked it as a simple editor, but I didn’t get what it’s really about. It came later, in late 2005 when I used it for Ruby on Rails, and learned “few tricks”. Now I use it for everything – Cocoa, RoR, CSS, configuration files, ToDo notes… I’m a VIM to TextMate convert, something I didn’t believe could happen. Yeah, TextMate is that good.

  15. Thanks, Microsoft Word, for all the (muscle) memories | Richard Hartley says:

    [...] because I've got used to where the keys are on the keyboard. When it comes to word processing, as Bill Bumgarner of Apple points out on his blog, doing it at speed "is a tremendously intimate bit of interaction between you and the editing [...]

Leave a Reply

Line and paragraph breaks automatic.
XHTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>