Have you ever wanted an online learning platform that will help you show off your cool project, or perhaps to teach people how to accomplish a task? You know, something your sales team can use to perform an interactive demo and teach customers how to use the product. Or maybe you are a developer relations team looking for a better interactive means to host your teaching/workshop content?
Today we are announcing the open sourcing of the Educates platform. Educates is a cloud native platform to deliver hands-on workshops/labs while consuming a minimal amount of resources on your cluster. You can find the source code, documentation, and community in GitHub.
As we announce the availability of the Educates open source project, it is important to understand the journey that the project contributors embarked on to make this possible.
Origin story
The core contributors of the project (Graham Dumpleton and Jorge Morales) started their careers in developer relations and enjoyed showcasing all of the problems our specific projects/products could help solve. We also spent a fair amount of time working with solution architects and other internal stakeholders to train them on new feature sets as they became available. Additionally, we delivered this content through workshops at conferences to spread the joy to developers. At that time we couldn’t find a commercial tool to fully meet our needs; however, Graham, a bright and talented Aussie from down under, created a proof of concept that was much closer to what we were looking for and was already better than other tools we had been investigating.
Why was it better? Because it was a cloud native tool that ran on top of Kubernetes clusters (our main focus), and it was both easy to use and very cost effective. Running on Kubernetes and saving money and time—this became an intriguing idea to our managers. We were given the green light to pursue this as a side project to our day-to-day jobs.
And so was born the Educates project.
A year later, we wanted to use the platform for the online-only SpringOne 2020 conference. It was a great test for the platform and it gave virtual participants an easy way to get hands-on experience with VMware technology.
We were really pleased with how well the platform performed. There were over 5,000 workshops delivered, but the bill for Amazon Web Services (AWS) resources was only $200! This was a dramatic savings compared to what other platforms—running primarily in virtual machines (VMs)—were costing our company. These kinds of numbers drew attention and the traction we saw at VMware was huge. Our sales team jumped on it immediately. They had an inexpensive platform that delivered training to both solution architects and customers whenever they wanted to use it.
Our baby has grown up
During the four years since its inception, Educates has grown to be a polished platform that provides a compelling user experience. Authors can easily create content with instructions on the left side and a terminal/editor/dashboard on the right. Operations teams are happy because it runs on Kubernetes, and, most importantly, it’s very cost effective. Marketing is also happy because you can customize the look and feel to match your overall design aesthetic.
Educates was built with security in mind. By default, every user gets a secured sandboxed namespace as their working environment. IT can also do the same with Kubernetes virtual clusters, VMs, or even a connection to a remote system.
Now, Educates is powering Spring.academy, Tanzu.Academy and Kube.Academy, part of VMware Tanzu Education, providing the hands-on labs experience.
Built on open source
Educates was built on a solid foundation of excellent open source projects. It uses Hugo as rendering technology for the instructions, Kind as the development cluster provider, Project Contour as the default ingress controller, Kyverno as one of the policy enforcers for security compliance, Carvel tools for content fetching, YAML customizations and Kubernetes resource deployment, Visual Studio Code Server as the integrated IDE, vcluster for our virtual clusters, and many more. In addition to this, we have built a user experience that can be driven by an intuitive command-line interface (CLI). There’s even a Docker Desktop extension that enables you to run workshops locally on your computer! Honestly, there are too many great features for us to be able to quickly cover them all here.
Finally, we would like to thank all of the internal users and contributors over the years at VMware. Their support in time, money, and community-building really made the project what it is today. We are excited to be able to share all of this work with you as an open source project and look forward to building a community around it.
Next steps
Visit the project site and GitHub repository. Let us know what you think, and get involved with the community. We hope you have as much fun using it as we have had building it.