Tuesday, December 6, 2011

Emacs Org-Mode

As a vi and vim user I had never come across emacs org-mode until yesterday.  I've spent the last couple days fitting it into my project and task workflow and must say that I am really impressed.  Traditionally whenever I have tried to use project management or task tracking software it would always get in the way of how I wanted to do things.  This inevitably would lead me back to a text file list on my desktop, a piece of paper with notes, and recently a google doc that looks a lot like my desktop text file.  Org-mode has opened my eyes to how project management should be done.

First off, since I'm not an emacs user yet, some of the key binding issues have slowed me down.  Out of the gate I have set up my projects in a simple, and I think, logical fashion.  I've read about other people maintaining a single .org file with their entire life in it, but that seems a bit too unwieldy to me.  Perhaps that's my lack of emacs skills showing through though.

In my initial setup, I have a .org file for each project.  Projects that are work related are simply named work_.org in addition to a catchall project called work_general.org.  The general project is a place to put quick TODOs that popup out of meetings or conversations that are not really projects.  Overall, it's a nice easy way to keep everything work related together and grouped by project.  Now, this does mean I have to add each .org file to my .emacs to have it show up in my global TODO list, but that's actually a good thing since I want my global TODO list to only show work items.

For my non-work life I have a life.org file.  I keep this file out of the global TODO list and use it stand alone for everything from what needs to be done from things with the house to buying gifts to whatever ("TODO cancel XBOX live subscription" is on there).

Finally, personal projects have their own file, projects.org.

The beauty of org-mode is that it's just text files.  At any point and time while taking notes on a project I can type "TODO" and the line becomes part of the global TODO list.  The list lets me jump right to the TODO line and see the context of the notes that caused the TODO to come about.  Something so simple, yet at the same time completely awesome.

This is the first time in a long time I've been excited about something like project management.  I'm not really surprised that emacs contained org-mode (isn't emacs it's own self hosting OS by now?), but at the same time I never thought to look.  The org-mode website mentions converting vi users to emacs.  I can't say that will happen, but hopefully learning both vi and emacs to a sufficient level will not be like crossing the streams.

1 comment:

  1. Try using "viper" with org-mode in Emacs, and you'll have the best of vi keymaps and Emacs org-mode functions! It's an awesome combination.

    ReplyDelete