AppsScriptPulse

Supercharge your Google Calendars: Solve the multi-calendar dilemma with SyncFreeBusy

Introduction Managing multiple calendars can be complex, particularly when it comes to accurately reflecting availability across different contexts—work, personal, and project-specific.

Use Cases

  • Multi-Calendar Management: Useful for managing both personal and work calendars, ensuring that colleagues or friends can see when you’re actually available.
  • Team Collaboration: Helps maintain clarity around availability in team environments.
  • Event Coordination: Assists in coordinating events across multiple calendars by providing a unified view of availability.

SyncFreeBusy is a handy solution published by Jasper Duizendstra designed to synchronize events between a primary and secondary Google Calendars. It can be used to provide a unified free/busy status across different calendars, preventing scheduling conflicts and reducing manual overhead.

The script works by fetching events from both calendars, creating corresponding “blocking events” in the other calendar to mark busy times, and periodically cleaning up obsolete events. The solution is achieved using Google Apps Script which can easily be setup to run on a timed trigger and also allows for easy customisation to your specific needs.

The script is available on GitHub for those interested in trying it out, just follow the source link below.

Source: SyncFreeBusy: Addressing Calendar Management Gaps

Maintain Google Apps Script in an Enterprise environment – Google Apps Script deployment with Cloud Build

In this article I will showcase the way I deploy Google Apps Script code in an Enterprise environment. I will share the actual build file and the necessary steps and tools to reproduce my workflow. This approach does require Google Cloud Platform knowledge and a credit card. The instructions are high level, this article is not a codelab.

For those interested in scaling up their Google Apps Script development Jasper Duizendstra outlines how you can use Google Cloud Build for version control and Continuous Deployment (CD). As Jasper notes:

When the CD pipeline is in place it becomes easy to deploy the script, separate the responsibilities and support multiple versions and implementations of the code …  the most important advantage of using CD is the mindset that it enables. It provides an environment where I feel confident and safe to create small incremental changes in my applications.

Source: Google Apps Script deployment with Cloud Build

How to write a custom function library for Google Sheets

In this article I will showcase one of the many ways you can customize your Google Workspace environment. We will implement two custom functions in Google Sheets. With these functions as an example I will demonstrate how to use Google Apps Script Libraries to organise and distribute your solution. There are multiple ways to distribute your Apps Script code within the Google Workspace, and this article will help you decide if this library method is right for you.

Always nice to have some advanced techniques in your toolbox. In this example from Jasper Duizendstra he explores how custom functions in Google Sheets can be packaged and used in Libraries.
Source: How to write a custom function library for Google Sheets

Google Apps Script deployment with Cloud Build

Photo by David Gilbertson on Unsplash

Google Apps Script can go way beyond a simple script that solves a problem. In this article I will showcase the way I deploy Google Apps Script code in an Enterprise environment. I will share the actual build file and the necessary steps and tools to reproduce my workflow. This approach does require Google Cloud Platform knowledge and a credit card.

Source: Google Apps Script deployment with Cloud Build

How to get the most out of the new Google Apps Script debugger and logging

Building and maintaining code can be hard. There are multiple phases in the livecycle of the code, each phase with its own challenges. Being able to easily retrieve information about the execution of your code in each phase is key. This is where the new Google Apps Script IDE debugging and logging features can help. In this article I will show you what you can do with the new debugging and logging features.

Some great tips from Jasper Duizendstra on using the logging and debugging features of the new Apps Script IDE.

Source: How to get the most out of the new Google Apps Script debugger & logging

Structure and simplify your Google Apps Script (with) V8

Apps Script now supports the V8 runtime. Time for an update to the story “Structure and simplify your Google Apps Script Apps script”. The V8 runtime brings modern ECMAScript syntax to Apps Script. So we can now use arrow functions and destructuring assignments. No more hoisting with let and const and my personal favorite, template literals.

In this story Jasper Duizendstra shows the added value of the changes made in the constructor pattern using the factory functions. It also shows how to implement chaining and a builder pattern in Apps Script.

Source: Structure and simplify your Google Apps Script (with) V8

Structure and simplify your Google Apps Script – Jasper Duizendstra – Medium

Jasper Duizendstra provides some Google Apps Script coding tips…

Organise your JavaScript objects in Google Apps Script with the constructor pattern by Douglas Crockford.

Source: Structure and simplify your Google Apps Script – Jasper Duizendstra – Medium

Record time and activities with Google Sheets, Calendar and Apps Script

Jasper Duizendstra demonstrates how with a little bit of Google Apps Script you can easily use your Google Calendar to keep a record of how much time you spend on tasks and then query/report this via Google Sheets. The post contains instructions and code for getting started

Source: Record time and activities with Google Sheets, Calendar and Apps Script

Create BigQuery tables with Google Sheets and Apps Script

Creating BigQuery tables using the GUI can be a hassle. This article describes an alternative way to create BigQuery tables

Source: Create BigQuery tables with Google Sheets and Apps Script