Google IO 2018
I was fortunate this year to be able to go witness Google IO. These are just some of my notes from the event. Many are during the event itself.
Big tech companies always know how to kick things off right. This year instead of skydivers Google kicked off IO 2018 with a very slick Progressive Web Application called “World Draw”.
On the big screens, we were able to see as more and more attendees and viewers launch the PWA and draw shapes that would become 3D models in the virtual world thanks to machine learning recognizing rudimentary drawings as the visual objects they were. Within moments tens of users ramped up to tens of thousands of users and beyond. The application was a hit, bringing the audience together and showing off the scale and power of Google Cloud and Firebase. It was awe inspiring.
Google continued on with their wonder show by getting right into showing all of their recent AI experiments and projects that will soon be available to the public.
As a developer I always focus more not on what something does, but what it enables me to do.
At #IO18, Google enabled me to do a lot. Specifically around Google Assistant, application development with Firebase and Machine Learning, web application quality with PWAs, and improvements to the Android ecosystem.
When Google Assistant launched it was quick to include ways for developers to create custom actions however, there was a lack of delivery and reengagement protocols for us to use with our customers to make sure they were able to find and continue interacting with our services, Google has changed that. With Action Links, developers can make it really easy for users to discover new actions. With Action Notifications, we can reengage with our users when necessary. Furthermore, Google added a way for us to integrate with their Assistant Routines, something already being implemented by Starbucks to preset your coffee alongside your morning routine.
This year Firebase has really stepped up and is the sleeper hit of the show. Very stealthy, Google continues adding little features to Firebase, making it something that every application developer should be using. Far beyond just authentication and authorization, Firebase provides many communication, application health, and data management services. Google added a whole host of Machine Learning models to make your applications not just functional but smart. I am already excited to see how users integrate this with their application. Due to these features being added into Firebase, I already imagine that this will be the primary way companies use Machine Learning in their applications for a while.
PWAs are something that Google has pushed for a few years and now the fire is starting to catch. This year PWAs were front and center with native integration with Chrome OS along with a host of new Lighthouse tools to create more actionable guidance for us application developers.
Finally, Google stepped up and added a host of new features and development best practices with Android. Creating Android Jetpack, Google expanded on its Architecture component and added more IDE support for some of the harder tasks. It even improved the release process, bringing down the sizes of Android application down to only what a user actually uses, not everything that is necessary for everyone.
These are just some of the things that Google added out into the world — the things as a developer that I was most excited about. In the coming days I’m sure you’ll hear a lot about Assistant Duplex, a way for Google Assistant’s AI bot to make calls on your behalf, or how GCP powers everything, or how MK Kit and TensorFlow are really spreading their wings and being available in more and more places. The future is exciting and colorful.
Yesterday the show was stolen and belonged to Google with so many new ways that Google is flexing it’s AI muscles to change our lives.
Google is showing the secret sauce and getting deeper into the specifics for developers. Today belongs to us.
I was fortunate to come with a small team from Bottle Rocket. We have agreed to divide ourselves into different knowledge camps to pull in as much knowledge as possible for Bottle Rocket. One developer took Android presentations. One took Google Assistant. For myself, I am focused on the web and the technology that enables all of the rest of the web to run — the Cloud. In this case specifically Google Cloud Platform.
Google is spending huge efforts to transform the Cloud and sharing their knowledge in networking and operations to help companies run globally for a cost and speed that only a few years ago was unheard of.
Core IoT
First up I was able to peek behind the curtain at GCPs Core IoT, the IoT Management tool. Thanks to this tool you can easily manage, connect, and grow an IoT integrated system that seamlessly connects to GCP’s PubSub and Dataflow connectors to feed analytics. Google has been working on this system for a while and it really is showing to the best in class.
Kubernetes and Istio
Kubernetes is the new hot kid on the block in development by expanding on what you can do with all those Docker containers you’ve been building and making them work together in a scalable, resilient manner. Kubernetes is built by Netflix and Google with planetary scale in mind but can be a real game-changer for companies of all sizes that are struggling with complex Microservices. Istio works in conjunction with Kubernetes to create a whole suite of monitoring tools and routing rules. With Istio and Kubernetes you can architect a system that is able to stay up no matter the storms your company may be going through. (video here)
Wordpress as PWA
With PWAs finally launching and people seeing the power it is time to retrofit the existing web to integrate the newest and hottest pieces of technology. Whether developers want to admit it or not Wordpress still is the platform that a large percentage of the web runs on for small sites to large enterprises. Google estimates that Wordpress runs 30% of the web. Now Google is working to integrate PWA and AMP experiences into Wordpress to speed up Wordpress sites and improve the experience for the user. This will be a new standard for Wordpress sites. (video here)
The Future of Javascript
Google always likes to show off new features that are being proposed in the Javascript/ECMAScript standard and this year they were able to show off new features that will make Javascript developer’s lives easier. One of the big features coming that might seem small but will have huge implications is the BIGINT data type. Previously Javascript developers had limits to their integers and the accuracy they could provide. Now Javascript is growing up and able to handle even larger integer values. No doubt this plays into more advanced mathematical expressions necessary to run Machine Learning and AI models in Javascript engines. (video here)
Tensorflow for Javascript
Today Google didn’t just talk about Tensorflow in the browser, but also released Tensorflow on NodeJS — and it is impressive. Running just as fast as Python using models that were previously created and trained with Python or created on its own. NodeJS is also known for running at speeds 10x faster than Python. Needless to say, Google believes that the speed improvements are about to really grow and NodeJS with Tensorflow is really going to take off.
Back to TensorFlow running in the browser though, it is so impressive! Able to train and predict models at speeds that make them effective to be used in the browser by users, without even sending any data to a server or the cloud. Save lots of processing on your servers while making the experience that much faster for your users. Definitely an exciting time in Machine Learning as it goes everywhere. (video here)
AIY
One thing I always appreciate about Google is their efforts to support DIY communities and releasing “products” for those that want to learn, grow, and create something unique — whether it will change the world or just the life of the creator. Google’s AIY project does just that with simple, DIY AI kits (that you can purchase at Target now) that help you create and program your own Google AI experiences while integrating with Google Services or any other services you want to program into the AIY Raspberry PI Zero controller. It was really inspiring to see how easy it is to create your own models and some simple hardware. Every year Bottle Rocket puts on a DIY 24-hour maker fest that we call “Rocket Science” and I am definitely considering making some of my crazier ideas using some of these devices. (video here)
Lighthouse
One tool that I always felt was underrated and hidden in Chrome was Google’s Lighthouse tool. Lighthouse would help web developers diagnose areas that could be improved around performance. Google now is growing Lighthouse to include new tools and features that will expand its reach. The biggest feature that I see is including an API with Lighthouse. Doing this can help companies integrate Lighthouse results right into Continuous Integration and Continuous Delivery pipelines. Thus ensuring that you have stable performance, improved SEO and top of the line Accessibility for every code release. (video here)
New In Angular
For many companies, Angular is the basis for the majority of their Web Applications. As the reigning king of Web Applications, new features and improvements directly correspond to improvements in your applications. Some important new features in Angular 6 include:
Schemantics — A way for you to customize the generated code for your application improving your development speed.
Angular Universal — A way for you to render out your Angular application when your users initially request your application. Improving first draw speed and user experience.
Angular Elements — A way for you to render out your Angular components without needing to include the entire Angular framework on your pages.
Ivy Renderer — This remarkable change in rendering can both reduce your bundle sizes along with improving the initial load time of your application. Ivy Renderer accomplishes this by removing unused code and only compiling the necessary code that changed between releases rather than all of the code. (video here)
Integrate Firebase into Existing Applications
Finally, Google showed the way that existing Applications can integrate with Firebase to get small and large wins. Many companies may feel that when you use a tool you immediately have to be all in. With Firebase you can integrate small parts like real-time push messaging, user authentication, or even machine learning models without having to completely change their current application stack. Companies can definitely go further and build entire application completely using Firebase, but with Firebase you definitely can pick and choose your platform benefits without having to start from scratch. (video here)
Today is the final day of Google IO 2018. The last few days have been a whirlwind of new mind-blowing projects being released alongside substantial improvements to existing products that are already out in the wild.
GCP on a Shoestring Budget
One fun “trick” with Cloud providers is how best to manage your resources and money. You can easily create unbelievably massive systems that can handle everything you throw at them, but the cost is equally massive. Google does enjoy showing clients how to best optimize your system so that you actually spend as little as possible. With a few tricks, you can run good sized systems that can handle thousands of users for nothing or next to nothing. (video here)
Firebase at Work
One of the worst rumors that plagues companies is how Firebase isn’t a “real” platform. There is always grumblings of scalability and security that “real” developers like state with no real backing. While it may have been true when Firebase first came out, or when you look at Firebase competitors they have these issues and Firebase gets lumped in with these bad actors. But Firebase is different. Firebase is scalable. Firebase is secure. The Firebase team runs everything using the power of GCP, being able to support projects on a global scale, while keeping Firebase up to date with the latest security standards. It is really impressive how much you can do with Firebase if you just make the leap.
One thing that was really interesting to hear from the Firebase PMs is all of the efforts and guidance that Firebase is doing around GDPR. The Firebase team was able to show off various techniques to handle the forget-ability requirements and security requirements of GDPR along with how Google handles the reporting needs of GDPR. It is nice to see how the biggest technology company handles these issues since we are all wading through the same problems. (video here)
Intro to Machine Learning with GCP
Google continues to be a leader in Machine Learning and AI technologies and is using this knowledge to drive the industry. Google is spending lots of effort to teach other developers how to get involved and use Google’s tools for our shared benefit. It’s great how Google already has 3 different options for integrating ML into our applications: ML APIs, Auto ML, and Custom ML in GCP.
With the ML APIs that Google currently has out, we can already do sentiment analysis, image analysis and other nifty tricks with almost no effort. This should be the first stop for developers.
With Auto ML, Google enables us to create custom models without building out the model. This benefit helps create unique ML experiences without the typical setup and research necessary. For many applications, I see this as the most viable option. Getting the necessary customization without all of the data science.
The final process is using Google Cloud to host, train, and run custom models. This is definitely the most manual but also the most custom. I wouldn’t recommend this as the first stop for most developers but for some applications it might be the only option.
Cloud IoT Core
This year Google really pushed the newly launched Android Things product with a host of IoT materials to help those working with IoT devices get the most out of their little devices. Part of Google Cloud, IoT Core is the central hub for anyone doing IoT. This product helps manage IoT devices, their communication, and configuration with the Cloud. This secure service helps companies stop focusing on the management and focus on what they intend to do with the data. By quickly marshaling the IoT data into Google Cloud using Google Cloud’s message broker — named PubSub — this data is able to get right to the systems that it. (video here)
Google IO is always an inspiring event full of ideas and small conversations that lead to big plans. There are many more things I didn’t include in this write-up but want to encourage you to view more, learn more, and get more involved. And if you are a lucky one to get a ticket, go. As a developer, you need to experience it at least once.
Jonathan Campos is an avid developer and fan of learning new things. I believe that we should always keep learning and growing and failing. I am always a supporter of the development community and always willing to help. So if you have questions or comments on this story please ad them below. Connect with me on LinkedIn or Twitter and mention this story.