This is a second is my series of epiphanies in software development, and the subject is: Emacs. I used Emacs for programming when I was in college, and I would say I was probably more into customizing my .emacs then about 80% of everyone. I customize the keys so that I can use i, j, k, l as arrow keys, and then one more key over to get to the previous word and then another over to get to beginnig/end of line. I also programmed macros in Elisp, things like getters and setters in java, for example. At my high-on-emacs period, I would routinely digress from my project at hand to write elisp functions instead. I also loved the way you can record macros, and then tell it no run the macro n times, that's an ability that I've never regained after abandoning emacs. Why did I abandon Emacs, you might ask? It was partly because of Eclipse, which I will post about later. For more fun about emacs, read Stevey's Emacs is to a lightsaber as Eclipse is to a laser blaster post.