A graphical depiction of building blocks in a honeycomb shape

The Building Blocks of LabXchange

We are building LabXchange on top of Open edX, which is one of the world’s leading massive open online course (MOOC) platforms. And the same software used by over 14 million learners on edX.org. We’re using Open edX because it’s a proven, scalable learning platform for building content in blocks. And because there is already a rich collection of science content on the platform relevant to LabXchange users.

LabXchange will enable new ways for learners to learn and do science in virtual labs. This includes making short remixable “pathways” of content/activities that users can create and share. Open edX currently emphasizes learning via large courses which students enroll in and complete over weeks of study. To enable it to also support “pathways”, LabXchange and OpenCraft in partnership with edX are building out a new system for storing learning content in Open edX, called Blockstore.

What is Blockstore?

Blockstore is the next-generation content storage system for the Open edX platform, and LabXchange will use it along with edX.org, and the hundreds of other sites powered by Open edX. Designed to enable a variety of exciting new features for the Open edX platform, blockstore is especially useful for casual learners, educators, and content authors. The name “Blockstore” comes from the term “blocks” that Open edX uses to describe discrete learning components. For example, a single multiple choice question or a single virtual lab would each be called a “block.” Instructors and students can then access these “blocks” from Blockstore.

Designed to store discrete, independently-useful pieces of content, Blockstore makes no assumptions about how people will use them. This is in contrast to the current system for storing learning content, which requires that all content be part of a course. And that students must formally enroll in a course before being able to access any of the content. By removing these assumptions and restrictions from the design, Blockstore will enable a range of new applications. These include adaptive learning, content reuse, custom courses, cross-instance content sharing, and more immediately, “pathways” in LabXchange.

The Power to Create

We are very excited about what Blockstore enables for LabXchange. For example, once Blockstore is in place, if an author has a biology course on edX.org, they could identify small units in the course that would be useful on their own, such as a video about CRISPR. And make those independent pieces of content available on LabXchange. Then, to continue using the video example, learners on LabXchange could discover the video and learn from it. Thereafter, they can choose to see related videos and problems on LabXchange. Or they could enroll in the course the video originally came from, to learn the topic in greater depth. Likewise, an educator could find the video on LabXchange and add it to a pathway. In the pathway, they can combine it with related material and exercises. Then assign that pathway to a class of students.

For those interested in the technical details, you can find the description of the design of Blockstore on the Open edX wiki. At a high level, the current system that Blockstore will replace stores all course structure, course content, and course static assets (images, PDFs, etc.) as JSON/BSON documents in MongoDB. Blockstore stores any type of authored learning content in files in an object store like Amazon S3. In particular, static assets are simply saved as regular files on S3. And Blockstore stores course blocks in XML files in the Open Learning XML (OLX) format. The Blockstore design groups data by “Collection” and “Bundle”, rather than by course. In this way, learning content can be shared among many courses and/or used outside of courses entirely.

The Key to Building Success

At the same time as we build Blockstore, we are designing and building tagging and search services. These will allow rich content labelling (e.g. aligning content to learning outcomes) and discovery. These complementary platform features will be key to the success of LabXchange, which will put easy, powerful content discovery at the forefront.

Blockstore development is well underway. And you can look forward to trying out the new learning and instructional experiences it enables on the LabXchange platform when we launch in late 2019. We want to say a big thank you to edX, who are working closely with us to build Blockstore. And to the Open edX community members, including HarvardX and MITx, that are contributing to the effort.

Written by

Read more