TL;DR:
In this post, rather than focus on a specific code sample or API feature, I take a step back to thank viewers for their kind regards and recollect some of the videos I produced during my time as a Googler. In addition to linking to a table-of-contents page of my body of work, this retrospective features a subset representing favorites and those I feel are more impactful in one way or another.
Introduction and motivation
Welcome to the place where I help developers (and now vibe-coding LLMs) learn about using Google APIs from Python (and sometimes Node.js), touching multiple API families, "oiling" the squeaky parts to smoothen onboarding friction. I especially like to cover content that's not in Google's documentation. These are the main topics covered so far:
- Google Cloud/GCP: AI/ML, serverless
- Google Workspace/GWS: Gmail, Drive, Sheets, etc.
- YouTube
- Maps
- Generative AI ("genAI") with Gemini
- Credentials: API keys, OAuth client IDs, service accounts
- Old vs. new (client) libraries: Python auth, Gemini API
Part of my work in helping developers use APIs like those above includes producing video content along with blog posts and code samples. When developers come up to me to personally thank me for the video content I produced during my time at Google, it's quite humbling but also empowering. Lowering the barrier-to-entry and getting you going is always a key goal, in part reflecting my parallel career as a teacher.
While I spent almost equal time on the GCP team as well as on GWS, I produced more content for the latter product group, and this is reflected in the videos below. The selection criteria: those which stand out to me as far as usefulness, uniqueness, and impact.
Note that nearly all of these were produced before generative AI ("genAI") took over our collective conscience, so this content and any corresponding code samples, codelab tutorials, and/or blog posts can be leveraged by future-finetuned LLMs (large language models) as well as by software engineers who are either building MCP (model context protocol) servers or guiding/correcting vibe code generation featuring these Google developer platforms & APIs.
Featured videos & content
Most of the content is part of a related series, whether to introduce API usage of a product family or having a common goal. Still others are one-offs, whether produced or recorded as part of a public presentation. Here are my top 8, each blessed with an "award category," and an honorable mention not produced by the Google developer studio team:
- (BEST "ROAD SHOW") Creating events in Google Calendar
- (BEST INTERN) Expediting expense reports with Gmail add-ons
- (BEST "ACTING") Automating YouTube stats with Google Apps Script
- (BEST "FIGHT [SCENE]") File Storage in the Cloud
- (MOST "INTEROPERABLE") Deploy the same app to App Engine, Cloud Functions & Cloud Run
- (MOST INTERESTING PORT) Migrate App Engine Users service to Cloud Identity Platform
- (MOST VIEWED) Google Drive API: Uploading & Downloading Files
- (MOST ASPIRATIONAL) Change the world in 10 lines of code
- (HONORABLE MENTION) Building an AI-enhanced enterprise image processing workflow
Let's dive into each:
1. (BEST "ROAD SHOW") Creating events in Google Calendar
- FEATURED: Calendar API
- POST: Google Calendar API invites users to great experiences
- WHY: Imagine building the next-generation travel app where your users book airfare, hotel, and car rental/hire, only to have to wait for the email confirmations from each, then enter the correct information into Google Calendar. Wouldn't it be better if you automated this step for them, and furthermore, updated those entries if/when plans change?
- "AWARD:" Most of our videos are filmed in a studio with one or more producers guiding us through the process. Instead, we "went on-the-road" for this one, situating ourselves in one of Google's legendary cafes. The extras are colleagues, video production staff or fellow Developer Advocates joining me to show how to have a great experience together, in much the same way the Calendar API lets you give your users great experiences.
- SEQUEL: "Modifying events with the Google Calendar API," and an accompanying blog post
2. (BEST INTERN) Expediting expense reports with Gmail add-ons
- FEATURED: Google Apps Script (Gmail add-ons, Spreadsheet Service [Sheets API])
- POST: Gmail Add-ons framework now available to all developers
- CODELAB: Make email more actionable with Google Workspace Add-ons
- SOURCE: Expense It! -- Gmail Add-ons Codelab
- WHY: Gmail add-ons are a way to integrate your application with Gmail without requiring your users to leave Gmail. Imagine being able to process expense reports directly from Gmail while reviewing your confirmation emails. The add-on is able to extract all relevant data for each expense into their own rows in Google Sheets, expediting one of your least favorite chores when traveling for work.
-
"AWARD:" Another fun video outside the studio, this one features colleague Alison Carroll and my summer intern at-the-time, Sundar Solai, "No, not that Sundar," he's often quoted.
:-)
He appears to be a little nervous in this video but passed with flying colors! More importantly, he built the entire Gmail add-on.
3. (BEST "ACTING") Automating YouTube stats with Google Apps Script
- FEATURED: Google Apps Script (YouTube Data API Advanced Service)
- POST: (A day at the office) Automating YouTube stats with Google Apps Script
- WHY: One of the key reasons why Apps Script exists is to help GWS users automate tasks. Those who produce videos published on YouTube know that tracking metrics is a necessary KPI (key performance indicator) to determine if you're reaching your goals. However, this is a daunting task without automation, so this video shows how you can fetch the corresponding data for all videos listed in Google Sheets.
- "AWARD:" Yet another video outside the studio, we wanted to portray how an analyst can quickly get on the "good side" of his boss in an "office space" by automating with Apps Script.
4. (BEST "FIGHT [SCENE]") File Storage in the Cloud
- FEATURED: Google Drive API, Cloud Storage API, Cloud Persistent Disk API
- WHY: Both Google Drive and Cloud Storage are object stores in-the-cloud. That said, how do they differ? Each has more applicable use cases, so this case study looks into when you would use each as well as what Cloud Persistent Disk is used for. NOTE:** This video was produced before Cloud Filestore launched, and it would've been featured had it existed at the time.
- "AWARD:" One of my earliest videos, this is essentially a "Google Drive vs. Cloud Storage" video. The challenge in making this content was that it required the buy-in from both the Google Drive and Cloud Storage teams, which at times didn't see eye-to-eye. To date, this is the only video ever produced by Google featuring both products receiving sign-off from both PMs (product managers).
5. (MOST "INTEROPERABLE") Deploy the same app to App Engine, Cloud Functions & Cloud Run
- FEATURED: Google App Engine, Cloud Functions, Cloud Run
- POST: Exploring serverless with a nebulous app
- CODELAB(s): multiple codelabs available
- SOURCE: Python, Node.js
- WHY: While App Engine was Google's original serverless platform (before that term was even coined), the next generation platforms, Cloud Functions and Cloud Run are similar yet different. Which platform is right for you? Can you make a mistake choosing the "wrong one?" This content serves as a "myth-buster" you can't laterally move across platforms by demonstrating an app that can be deployed across all three. NOTE:** This content features the 1st-generation Cloud Functions platform before its 2nd-generation was combined with Cloud Run and rebranded as "Cloud Run Functions."
- "AWARD:" Prior to this content, Google had never showcased an application that could be deployed to all GCP serverless platforms with no code changes, demonstrating interoperability between them. A side goal of this content was to showcase how to call Google APIs from GCP serverless platforms... in this case, the Cloud Translation API, another interoperability nod.
6. (MOST INTERESTING PORT) Migrate App Engine Users service to Cloud Identity Platform
- FEATURED: Google App Engine (Users API), Cloud Identity Platform (Firebase Authentication), Cloud Resource Manager (API)
- POST: Migrate App Engine Users service to Cloud Identity Platform
- CODELAB: Migrate from App Engine Users service to Cloud Identity Platform (Module 21)
- SOURCE: Python 3, Python 2
- WHY: Moving off App Engine's old "Users API" (early version of Sign-In with Google) isn't that straightforward, especially since there's no GCP equivalent. The closest product in GCP to authentication service is the Cloud Identity Platform, the "enterprise" version of Firebase Authentication. Unfortunately they don't have anything in common, so I had to bridge this gap as part of the code sample.
- "AWARD:" There is literally nothing in common between the App Engine Users API and the GCP version of Firebase Auth, Cloud Identity Platform (GCIP). In order to build this migration sample, I had to shift the functionality from server-side to client-side as well as create a proxy for the App Engine Admin role, and for that, I needed the Cloud Resource Manager.
7. (MOST VIEWED) Google Drive API: Uploading & Downloading Files
- FEATURED: Google Drive API
- POST: Google Drive:** Uploading & downloading files plus the new v3 API redux
- WHY: Almost a decade ago, Google launched the 3rd version of the Drive API. As there were some backwards-incompatible name changes from the v2 API, it was necessary to show developers some of the basics of using v3. I look forward to modernizing the code and making it available soon.
- "AWARD:" Of all my videos, one of them has to be the most viewed, and not surprisingly, it's this one, which shows developers how to upload files to and download files from Google Drive. Up till now, it's garnered around a quarter-million views.
- SEQUEL: "Introducing Shared (formerly Team) Drives" and an accompanying blog post
- PREQUEL: "Listing your files in Google Drive, an accompanying blog post, codelab, and source code (Python)
8. (MOST ASPIRATIONAL) Change the world in 10 lines of code
- FEATURED: Google App Engine ([Inbound] Mail API](https://cloud.google.com/appengine/docs/standard/services/mail/receiving-mail-with-mail-api?tab=python))
- WHY: Another one of my earliest videos, this one highlights one of the lesser-known features of App Engine's original APIs, the inbound Mail API. We all easily understand the how and the why of sending email from an application, but having an app receive email (and process it)? Now that's another matter.
- "AWARD:" Most people have the ability to use email from their computers or mobile devices. While sending email to people is something often done, imagine what you could do by sending email to an app. With the proper authorization, users can effect almost any action they can think of (provided there are apps that process inbound emails).
9. (HONORABLE MENTION) Building an AI-enhanced enterprise image processing workflow
- FEATURED: Google Drive API, Cloud Storage API, Cloud Vision API, Sheets API (later:** Maps [Static] API, Gemini API)
- POST: Image archive, analysis, and report generation with Google APIs
- CODELAB: Image archiving, analysis, and report generation Google Workspace & Google Cloud
- SOURCE: Python
- WHY: With over a decade of experience working on various Google APIs, I wanted to create content leveraging APIs from different product groups to solve possible business problems. I imagine an employee (like myself) with over a decade of Google Drive usage. The "My Drive" page is rife with numerous folders, preventing me from seeing documents I most recently worked on. Those in asset-heavy industries like manufacturing, advertising, architecture, and the media would have even more "clutter." There must be a way to safely backup these assets and clean up your Google Drive so it becomes useful again, and that's what this code sample does.
- "AWARD:" This video would've taken the "most interoperable" award because it demonstrates how to use APIs from both GCP & GWS to solve a potential enterprise problem. Images are downloaded from Google Drive, backed up to Cloud Storage, analyzed with Cloud Vision (and in the future, Google Maps and Gemini), annotated in Google Sheets, including links to the archived locations in Cloud Storage. Detailed records are saved, allowing for asset folders to be deleted, de-cluttering users' Google Drives. However, this one only gets an honorable mention because I didn't get a chance to craft a proper developer video covering this code sample. The video above comes from a technical session I delivered at an event, the only public recording made of me speaking on this topic. Since that time, I've further enhanced the app by adding the use of the Google Maps Static and Gemini APIs to the original code sample. All-in-all, it is now a solution that demonstrates six different Google APIs in a single solution for a potential business problem.
Summary
So there you have it, the top 8 (well, 9) videos I produced to help developers use various Google developer platforms & APIs. I hope to further explore each of them in more detail, including modernizing the code samples for today's developer, whether for custom MCP servers or to calibrate or fix generated vibe code. More information on these videos as well as all of the others I produced during my time at Google can be found in the entire video catalogue.
If you found an error in this post or have a topic I should cover, drop a note in the comments below or file an issue at the repo. I enjoy meeting users on the road... see if I'll be visiting your community in the travel calendar on my consulting page.
References
Below are various resources related to this post which you may find useful.
Miscellaneous
GWS APIs
GCP APIs
Serverless
AI/ML
Storage
Other GCP
WESLEY CHUN, MSCS, is a Google Developer Expert (GDE) in Google Cloud (GCP) & Google Workspace (GWS), author of Prentice Hall's bestselling "Core Python" series, co-author of "Python Web Development with Django", and has written for Linux Journal & CNET. He's currently an AI Technical Program Manager at Red Hat focused on upstream open source projects that make their way into Red Hat AI products. In his spare time, Wesley helps clients with their GCP & GWS API needs, App Engine migrations, and Python training & engineering. He was one of the original Yahoo!Mail engineers and spent 13+ years on various Google product teams, speaking on behalf of their APIs, producing sample apps, codelabs, and videos for serverless migration and GWS developers Wesley holds degrees in Computer Science, Mathematics, and Music from the University of California, is a Fellow of the Python Software Foundation, and loves to travel to meet developers worldwide. Follow he/him @wescpy on Tw/X, BS, and his technical blog. Find this content useful? Contact CyberWeb for professional services or buy him a coffee (or tea)!
Top comments (0)