Google IO 2018 — Schedule Analysis
Google IO 2018 is coming! Yahoo!! To predict what’s coming up, and what’s the trend moving forward, I’m just analyze the schedule and come up with some conclusion.
It’s all extracted from https://events.google.com/io/schedule/ (the link will not be valid after 2018 :) You could read it out, lots of detail, but below is some quick glance summary
Event Topic Categorizations
From the events (Session, App Review, Office Hour), each of them are tagged on the topic shared. My summary of it
- The focus of this year is still Android-&-Play. Having said that, this is a large scope, where it combine both Google Play and Android now, and not only that, it has AndroidThing, Auto, AndroidWear, AndroidTV etc, not merely Mobile App development. In 2017, it was 2 different tags with 43% (27% Android, 16% Play), which now drop to 30%. The focus has shifted quite a bit to other areas. More exploration of this big area in section below…
- Web still stay pretty stable, it is still pretty much of interest, where some dedicated topics on Progressive Web Application (PWA) and Accelerated Mobile Pages (AMP) are shared together with other web related topics, and introduction of .app domain, which uses HTTP Strict Transport Security (HSTS).
- Cloud based tool and analytic is still a domain that is not fully dominated by Google. Hence obviously Google continue to promotes using Firebase and Google Cloud. The joint categories percentage is still about the same as 2017, where it increase slightly from 12% to 14%. Interestingly not much mention on Fabric. that was bought over from Twitter early last year. Also there has been a topic specifically to promote migration from GCM to FCM, which seems pretty dated topic to me.
- Design is referring to Material Design, that spans across Android, Web, Assistant, etc, and also quite a bit of Flutter. Hence no surprise it stands out quite a bit. Clearly, Google focus more on making better design compare to other area of like Identity and Accessibility, This might be perhaps also as preparation for Android P launches together with the advent of Material Design 2. Nonetheless, it has shrink quite a bit compare to 2017, perhaps due to the addition of other tags.
- It is not surprising to see that IoT and Google Assistant comes slightly behind Machine Learning & AI. Quite a bit of topics are integrating them to Android, Web (including Firebase/Cloud) and Machine Learning & AI scope of work, as they do serve as peripherals to these areas and strengthen the other part usage.
- Since the introduction of Google Cardboard, AR & VR continue to have it’s space in Google IO, with Google Daydream introduced next. Not much new thing observed from the schedule this round though, but clearly AR is now a category by itself, where Google introduce ARCore early this year, probably as a response to Apple’s ARKit.
- This year, I would say Flutter is the rising star, given it’s a brand new thing, and it gets a tag to itself instead of put under any other tag. Its development using the Dart language could be developed once, targeted on both iOS and Android, and yet native app look. Something to watch out.
Android Specific Topics…
As seen above, the Android-&-Play scope is pretty huge. So I decided to extract more details on Android Specific related items. Obviously there are lots of Android, so I filter out those that are pretty common, and only select the top pick of items.
From here, we are aware that non-mobile related item is forming part of the Android-&-Play category. Their presence are significant, but there are greater presence of generic Android item that as a Mobile Developer I could grab on.
Within the Generic Space, we could see quite a bit of emphasis on Android Studio as the main tool to support our development.
As for development side, the top topic is the one introduced last year, Android Architecture Component. It seems this grows on significantly, and is used in the this feature featured topics as below
- What’s new in Android Architecture Components
- In-app navigation: principles and recommendations
- Paging with RecyclerView
- Fragments in the Architecture Components world
- Background processing — principles and recommendations
So, if you haven’t learn about Architecture Component. Start learning it. (I have a simple tutorial on it here).
Right next to Support Library, is Android KTX, the Kotlin Extension Function library specifically for Android. If you haven’t switch to use Kotlin, you should start considering, as there will be more and more of this language for Android.
Other Android Item of Interest…
There are other area that though count appearance is little, but they attracted my attention, they are as below: -
- Android AR Apps — With ARCore, now Android App can be use for AR purposes.
- Android Neural Networks API (NNAPI) — Provided by Android version 8.1 at low level for highly AI computational app.
- Android Vitals — A new dashboard that helps you monitor your App’s performance
- Android Libcore — The core library of Java language for Android, that I heard about first time.
- Android Bazel — A new Build tool for Android that, that is used even for Tensorflow compilation for the App. Will it replace gradle?
- Android Testing Support Library (ATSL) — A new testing library that was mentioned
- Android Wear — I am surprise this is still here, as I thought this is dying off. It was there the last year as well. Something to watch out on.
- Android Protips — This was already there Google IO 2011. But this is revive to show the modern way of App development moving forward
- Android Media (ExcoPlayer) — An open source Media Library by Google that seems available since last year.
Something about Android Version
While searching for Android, what comes to my list is the Android version. Looking at the count, surprisingly not much mentioned about the Android Version, but in this little mention we could dig something about what’s coming.
For Android P, what will be shared is having a standardize fingerprint authentication dialog for authentication, some better dynamic sound effect processing on this version of Android and also new Android WindowManager and ActivityManager features for Android P.
As for Android Oreo, there’s going to be sharing how one could optimize the Apps for Android Go, the entry level Android OS for lower cost devices in developing countries. Also, Google Play will require app updates to target Android Oreo or above starting this year. As for OC MR1, is the Android Oreo version with Android Neural Network API.
What’s New …
Not all topics in Google IO is with newly introduced thing. So a quick way to find out is grab of
what's new keyword. (About 2 to 3 topic I rearrange, the other are actual topics provided).
If you are interested in any of the below area, do watch out something new to be shared in the coming Google IO 2018.
What’s new in Android
What’s new in Android accessibility
What’s new in Firebase
What’s new with Android TV
What’s new in Android Runtime
What’s new in Android development tools
What’s new in Chrome DevTools
What’s new in Android Things
What’s new in automative
What’s new in Augmented Reality
What’s new in Google Photos
What’s new in Wear OS by Google
What’s new in Android Architecture Components
What’s new in web accessibility
What’s new with the Google Assistant SDK for devices
What’s new in Android Support Library
What’s new with Material Design
What’s new in Angular
What’s new with the Android build system
What’s new in Android security
What’s new in Android app for Chrome OS
What’s new for online checkout
What’s new with sign up and sign in on the web
What’s new with ConstraintLayout and Android Studio design tools
What’s new with Android Studio Profiler
Grabbing through the topic and the descriptions, interestingly several programming languages are found. Below is the statistic.
Obviously Kotlin who gained First Class Citizen in Google IO 2017, continue to be the top place of this year. Google also hires Jake Wharton for the Kotlin work there, and he will be presenting about Android-KTX, special extension functions of Kotlin specifically for Android, in this coming Google IO.
There is a dedicated topic on introduce new stuff for Angular this Google IO, and some hands on Angular App development.
Java is often mentioned together with Kotlin as part of the supported language. A little sidelined language, especially with the recent Oracle legal case with Google.
C++ is the regular Android support session.. I would say it has more attention than Java in the Google IO, as there’s dedicated session for it. Though this could be mainly due to a more complicated flow it has. Hopefully the Android Bazel compilation would make things easier. One thing interesting is, the C++ development topic here is no longer tied to NDK. (note: NDK is no longer found in the topic description).
Scanning through the Google IO Schedule 2018 itself is really insightful. I got to learn about something that has exist quite a while that I’m not aware of, also have a feel of Google’s direction moving forward, by analyzing the trend of topics change.
Also there are some area that I surprise didn’t appear as much.
- Instant Apps: It seems like it will be called Google Play Instant. There are two sessions talking about its success, but nothing about enhancing it, given it still has so much limitation. I have made one before and its manage to attract some traffic for actual installation. But I have to say the development flow is still pretty raw, as I shared the issues I found with it here (I have filed bug to Google, and perhaps some has been fixed).
- Google Glass 2: I thinking this round we would see a little on Google Glass 2, but instead Android Wear is in, but nothing mentioned about Google Glass for now. Perhaps might come in as a surprise later?
- Sharing of Material Design specifically for Android P. Rumor has been Android P would introduce a new way of designing, but there doesn’t seems to have a dedicated topic for that. Perhaps I miss out, or mis-understood about the rumor. Or perhaps it is embedded in some other Design topic.
Before ending, if there’s something as an Android Developer, what I think from the schedule, it is telling me to watch out
- The rise of Architecture Component. Indeed it is now explore in more area and deem to provide a great development pattern for many areas that seems challenging in Android Development
- Kotlin — the language for Android development. I would not be surprise if in a year or two, you’ll not likely to hear people start developing Android App with Java anymore. The language itself is so much rich and fluent and definitely the way to go.
- Flutter — this seems a very promising new way of App development, cross platform, and still native look. Google seems to push it much this round. Let’s see how it goes.