I use emacs for Android development, AMA

Android Studio is an incredible product but...

Intro

A while ago I switched to Emacs pretty much "full time". I've worked at Twitter (for over 5 years!) and I've been an Android developer all that time. As a tech lead I probably spend equal time in Jira, Gmail, Google Docs, and writing code these days. When I do write code, it's 99% in Emacs. Even for Android development. I build from the command line, and I only open Android Studio when I need to debug something or want to step through the code. That's fairly often, but even then I don't edit much code while it's open.

When and why

Emacs has been my preferred editor for quite some time now, but I really began using it earnest when working at Netflix. In the video game studios I worked at we used a combination of Metrowerks CodeWarrior and Microsoft's Visual Studio© for game and tools code.

Then came Playstation3©, Xbox©, and Xbox360©. I spent time going in and out of various IDEs and editors.

One of my first responsibilities at Netflix was helping out a little bit on their PlayStation2© client (yes, you read that right). I was really just reviewing code that an external developer had written, and testing bugs and whatnot. I didn't write any significant portion of the code (that I recall). I used CodeWarrior back in the day for PS2© development and it was actually pretty good.

Then, as part of the core technology team at Netflix, I was no longer "just" working on the consoles, I was building and running Linux reference implementations, editing on Windows, Linux virtual machines, then Mac laptops, etc. I got tired of trying to remember various keybindings. If it's not obvious from the fact that I use Emacs, I prefer to keep my hands on the keyboard and not click around on too many GUI elements if I can help it.

Back to the point

So what do I miss out on? Here is what I don't get in Emacs that seems the most useful in Android Studio:

And what do I gain (in my opinion)?

Helm

Helm has been a real game changer for me. I feel like it adds a super power of easily searching an extremely wide range or an extremely focused range. Read more about it's capabilities here.

From narrow to wide: