How We Used Google Codelabs To Kickstart Developer Training

--

It has been around 4 years since we launched the Freshworks Marketplace. Over time, our platform has become richer and increasingly powerful with a wide spectrum of existing features and frequent addition of new ones. It became clear to us that developers need something more engaging and intuitive than our reference documentation, to not only get started with our platform but also to keep up with the latest features.

After careful consideration, we decided that guided tutorials, wherein each step takes a developer forward with a partially working version of an app, would be the right format to fill this yawning gap. The guided, stepwise approach gives developers a sense of accomplishment at the end of each step, while considerably reducing the time to complete tasks and helping to retain focus and engagement.

We needed to identify a platform that would help us quickly generate and deliver this content. We considered leveraging existing static site generators such as vuepress, gatsby, or e-learning platforms such as EDX. We ruled them out because we learned that maintaining markdown is cumbersome in the long run and reviewing content can become challenging. We eventually settled on Codelabs from Google.

Google Codelabs is an open-source tutorial platform, which supports markdown and Google Docs as inputs. Google Docs is clearly a very accessible and manageable medium for maintaining, generating, and reviewing tutorial content quickly.

The build process for Codelabs includes a compilation phase that uses Golang to generate HTML from the Google Docs document as well as a gulp task to combine all HTML files into assets that will serve a single website.

This content pipeline is automated using Jenkins as illustrated below. Our Jenkins pipeline takes care of building the codelabs documents, generating the assets for the website, and then deploying to an AWS S3 bucket, which then serves the website over a CDN.

As we launch this Codelabs portal today, we have 4 tutorials to help new developers get a headstart in their adventures with our platform. These modules have already been successfully used in our training program at the last FreshHuddle, Berlin.

We look forward to adding more tutorials over time to help you pick up new skills on our platform, through a progressive step-by-step approach for relevant use-cases.

--

--