I love building things for fun and lately I’ve been thinking about building a text editor. I’ve used a lot of text editors and IDEs in the past. Here’s the list in a chronological order:

  • vi/vim: my very first code editor. Used it back in my earlier C/C++/Java days
  • Dreamweaver: started using it once I moved to web development for HTML, CSS & JS
  • Eclipse: IDE of choice for Java development later
  • Netbeans: switched to it when Eclipse started becoming a memory hog
  • Visual Studio: used it whenever I wrote C# code
  • Emacs: php/javascript development back in school
  • TextMate: started using it after moving to Ruby
  • Sublime Text: absolutely loved the perf, extensibility (plugins) and liked it better than TextMate. I even bought a license :)
  • Atom: liked the idea of an open source text editor built in JS/CS


Currently, I use Atom on a daily basis. I’ve been using it since the day GitHub started distributing it in invite-only private beta (before open souring it) mode. After 3+ years, I think I am done with Atom. I am tired of using an editor that feels slow even when typing. Since, Atom is an open source project, I can’t really complain. It’s a wonderful initiative and I really appreciate the idea and motivation behind the project. For now, I will switch to Sublime Text. If my text editor proves to be better than Sublime Text, I will switch to using my text editor full time.

Hacking on Hack

I am going to start working on a text editor and I’m calling it Hack :tada:.

It aims to be:

  • Fast
  • Light Weight
  • Easy to use

I’m going to start working on the project and my goal is to have fun and learn a lot while I hack on Hack :wink:. As I progress with the project, I’ll try to talk about interesting aspects/problems that I come across, architectural decisions, design and implementation details.

This will be a very highly experimental project and chances are that Hack is not something for you. If you’re interested in tracking the progress of the project, you can follow along on GitHub at https://github.com/mohnish/hack.