Highlights of DroidCon 2017
Recently, Skillsmatter returned to the Business Design Centre to bring us Droidcon London 2017. The event is designed for Android developers of varying skill levels to join, learn and discuss new and exciting changes in all things ‘droid. The largest of it’s kind in the UK, Droidcon is a conference I have often been told about my many colleagues but I have never actually experienced for myself. This year I decided to change that.
Each year a number of top professionals within the industry come to present engaging presentations and talks on specific aspects of Android development. From the opening keynote by Chet Haase & Romain Guy to the closing presentation by Jake Wharton, each talk was an insight into the current trends and the evolving future of the Android Development platform.
Here are some of the key things that I took away:
Kotlin is here to stay
Since its introduction as a first class citizen back at Google I/O in May this year, Kotlin has seen a phenomenal adoption rate across developers and applications. This was certainly something that was reflected throughout Droidcon. Not only was there a wide range of talks specifically discussing Jetbrain’s language on offer but even seeminly unrelated talks were using Kotlin in example code.
One such talk was Maria Neumayer & Amal Kakaiya’s Travelling across Asia – Our journey from Java to Kotlin. I found this one particularly interesting as it showcased how other developers were finding the transition to Kotlin as their primary development language of choice. At xDesign, we have been using Kotlin since January, five months before it was officially supported by Google, and have already published apps that are fully written in Kotlin. After having experienced this shift within our own company, I wanted to hear others experiences and compare their challenges and success to our own.
In our case, we had the opportunity to build our newer projects from the ground up. Having a fresh new project inevitably meant a lot of “learning as you went” and only needing to look at older Java work for reference. However, at Deliveroo, Maria & Amal found themselves taking a pre-existing and verbose Java application and over time converting it to Kotlin. Hearing about their different development experience gave me a few tips that may help others, such as new Android Developers, who are converting to Kotlin for the first time. Their talk and passion for this new way of developing was a good example of the interest that Kotlin has gained in a relatively short time and the way in which Android developers across the industry are embracing it.
Despite our early adoption of Kotlin I personally still feel I have plenty to learn about the new language. There were a few talks for new and existing Kotlin developers, one such was Josh Skeen’s Pragmatic Kotlin on Android. One thing that really stood out was that Skeen showed what decompiled Kotlin code would look like in Java, allowing for a deeper understanding of the differences and similarities of the two opposing development languages.
Supporting offline functionality using databases in Android is a hotly debated topic amongst developers. There are numerous options from the base SQLite implementation to specific solutions like Realm or CouchDB. However, this wealth of choice also means finding a solution that suits the developer. With one of xDesigns upcoming projects where offline persistence is a necessity, we have been looking for new methods for storage.
Recently, Google showcased Room. Room is a new data persistence library that provides an abstraction layer over SQLite to allow fluent database access while harnessing the full power of SQLite. The concept of Room interested me greatly, but I didn’t know much about its implementation. It was for this reason I chose to attend Florina Muntenescu’s Data Persistence in Android: There’s Room For Improvement.
Florina discussed in depth how to use Google’s new SQLIte wrapper from its components, to how to access data on separate threads. I got some great insight into how to handle migrations. Migrations between database versions can be cumbersome and difficult depending on the libraries used. Muntenuscu explains that Room has a dedicated Migration class that eases the transitions between differing versions. Each time a migration between versions is required a new Migration class is created that details the changes that need to be made to make older versions of the database compatible with new ones. This is then simply added the database builder. This talk was a good primer for Room and will be something I will be referencing while working with it in future.
Of course it wasn’t all about the talks at Droidcon 2017. On the show floor Google had their very own booth showcasing “Android Things”. Things is part of Google’s IoT initiative, offering the ability to create apps for boards like the Raspberry Pi 3 using the familiarity of the Android ecosystem. To showcase its power Google had a rather brilliant example of how Android Things can be use facial recognition. The “Drawbots” on show were designed to draw portraits of convention goers. First the users would take a selfie using the device’s camera. Then, using OpenCV, the device detects the face of the user and then converts the picture taken into a black and white image. From here the drawbot will draw the image it has created on paper. Whilst this could be considered a rather gimmicky use of the technology, it is a fun demonstration of the variety and opportunities that Android Things can offer hobbyists and businesses alike.
All in all, I found DroidCon excellent. Each presentation I attended was certainly informative and the wide range of topics covered meant that I never struggled to find something that could satisfy my curiosity. If there were something I believed could be improved upon for next year was the frequency and length of time between sessions. Each session was followed by a 15 minute to half hour break. Where this was sometimes welcome, it also resulted in a lot of dead air. Despite booths from companies such as Monzo, Compare the Market and Google there was simply not enough on the show floor to fill these breaks. Going forward it would be good to offer more to attendees perhaps in the vein of more exhibitors and more interactive experiences, however it’s definitely on my list to attend next year.
You can check out all the talks online here and require a skillsmatter account to view. You’re welcome!