A Look at Vim: Does Extensibility Lead to Longevity?

Vim (short of Vi improved for the uninitiated) is celebrating it’s 20th birthday today . Vim has something of a reputation as being an editor for the “hard-core” Unix types and, though there is some truth in that, it is not entirely true. Vim and its counterpart Emacs form the foundation for the modern code editors we use today; full disclosure I use Vim everyday but I also use XCode and, on a somewhat less regular basis, IntelliJ.

There really isn’t much more that can be said about Vim as an editor, that hasn’t already been said time and time again. I think it would be interesting to look at Vim as an open source project, since it is one of the most successful open source projects to date; free software sticklers might insist that it be referred to as a free software project, since the Vim license is GPL compatible.

I don’t know what about Vim has made it so successful even to this day, but it is difficult to deny that success. A close, okay closish, examination of the workings of Vim suggests that its embracing of the principles of user freedom and openness to outside developers to not only to the core project itself but to also develop extensions for the application; if you are starting with Vim and are interested in getting into using Vim plugins / extensions, take a look at NerdTree, which allows you to view the files in your project all at once to the left of the screen similar to what you might see in something like Textmate.

Does that mean that we should all be allowing plugins and extensions in our software? What if the application in question is being distributed on something like the Apple AppStore where there is no way to implement this type of thing and still be allowed on the distribution platform? Obviously, the answer is probably no. For some applications, it is important to keep an end to end user experience and allowing outside developers to tinker with your product would be counter productive to that goal in those situations. However, going forward I am going to give serious thought to how a robust plugin architecture can enhance my software projects and I suggest that you do the same. Who knows, your project could be the next Vim.

  • Awesome post, where is the rss? I cant find it!

    • Eel

      It’s imperative that more poelpe make this exact point.

  • michael

    Glad you like it. The RSS feed is on the right side of the screen just above the bio. The button for it says “subscribe”

  • This is a excellent site.

  • As soon as I noticed this internet site I went on reddit to share some of the love with them.

  • As soon as I found this internet site I went on reddit to share some of the love with them.

  • This is one awesome blog article.Thanks Again. Really Great.

  • Really informative blog post. Awesome.