Tuesday, January 29, 2013

Vim, Emacs, and Rome

After visiting France, my wife and I spent a week visiting Florence and Rome before returning back to the States.  The architecture of Europe is amazing.  Even small towns have cathedrals about like we have Starbucks -- one on every corner.  However, of all that I have seen, Rome's subway system struck me as the most awe-inspiring engineering feet that I have seen.

That is not to say that Rome has a particularly good subway system.  In fact, it struck me as pitiful compared to Paris or London.  In Paris, the subway will take you within a block or two of wherever you want to go.  In Rome, there are only two lines in the entire city, which form a giant plus.  You are lucky if your destination is six or seven blocks away from the closest stop.

The problem is that Rome has a rich and ancient history, and any time you dig twenty fit down, you will probably hit some of it.  Work must stop so that an archaeological team can investigate it.  In this context, it strikes me as nothing short of miraculous that someone could cut a continuous line across Rome.  Twice.  Whoever had the vision, the political savvy, and the sheer force of will to accomplish it is a force to be reckoned with, and a (wo)man to be feared.

Returning home, I discussed editors with one of my friends.  He and I are both editor junkies and have had phases of being Vim and Emacs fanboys.  However, my friend has recently been experimenting with SublimeText.  When I asked him why he was switching, he responded that it was for ease of writing extensions.

Both Vim and Emacs are highly extensible.  Both are old, even ancient as editors go.  Despite the extensibility of these editors, their age makes them difficult to adapt sometimes.  I was struck with a parallel to Rome and its challenges building its subway system.

Is it possible to streamline and revitalize these editors?  Or are all large, successful software projects doomed to be mired in their own histories?

No comments: