Serge Chernetskiy

Droidcon 2017: A History of Android, and a Look Ahead

Senior Software Engineer Serge Chernetskiy recaps his first-ever trip to Droidcon San Francisco.

In early November, I made my first trip to Droidcon San Francisco, a conference solely for Android developers. I was excited to learn about all the new happenings in the Android community, but the very first talk I attended walked the audience through a history of Android development. In honor of the ten-year anniversary of the announcement of the first Android Beta, Chet Haase and Romain Guy took us through the previous decade, all from a developer’s perspective. Haase and Guy looked at the accomplishments, mistakes, and struggles throughout the maturity of the Android platform; it was interesting to see how the current landscape of the platform took shape, from pre-1.0 to Oreo.

Haase and Guy’s keynote address was a sharp contrast from Google IO 2016—it had a much more intimate feel and was geared more toward developers. My first smartphone was also the first Android phone on the market (the T-Mobile G1), so going through the growth of the Android OS made me nostalgic, as I was there for all of it, both as a user and a developer.

Kotlin in the Spotlight

I was very excited for the next talk. It was about generating Kotlin code, by none other than Jake Wharton, one of the most well-known and respected developers in the Android community. I felt a little star struck. Wharton’s talk was a deep dive into the library KotlinPoet, the advantages of Kotlin, and how to preserve good interoperability with Java. Kotlin can already compile to JVM bytecode and Javascript, and there’s active effort with Kotlin Native. This positions Kotlin very favorably in the near future as an excellent language for cross-platform use. I have been using Kotlin for the past year and have been very pleased with the language and the support that it has been receiving from Google and the Android community. It was good to see it get a lot of airtime at Droidcon.

Buzz in the Android Community

There were a couple of other talks I was interested in attending, one of which was about new improvements in the Gradle build tools for Android. A lot of developers will sympathize that building and compilation can take a long time; thus, many improvements in Gradle 4.0 were made to speed up build times through various caching techniques. Remote caching in particular is exciting, as it means that builds from multiple machines can now share a build cache. This also greatly improves build performance in continuous integration (CI) systems like Jenkins, as it can also take advantage of the remote cache. I’m looking forward to trying out these new features to see how it affects build times on my projects.

Another talk that stood out to me was about the new Paging Library, which is part of Google’s architecture components for Android. Leveraging LiveData, Paging Library allows for an easy way to create lists with paging support. It works really well with Room, Google’s database wrapper for SQlite, and is also relatively easy to set up for a network source. The library is still in an alpha release, but I’ve used it in a hobby project and it was already stable and intuitive; I don’t expect it to change too much as it progresses to a stable version. I’m happy with the direction Google is taking its architecture components. I think it’s about time that Google started making more of a statement on how an Android app should be architected and structured.

Looking to the Future

Droidcon covered some exciting topics, many of which on app architecture and Kotlin. It was cool to see that Kotlin is gaining so much traction in the Android community. After being bogged down by Java’s verbosity and extensive boilerplate, developing in Kotlin rekindled my love for programming.

Several talks looked to the future, suggesting that Kotlin may be able to solve current cross-platform woes of writing sharable code without having to resort to using C++. I can’t wait for a future in which I could write the backend and client apps all in one language.

Many other talks focused on architecture, specifically on reactive workflows (Rx) and modularizing apps for better maintainability and Instant Apps support. I’m a strong proponent of Rx, and I think everyone who has the chance should learn it. It simplifies a lot of complex workflows, allowing the developer to focus more on the architecture of the app.

I highly recommend going to conferences such as Droidcon, which are more developer focused. I always have a good time talking to other developers and discussing the future direction of the Android platform. It’s fun to learn about the cool things others are working on, as well as sharing personal experiences. In particular, I like to talk about the advantages of using Kotlin and Rx, and hearing how others are incorporating these tools in their workflows.

Overall, my colleagues, Randy and Dylan, and I had a great time, and look forward to attending Droidcon again!

Image courtesy of Rodion Kutsaev for Unsplash.

Serge Chernetskiy

Serge Chernetskiy is a Senior Software Engineer at L4 Digital.

Share this:

More Posts

Want Alerts When We Post New Stuff?
L4 Digital. All rights reserved. All wrongs reserved. © 2008-2017