You can often judge the impact of something by the ease in which it enters our everyday language. In the education technology community, the term "open source software” is commonplace, even though the term "open source" was first applied to software just 20 years ago. Open source has fuelled innovative solutions and helped scale cloud computing, including in education.
I wrote my first blog post as an Instructure employee on the importance of openness to our company culture and identity. Canvas is used by primary, secondary, and higher education institutions around the world. Even though Canvas was built for the cloud, it’s been open source since 2011 under AGPLv3. Instructure believes in the general value of openness for our user community, our company, and the larger, global audience. Principles of openness are especially aligned with educational endeavours, and thus Canvas is open-sourced and supports open education initiatives.
Instructure’s commercial success may prompt questions about whether and why Canvas is open source. Let’s start by acknowledging that classifications of “open source” versus “commercial open source” versus “open core” are sometimes hotly debated. I’m not overly sensitive about these labels; Instructure will continue to release new Canvas code to GitHub every few weeks no matter what people want to call it.
That said, we call Canvas “commercial open source” rather than “open core” for two main reasons:
1. Open core usually means a large part of the code base has not been open sourced. The only parts of Canvas that we don’t open source are those related to our commercial hosting, like Vector and Hot Tub. Canvas is a cloud-native, single-version, multi-tenant application, and if we didn’t have proprietary capabilities for automated scalability, burstability, failover across AWS regions, etc., our commercial hosting service wouldn’t have the great reputation it has for reliability. But even modules like Canvas Analytics and our native mobile apps are open source. We just built a new accessibility checker add-on for the content editor that we’re going to open source.
2. Some projects labelled “open core” withhold so much code that it’s not realistic to run the software yourself. That’s not the case here. It is totally feasible to run a Canvas implementation from the Canvas open source code, and there are legitimate examples of this happening. While we don’t require anyone to register or tell us about it when they run Canvas themselves, we do know about those who post to our Canvas Community forums or join us at our user conferences.
Of course, we’re pleased with how many institutions choose Canvas cloud, and we’re proud of the services and support we give them. And that brings me to what I think is the more interesting conversation: why we make Canvas open source at all.
1. Canvas open source is one way to test whether or not educational institutions think Instructure’s support, reliability, collaboration, etc. is worth paying for. Turns out, they do.
2. Canvas open source is one way to give transparency or assurance around system security and code integrity. When your source code is open, anyone can test it for vulnerabilities—and talk about it. When your source code is closed, people not only can’t check to see if the code is vulnerable, they can’t verify that you fixed vulnerabilities. But because not everyone knows how to do a thorough security check themselves, Instructure runs an annual open security audit on Canvas, where third-party, independent experts are paid to find vulnerabilities, and then report on it for everyone to see.
3. Canvas open source gives schools, institutions, and even other companies who don’t have in-region AWS or just don’t have the money to pay for hosting the chance to use (we think) the best academic LMS out there.
I still hear new stories that remind me why open source is the right thing to do. For example, Canvas Community Version is helping inmates in the state of Washington access digital courses, and a small startup called Nucleos is experimenting with a “portable cloud” service to deliver teacher training on Canvas open source in places where even connectivity is unreliable.
None of these stories would be possible without open source. So Happy 20th Anniversary to open source and happy 7th anniversary of open sourcing Canvas! We are excited to see the milestones and successes to come.
VP, Higher Ed Strategy