You might be using the Google Calendar API, or alternatively email markup, to insert events into your users' calendars. Thankfully, these tools allow your apps to do this seamlessly and automatically, which saves your users a lot of time. But what happens if plans change? You need your apps to also be able to modify an event.
While email markup does support this update, it's limited in what it can do, so in today's video, we'll show you how to modify events with the Calendar API. We'll also show you how to create repeating events. Check it out:
Imagine a potential customer being interested in your product, so you set up one or two meetings with them. As their interest grows, they request regularly-scheduled syncs as your product makes their short list—your CRM should be able to make these adjustments in your calendar without much work on your part. Similarly, a "dinner with friends" event can go from a "rain check" to a bi-monthly dining experience with friends you've grown closer to. Both of these events can be updated with a JSON request payload like what you see below to adjust the date and make it repeating:
This event can then be updated with a single call to the Calendar API's events().patch() method, which in Python would look like the following given the request data above, GCALas the API service endpoint, and a valid EVENT_ID to update:
If you want to dive deeper into the code sample, check out this blog post. Also, if you missed it, check out this video that shows how you can insert events into Google Calendar as well as the official API documentation. Finally, if you have a Google Apps Script app, you can access Google Calendar programmatically with its Calendar service.
We hope you can use this information to enhance your apps to give your users an even better and timely experience.
At Area 120, Google's internal workshop for experimental ideas, we're working on early-stage projects and quickly iterate to test concepts. We heard from developers that they're looking at how to make money to fund their VR applications, so we started experimenting with what a native, mobile VR ad format might look like.
Developers and users have told us they want to avoid disruptive, hard-to-implement ad experiences in VR. So our first idea for a potential format presents a cube to users, with the option to engage with it and then see a video ad. By tapping on the cube or gazing at it for a few seconds, the cube opens a video player where the user can watch, and then easily close, the video. Here's how it works:
Our work focuses on a few key principles - VR ad formats should be easy for developers to implement, native to VR, flexible enough to customize, and useful and non-intrusive for users. Our Area 120 team has seen some encouraging results with a few test partners, and would love to work with the developer community as this work evolves - across Cardboard (on Android and iOS), Daydream and Samsung Gear VR.
If you're a VR developer (or want to be one) and are interested in testing this format with us, please fill out this form to apply for our early access program. We have an early-stage SDK available and you can get up and running easily. We're excited to continue experimenting with this format and hope you'll join us for the ride!
Posted by Michael Burns, Software Engineer, Publisher Tagging & Ads Latency Team
Our goal is to help publishers monetize their content and build sustainable businesses through advertising products that allow sites to load as fast as possible to minimize impact to user experience.
Almost two years ago, our compression team announced a new compression algorithm called Brotli. Today, we are happy to announce that the Brotli compression algorithm is now being used to compress Google Display Ads whenever possible. In our experiments, we see data savings of 15% in aggregate over standard gzip compression, and in some instances, a savings of over 40%! This reduces the amount of data sent to end users by tens of thousands of gigabytes every day! This also results in faster page loads and less battery consumption.
We hope results like this will encourage wider adoption and will advance web standards such as Brotli compression.
Enterprises are always looking for ways to operate more efficiently, and equipping developers with the right tools can make a difference. We launched Team Drives this year to bring the best of what users love about Drive to enterprise teams. We also updated the Google Drive API, so that developers can leverage Team Drives in the apps they build.
In this latest G Suite Dev Show video, we cover how you can leverage the functionality of Team Drives in your apps. The good news is you don't have to learn a completely new API—Team Drives features are built into the Drive API so you can build on what you already know. Check it out:
By the end of this video, you'll be familiar with four basic operations to help you build Team Drives functionality right into your apps:
How to create Team Drives
How to add members/users to your Team Drives
How to create folders in Team Drives (just like creating a regular Drive folder)
How to upload/import files to Team Drives folders (just like uploading files to regular folders)
Want to explore the code further? Check out the deep dive blog post. In all, the Drive API can help a variety of developers create solutions that work with both Google Drive and Team Drives. Whether you're an Independent Software Vendor (ISV), System Integrator (SI) or work in IT, there are many ways to use the Drive API to enhance productivity, help your company migrate to G Suite, or build tools to automate workflows.
Team Drives features are available in both Drive API v2 and v3, and more details can be found in the Drive API documentation. We look forward to seeing what you build with Team Drives!
Over the past five years, developers have created hundreds of projects with Blockly, our open source library for creating block-based coding experiences. These have ranged from education platforms like Code.org to electronics kits like littleBits and even Android app creation tools like MIT App Inventor. Last year, we also announced our collaboration with the Scratch Team to develop Scratch Blocks—a fork of Blockly optimized for creating coding apps for kids.
Today, we're finalizing our 1.0 release of Blockly on Android and iOS. These versions have everything you need to use Blockly natively in your mobile app, including:
Blockly's standard UI
Custom blocks, toolbox categories, and layouts
Functions, variables, mutators, and extensions
Code generation in JavaScript, Python, Dart, PHP, and Lua
Internationalization support (including for RTL languages)
While our 1.0 update today is focused on native mobile, we've also made several updates to the web project over the past six months. We've made major improvements to performance and testing, added more structured APIs, and improved touch support for the mobile web. In addition, we improved Internet Explorer and Edge support; Blockly is fully supported on IE10+.
We've done a lot of work to ease cross platform development, too! All blocks can now be defined by JSON, allowing a single set of block definitions to be used for web, iOS, and Android. Check out the documentationfor more details on all three platforms.
Recently we announcedthe addition of Brotli compression to the Google AMP Cache. All AMP documents served from the Google AMP Cache can now be served with Brotli, which will save a considerable amount of bandwidth for our users and further our goal of improving the mobile experience.
Brotliis a newer, more efficient compression algorithm created by Jyrki Alakuijala and Zoltán Szabadka with the Google Research Europe Compression Team. Launched in 2015, it has already been used to enable considerable savings in other areas of Google. While it is a generic compression algorithm, it has particularly impressive performance when applied to web documents; we have seen an average decrease in document size of around 10% when using Brotli instead of gzip, which has amounted to hundreds of gigabytes of bandwidth saved per day across the Google AMP Cache.
With smaller document sizes, pages load faster while also saving bandwidth which can amount to noticeable savings for users on limited data plans. The Google AMP Cache is just the beginning though, as engineering teams are working on Brotli support in many other products which can enable bandwidth savings throughout Google.
When her grandmother turned 80, Christina Hayek — Arabic Language Manager at Google — and her sisters wanted to give their beloved sitto a gift that would bring her closer to them. Chadia lives in Lebanon but her children and grandchildren are spread across the world. To bridge this geographical gap, Christina and her siblings gave their grandmother an Android smartphone. Much to Chadia’s surprise, she was able to use her phone in Arabic straight out of the box.
This isn’t magic—it’s the work of a dedicated localization team at Google. Spread over more than 30 countries, our team makes sure that all Google products are fun and easy to use in more than 70 languages. Localization goes beyond translation. While references to baseball and donuts work well in the US, these are not necessarily popular concepts in other cultures. Therefore we change these, for example, to football in Italy and croissant in France. Our mission is to create a diverse user experience that fits every language and every culture. We do this through a network of passionate translators and reviewers who localize Google products to make sure they sound natural to people everywhere.
With more and more people from around the world coming online every day, the localization industry keeps growing—and so does the demand for great translators, reviewers, and localization professionals. So, as part of Google’s mission to build products for everyone and make the web globally accessible, no matter where users are, we’re launching a massive open online course (MOOC) called Localization Essentials. In the words of Peter Lubbers, Google's Head of Developer Training:
"The language industry is one of the fastest growing in the world today, and as a former Internationalization Product Manager (and Dutch translator), I am absolutely thrilled that we've added Localization Essentials to our Google/Udacity training course catalog. The course is now available—free of charge—to students all over the world. This was a huge cross-functional effort; a large team of localization experts across Google came together and rallied to create this course. It was great to see how everybody poured their heart and soul into this effort and it really shows in the course quality."
Localization Essentials was developed in collaboration with Udacity, and is free to access. It covers all localization basics needed to develop global products. This is how Bert Vander Meeren, Director of Localization at Google, described the collaboration:
“Today, localization is becoming more and more important because the internet user base is growing rapidly, especially in non-English speaking countries. At the same time, education opportunities in the field are limited. This is an issue for our team and any business in need of large numbers of localization resources. So we decided to take the lead and address the issue, because who knows localization better than dedicated localization professionals with years of experience? Udacity already helped us develop and host several successful courses for Android developers, so this partnership was more than logical. This course is a great opportunity for anyone who wants to get knowledge and new skills in a still lesser-known field that’s important to develop products for a truly global audience. Whether you are a student, a professional, or an entrepreneur, you will learn a lot and expand your horizons.”
By sharing our knowledge we hope that more culturally relevant products will become available to users everywhere, to provide opportunities to them that they didn’t have before.
We’re looking forward to seeing how sharing this localization knowledge will impact users from all over the world.
Originally posted on the Firebase Blog by Francis Ma, Firebase Group Product Manager
It's been an exciting year! Last May, we expanded Firebase into our unified app platform, building on the original backend-as-a-service and adding products to help developers grow their user base, as well as test and monetize their apps. Hearing from developers like Wattpad, who built an app using Firebase in only 3 weeks, makes all the hard work worthwhile.
We're thrilled by the initial response from the community, but we believe our journey is just getting started. Let's talk about some of the enhancements coming to Firebase today.
Integrating with Fabric
In January, we announced that we were welcoming the Fabric team to Firebase. Fabric initially grabbed our attention with their array of products, including the industry-leading crash reporting tool, Crashlytics. As we got to know the team better, we were even more impressed by how closely aligned our missions are: to help developers build better apps and grow successful businesses. Over the last several months, we've been working closely with the Fabric team to bring the best of our platforms together.
We plan to make Crashlytics the primary crash reporting product in Firebase. If you don't already use a crash reporting tool, we recommend you take a look at Crashlytics and see what it can do for you. You can get started by following the Fabric documentation.
Phone authentication comes to Firebase
Phone number authentication has been the biggest request for Firebase Authentication, so we're excited to announce that we've worked with the Fabric Digits team to bring phone auth to our platform. You can now let your users sign in with their phone numbers, in addition to traditional email/password or identity providers like Google or Facebook. This gives you a comprehensive authentication solution no matter who your users are or how they like to log in.
At the same time, the Fabric team will be retiring the Digits name and SDK. If you currently use Digits, over the next couple weeks we'll be rolling out the ability to link your existing Digits account with Firebase and swap in the Firebase SDK for the Digits SDK. Go to the Digits blog to learn more.
Introducing Firebase Performance Monitoring
We recognize that poor app performance and stability are the top reasons for users to leave bad ratings on your app and possibly churn altogether. As part of our effort to help you build better apps, we're pleased to announce the beta launch of Performance Monitoring.
Firebase Performance Monitoring is a new free tool that helps you understand when your user experience is being impacted by poorly performing code or challenging network conditions. You can learn more and get started with Performance Monitoring in the Firebase documentation.
More robust analytics
Analytics has been core to the Firebase platform since we launched last I/O. We know that understanding your users is the number one way to make your app successful, so we're continuing to invest in improving our analytics product.
First off, you may notice that you're starting to see the name "Google Analytics for Firebase" around our documentation. Our analytics solution was built in conjunction with the Google Analytics team, and the reports are available both in the Firebase console and the Google Analytics interface. So, we're renaming Firebase Analytics to Google Analytics for Firebase, to reflect that your app analytics data are shared across both.
For those of you who monetize your app with AdMob, we've started sharing data between the two platforms, helping you understand the true lifetime value (LTV) of your users, from both purchases and AdMob revenue. You'll see these new insights surfaced in the updated Analytics dashboard.
Many of you have also asked for analytics insights into custom events and parameters. Starting today, you can register up to 50 custom event parameters and see their details in your Analytics reports. Learn more about custom parameter reporting.
Firebase for all - iOS, games, and open source
Firebase's mission is to help all developers build better apps. In that spirit, today we're announcing expanded platform and vertical support for Firebase.
First of all, as Swift has become the preferred language for many iOS developers, we've updated our SDK to handle Swift language nuances, making Swift development a native experience on Firebase.
We've also improved Firebase Cloud Messaging by adding support for token-based authentication for APNs, and greatly simplifying the connection and registration logic in the client SDK.
Second, we've heard from our game developer community that one of the most important stats you monitor is frames per second (FPS). So, we've built Game Loop support & FPS monitoring into Test Lab for Android, allowing you to evaluate your game's frame rate before you deploy. Coupled with the addition of Unity plugins and a C++ SDK, which we announced at GDC this year, we think that Firebase is a great option for game developers. To see an example of a game built on top of Firebase, check out our Mecha Hamster app on Github.
Finally, we've taken a big first step towards open sourcing our SDKs. We believe in open source software, not only because transparency is an important goal, but also because we know that the greatest innovation happens when we all collaborate. You can view our new repos on our open sourceproject page and learn more about our decision in this blog post.
Dynamic Hosting with Cloud Functions for Firebase
In March, we launched Cloud Functions for Firebase, which lets you run custom backend code in response to events triggered by Firebase features and HTTP requests. This lets you do things like send a notification when a user signs up or automatically create thumbnails when an image is uploaded to Cloud Storage.
Today, in an effort to better serve our web developer community, we're expanding Firebase Hosting to integrate with Cloud Functions. This means that, in addition to serving static assets for your web app, you can now serve dynamic content, generated by Cloud Functions, through Firebase Hosting. For those of you building progressive web apps, Firebase Hosting + Cloud Functions allows you to go completely server-less. You can learn more by visiting our documentation.
Firebase Alpha program and what's next
Our goal is to build the best developer experience: easy-to-use products, great documentation, and intuitive APIs. And the best resource that we have for improving Firebase is you! Your questions and feedback continuously push us to make Firebase better.
In light of that, we're excited to announce a Firebase Alpha program, where you will have the opportunity to test the cutting edge of our products. Things might not be perfect (in fact, we can almost guarantee they won't be), but by participating in the alpha community, you'll help define the future of Firebase. If you want to get involved, please register your interest in the Firebase Alpha form.
Thank you for your support, enthusiasm, and, most importantly, feedback. The Firebase community is the reason that we've been able to grow and improve our platform at such an incredible pace over the last year. We're excited to continue working with you to build simple, intuitive products for developing apps and growing mobile businesses. To get started with Firebase today, visit our newly redesigned website. We're excited to see what you build!
Posted by Amy Schapiro and the Women Techmakers team
The community of women in tech is growing in numbers and influence, which we witnessed firsthand just last week at Google I/O, Google's biggest developer conference of the year. Our total attendees were 25% women, thanks in large part to creating a number of cross-industry partnerships supporting women developer communities. 25% of the speakers were women as well.
We know working together as a community is key to supporting women in tech. To that end, we are excited to announce a new collaborative resource. Women Techmakers is launching a new scholarship for women in tech around the world to increase their skills through enrolling in an online technical degree - the Women Techmakers Udacity Scholarship. Women Techmakers, Google's global program for women in technology, provides visibility, community and resources for women and allies around the world. Women Techmakers has partnered with Udacity, one of the world's leading online training platforms, as Udacity's flagship partner for women in technology to provide this scholarship to women across experience levels and geographies.
This new scholarship provides the opportunity for women to earn online certification in Android Basics , Android Developer, Front-End Web Developer and Full-Stack Developer, all courses co-designed by Google experts, and includes opportunities for women at multiple skill levels. Benefits include special access to a community of Googlers and a cross-cohort global online community. Upon completion of the Nanodegree within one year, scholars will receive certification from Udacity, a certificate of completion from Women Techmakers, a resume review by a Googler, and more.
This scholarship is the newest offering in a portfolio of Women Techmakers programs to support women and allies globally, including Membership for curated, personalized professional support, our video series and guides on building inclusive tech hubs, and our Scholars program, which provides funding and support for university women studying computer science.
Posted by Roy Glasberg, Global Lead, Launchpad Program & Accelerator
We're back at it again and excited to welcome an inspiring group of startups from all over the world for the 4th class of Launchpad Accelerator.
This time around, startups from Asia and Latin America will be joined by peers from Africa and Europe. In addition to expanding our reach, we’re also expanding our curriculum. We’ll help the startups dig deeper into machine learning and AI, to help them leverage Google’s latest technologies to scale their apps.
Launchpad Accelerator includes intensive mentoring from 20+ Google teams, and expert mentors from top technology companies and VCs in Silicon Valley. Participants receive equity-free support, credits for Google products, and continue to work closely with Google back in their home country during the 6-month program.
Class 4 kicks off July 17th, 2017 at the Google Developers Launchpad Space in San Francisco and will include 2 weeks of all-expense-paid training.
Here's the full list of participating startups (by region):
Africa
Kenya
Twiga Foods Ltd: A tech-enabled sourcing and distribution platform that replaces informal wholesale markets for the millions of small and medium size food and FMCG retailers in Africa's urban markets.
Nigeria
Delivery Science: Mobile forms to help large organizations get field data
Gidi Mobile Limited: gidimo is a mobile learning platform that uses mastery learning & social gamification to deliver personal advancement, in a fun way, and at unprecedented scale
Flutterwave: Flutterwave is building technology and infrastructure for digital commerce across Africa starting with Rave, an app that helps merchants accept mobile money, cards and bank account payments across 4 African countries.
Paystack: We help businesses in Africa accept payments from their customers.
South Africa
JUMO Marketplace: Jumo is the largest scale, lowest cost financial services marketplace for emerging markets
Asia
India
EdGE Networks: HR solutions provider powered by Artificial Intelligence
FastFilmz: The Super App for Super Fans of South Indian movies!
IndiaLends: Credit underwriting and analytics platform for unsecured consumer lending
RailYatri: Intelligent, big data platform that leverages crowd-sourced content to help long distance travelers
RecipeBook: Intelligent solutions in food and retail powered by deep learning computer vision
SigTuple: Smart screening solutions powered by data driven intelligence
Indonesia
NADIPOS: Restaurant Management Platform helping simplify operations and analytics