When it comes to online education, there are few sites that can match the scale of Coursera.
Coursera provides universal access to the world's best education. Through their partnership with many prestigious universities and established educational organizations, they are able to offer courses that cover a wide variety of specializations, ranging from Robotics to Roman Architecture. These online courses are free and available to everyone.
Coursera's online education allows their partners to reach millions of students at the same time, as opposed to the few hundred that can reasonably be accommodated by any traditional lecture hall. Moreover, since many of these people had no previous access to higher education of this caliber, Coursera also provides them a unique opportunity to get access to better and higher paying jobs.
With just under a thousand courses available at any given time, Coursera provides education on a massive scale. There are over sixteen million students registered on the site, many of whom are actively pursuing their educational goals.
Since its foundation in 2012, Coursera has grown exponentially and brought on board many more university partners. This success, however, also came with its fair share of difficulties. For one, Coursera's technical team found itself forced to deal with an ever increasing variety of formats and codecs.
It became clear that their existing infrastructure was no longer up to the task and that they needed a better solution. In addition to this, with the launch of a new peer review system, the site was now also required to handle uploads from students in a safe and consistent manner.
As Jon Wong, Infrastructure Engineer at Coursera, explains:
Even though the previous home grown solution had worked for a while, our upload usage eventually began to grow too large for our team and infrastructure to handle. As more learners and professors joined the platform, the team would spin up more machines to handle this additional load. At a certain point, however, too many resources were being diverted in order to handle this. This led us to begin searching for a third-party solution.
Initially, the engineering team at Coursera had not been searching for a transcoding solution at all. Since the uploading of large files was the main issue at hand, that was what they sought to address. However, when their engineers stumbled upon Transloadit, they saw that the company not only provided uploading services, but also had transcoding available.
Transloadit jumped out as an immediate solution to our problems - Jon Wong
The only other viable solution that was explored was to proceed with the status quo, which would have meant continuing to scale machines to handle the load.
After discovering Transloadit, however, we ultimately rejected that solution and opted to spend resources on the integration of their services.
When Coursera was faced with the monumental task of converting tens of thousands of videos from old formats to new, mobile-friendly formats, they turned to Transloadit to help them figure out the best solution.
As Jon explains:
Because the engineers working on this project had no previous experience with something of this magnitude, it has been invaluable to have discussions with Transloadit on how to approach our problems. Due to the variety of web and mobile devices and bandwidth speeds, lecture videos uploaded by professors need to be compressed and subsequently transcoded into between 15 and 20 different formats for distribution. This process is particularly complex and we worked closely with Transloadit to find a solution. Instead of the same videos for everyone, we can provide smaller videos for those with limited bandwidth, even going as far as audio-only files for the truly bandwidth-starved.
Back in 2014, Coursera also implemented HTTP Live Streaming in order to better facilitate what their learners spend the majority of their time doing on the website: watching videos. Whether it is a thirty-second snippet or an hour-long lecture, all content has to run smoothly and must be accessible from a variety of platforms.
When we were working on our HLS implementation, we had some 70,000 - 100,000 different videos on Coursera that had to be re-processed with HLS in mind. Not only did Transloadit help us with this immense task, we worked closely on figuring out an optimal HLS implementation, both from a client (us) and a service (Transloadit) side. Transloadit's continuous support is what makes all the videos on Coursera possible.
By using the services provided by Transloadit, Coursera can continue to be a great resource to learners all across the world.
The flexibility provided by Transloadit allows us to better serve our learners. We are able to give them the content they desire, in a way that conforms to the means by which they access us.
Having a solution for both uploading and transcoding has been a godsend for the current scale that we are at, three years after first choosing Transloadit.