ROM Developer Spotlight: Mike Chaney aka Mikeyxda of MeanROM
In this installment of ROM Developer Spotlight, I ask Mike Chaney of MeanROM ICS a few questions and attempt to get to know a little bit about the developer behind one of the most popular custom ROMs currently out for the HTC EVO 4G LTE.
For the people who might not be familiar with your work, how would you introduce yourself?
Well, I have a bachelor’s degree in computer science from the University of Maryland, College Park. After college, I worked for over a decade in Rockville, MD, at the Nuclear Regulatory Commission as a software engineer. In my spare time, I built up my own business, which I incorporated in 1998. By 2001, I was making more at my business working weekends than I did working for the government full time, so I resigned from the federal government and started the adventure that is ddisoftware, Inc. My “main” business is designing and selling Windows-based software, mostly related to digital photography and photographic printing.
My Android development work is a relatively new passion. I’ve been at it less than a year, but have started to fit into the Android development community and love the open source nature that is Android.
What ROMs are you currently producing and maintaining (and for what devices)?
My main work is MeanROM ICS. I started on the HTC EVO 3D but have sadly left that project behind due solely to time. Since my Android work is admittedly a part time venture, I really can only support one phone and do it “right.” So right now, I’m on the EVO 4G LTE. While MeanROM ICS is my primary work, I’ve done some other work and guides in areas like Google Now for ICS, 4×5 Rosie mods for Sense 4+, and various other projects where I lend a hand to other developers. Android, for me, is something where I truly enjoy giving more than receiving!
What do you like doing that has nothing to do with phones or ROMs?
Honestly, with me trying to make ends meet in this economy, I’m pretty much always working on either my ROM, some other Android project, or my Windows software. The little time I do get, I try to spend as much as I can with my two kids, but occasionally, very occasionally, you might see me writing a classical piece on the piano or maybe even catch a glimpse of me in the garage tweaking something on my 2009 Dodge Challenger.
Where do you live/where are you from?
I live about an hour south of Tampa, FL, near Sarasota now. I grew up in Maryland and just moved to Florida in 2007. With my internet business, I can be anywhere and well, I’m a sucker for endless summer. I’m getting too old to shovel snow, anyway.
How did you get started into the EVO line?
I could really make a long story out of this one, but to keep it short, a friend and I started writing apps for the iPhone back just before the OG EVO came out. He got a lot farther than I did, but we were both mired up in the big brother mentality that is Apple, and again, just being honest, the Mac that I bought to get the job done was simply alien to me. It all just seemed like a toyish fad to me: both the Mac and the iPhone. To me, neither worked as well as their competition. Then a friend got the HTC EVO. Man, was that a beautiful sight. No more postage stamp size screen. And I soon found out that the sky was the limit with Android. No more big brother and brainwashing campaigns. This was REAL STUFF. I was hooked. I went from there to the EVO 3D, and now to the EVO 4G LTE. I faltered for a second, almost jumping ship to the Samsung Galaxy S III, but the EVO 4G LTE’s screen was something I couldn’t pass up.
You currently have a thread with nearly 18,000 posts on XDA for your current work. Do you have any idea how many people are using your ROM or thoughts on why it’s so popular?
It’s difficult to tell how many are actually using it. There are multiple downloads and multiple versions, which really complicates things. I have inquired with some dev friends about extending MeanROM to other devices, but so far, it’s difficult to find someone who isn’t already over-committed in this economy. It’s actually difficult to pinpoint the reason for the popularity of my ROM. Of all the versions I’ve released, only three had ROM related bugs: 5.0, 5.1, and 5.2, and those were corrected in less than 24 hours (yes, that means 3 releases in 24 hours). The thread is mostly people asking for things, or the occasional error caused by another app or caused by people not having the required firmware to match the base we’re using. I guess part of the popularity is stability: I don’t just add stuff to my ROM. I decompile and actually look at all the code changes associated with any add-ons before I incorporate them. This avoids problems like mismatched bases and so on. I also try to do a good job listening to “the masses” to figure out what’s hot, what is doable, and what people overall really need. You’ll never satisfy 100% in any form of computing, but I try.
How has the EVO crowd treated you as a developer? You’ve been mostly off the drama radar, as far as I’ve seen.
The EVO crowd (and the XDA crowd) has treated me very well! I get a lot of positive feedback, kudos to keep me going, and I’ve worked with plenty of other developers sharing things and working things out. I really am hooked on the Android open source idea, and my main goal is to contribute as much as possible. That’s one reason that I state in my OP that if any other devs want anything I’ve done, just take it … don’t ask. All I ask is just the mention/credit that is standard for all devs. I never “hide” anything or try to keep fixes/mods to myself, and I always try to help other devs with their work, too. It’s not that I am any better than them (I don’t think I am). My point is that all developers benefit from each other, and some of what we do can be quite complex. I know we’ve all released things that, with input from other developers, can be improved. Again, that’s what I love about Android and open source. Together, we developers can do some great things!
What are your future plans for MeanROM? My future plans for MeanROM are to keep it on the cutting edge for the Evo 4G LTE. I suspect that Jelly Bean isn’t too far off for that device, so I foresee several days of intense work when that comes out: with me updating to the new JB base and weaving all the mods I can get to fit into the new JB base. With each major software base change, all the mods for the old base have to be examined, ported to the new base, modified where necessary, and tested. This takes quite a lot of time as I examine these and do all the porting myself: I never just drop things into my ROM without looking at the coding! I usually end up working 18-20 hours a day for 2-3 days just to get the basics ported over, like the performance mods, extended power menus, quick settings, email and other app mods, and so on.
I’m like anyone else here in that when a new major software base comes out, I want to be running the latest ASAP. So I try not to make my users wait more than about 3 days to get at least a preliminary MeanROM out, based on that new software. I can’t stand knowing that to get the latest goodness, you have to go run a stock ROM for a while, so I’m relentless in my efforts whenever there is an OTA, because no stock ROM should ever offer more than a custom ROM. At least that’s my theory.
What would you suggest for people who want to start doing what you do?
For anyone wanting to become an Android developer, I would say to take it one step at a time and have an open mind. Start with the realization that sharing is power, and get to know other developers and try to help as much as possible. There’s a learning curve of course, but start with the basic developer tools and read what others are using. Read up on tools like apktool, smali, and the Android SDK, and familiarize yourself with the structure of the Android OS and where things go, how scripts work, how apps (apks) are packaged, and so forth. Everyone learns differently, and I tend to learn more by “hacking” or decompiling stuff, changing a few things, and seeing what happens. I think the most important tip might be to take your time and try to help on other projects. In ROM development, none of us are really “creators.” We sort of just mold what others have already done, so you’re always standing on the shoulders of giants. Always remember that, and no matter how popular your works get, you are really just a cog in a much bigger machine that is Android!
What would you suggest for people considering going into the same line of work as you?
For me, I started by getting my BS degree in computer science, but I’ve been a software developer since I was 14 years old, so there are many ways to get into this line of work. I’d be afraid to pigeon-hole it to give advice on how to enter the software development world. The only thing I can say is that it helps to have a passion for it. For me, I’ve never been an artist, I can’t draw, I have a hard time creating graphics/logos, and software development is just a way I can be creative and create something of substance.
My only other talent where I can create is music, as I play the piano and write my own music (when I have time). For me, software development is a creative outlet that is also a career. I just do the best I can and I’m thrilled to see it appreciated by others.
Any thoughts or advice to people who might be afraid to root?
For those who are afraid to root, there are obviously risks that come with rooting. If you use your phone to make an occasional phone call, and you might pick it up once a week to update your Facebook status or play Words with Friends, maybe the (usually small) risk of rooting isn’t worth it for you. No one should “root without reason,” so understand the risks and benefits before you jump.
Another factor is: how difficult is it to root your particular phone, and what root method should you choose? There are options from “one-click root” all the way to full s-off root, and sometimes lots in between. My best advice for those who might be contemplating is to go read forum threads on the various ways to achieve root for your device and READ THE OP carefully! See what is involved. Then go read at least the last 5-10 pages in that same thread to get a feel for how many people are having issues with the latest update to that particular root method. Then you’ll have a better idea of what you are getting into.
Anything you’d like to add?
In the same way that I can’t do what I do without the help of other developers, I also depend a lot on my ROM users. It’s a good time of the year to think about what we are all thankful for, so I just had to add how thankful I am for the people who use my ROM, give me feedback, make suggestions, and even send me a donation from time to time. Without them, I couldn’t keep my finger on the pulse of what is needed and wanted in a custom ROM. I definitely can’t code all day and also keep up with the latest trends, and while I can’t make everything that everyone wants a reality, I do depend heavily on those who use my work. We all use our phones a bit differently, and I often miss potential features or fixes that my users see better than I can. So without them, I would have far less to offer!