Android developer. Beer & coffee snob. Cultivator of beard. Ich lerne Deutsch.

last update:

I presented “Things That Suck About Android Development” at this year’s mdevcon conference in Amsterdam. It’s a great conference in an amazing city. I highly recommend it to anyone developing mobile apps. The title is admittedly a bit sensational, but my goal was to highlight many of the painful parts about developing for Android and how to avoid/fix them. Here are the slides!

I’m a bit late with my annual Top 10 list, but here it is roughly ranked by Google Music play count: Earl Sweatshirt - I Don’t Like Shit, I Don’t Go Outside I was finally lucky enough to see him live and he didn’t disappoint. Another great release. This soundtracked numerous skateboard and chill sessions. Vince Staples - Summertime ‘06 His “Hell Can Wait” EP made my list last year and I knew this one would be on this year’s list right away.

Before the Design Support Library was announced at Google I/O last month, I had numerous third party libraries in my projects for various elements of Material Design. I’ve enjoyed replacing the nav drawer, tabs, and parallax scrolling libraries with their support library counterparts. However, on one of my projects, we needed an expanding floating action button (FAB) similar to the one in Inbox, which the support library does not currently provide.

I’ve had a pretty big secret for the past month or so; something that only my friends and family know about. We’ve all been there, sneaking around interviewing for a new job like we’re having an affair. Only this time, it was different. As an Android developer, this was like trying out for the majors. No…seriously, y’all…Google invited me to interview. My adventure started early last month as I was triaging my inbox.

I’ve been working with Firebase lately in preparation for adding data synchronization to my Music Library app. Their docs did a great job of getting me set up. Using the sample app as a guide, I even got Google+ OAuth working without much trouble. From there, it didn’t take long to load data into a Firebase instance partitioned by Google account. All that was left was to query the data out of Firebase and I’d be able to see the sync magic in action.

I thoroughly enjoyed my last night in Berlin a little over a week ago; so much that I didn’t notice my phone was missing until the end of the night. Shake your head and say it couldn’t happen to you. I thought the same thing until it did. Normally, I keep my phone in one of my front pockets, but I was wearing a coat that covered the pocket, making it a bit more difficult to grab my phone quickly to check Google Maps.

It was an honor to speak at and attend MCE Conference in Warsaw last week. I participated in a workshop where I learned about prototyping with Android and Arduinos. I attended talks about Groovy, Kotlin, Proguard, design, scaling apps for emerging markets, and some handy new libraries. That alone easily makes MCE one of the best conferences I’ve been to. On top of all that, the networking with fellow speakers and attendees was a personal highlight.

A few months ago, I posted about how to use Gradle tasks to “delombok” code using Lombok annotations before generating Javadocs. My solution for running the delombok task used Ant and was based on what I found after the requisite Google & StackOverflow searching. This worked just fine until Android Studio 1.0 and the associated Gradle build tools were released at the end of the year. The crux of the problem appeared to be a change in the way dependencies are merged during compilation.

The end of another year means it’s time for the annual Top 10 Favorite Albums list. Ty Segall - Manipulator While not the leader in sheer track plays via my Google Play Music account, this album is perfect all the way through. It certainly spent a lot of time on my turntable as well. Nothing - Guilty of Everything A wonderful example of the specific brand of rock music I love.

I started developing Music Library about four years ago when I wanted an app for organizing my record collection. Armed with my Nexus One, Eclipse, and a copy of Apress’ Pro Android, I spent my nights and weekends learning the inner workings of my now-favorite mobile OS. Over the years, Music Library has been a playground of sorts for exploring various open source libraries, patterns, and best practices. While there is still a fair amount of code I would write differently today (I’m looking at you, ContentProvider), the app has been and continues to be an enjoyable side project.