Get the highlights in your inbox every week.
At edX, we do software so that you can do education
3 million users and hiring at edX
There is a long list of sites powered by Open edX, a platform hoping to be powerful and extensible enough that education experts can use it not only to run courses, but to try out new ideas for how to educate online. See the full list on GitHub.
In this interview, I spoke with Ned Batchelder of Open edX about his team (photo below, Ned is in blue) who he says are working to make the platform "the best place to experiment with new ideas, and then share those ideas with other educators who can build on them and make their own improvements."
Let's see how they're looking to reach that goal today.
Why do you feel the sites running Open edX have chosen to do so?
I think educators choose Open edX because they are looking for a platform that offers a great set of starting tools (rich assessments, easy-to-use course authoring, and so on), but that also gives them the possibility to extend the platform. The XBlock API lets them build new interactive components for their courses. But beyond our APIs, the entire platform is open source, so they aren't limited by what we've chosen to offer.
They can extend it as they wish to try new ideas. edX's goal is larger than bringing free education to the world. We want to enable educational experts to experiment with how best to teach online. Many professors teaching MOOCs are interested not just in teaching their course, but in the studying the process of online learning. They have experience with the earliest online education providers and understand their limitations. They want to try out new teaching techniques and need a platform that will let them.
Having the source code is even more important in an educational setting: student privacy laws often place geographical constraints on where data can be hosted. Institutions have the most flexibility in choosing how to host their Open edX installation because they have complete access to all of the code. They can create a hosting strategy to conform to the strictest laws. Finally, some institutions just feel more at home with open source provided by a non-profit; it's a good fit culturally with universities.
How do you and your team approach the task of building a software platform for these organizations?
As with building any software product, it's a matter of understanding the users, finding what needs they have in common, and building features to support those needs. edX has the advantage of having dozens of top-tier institutions as consortium members. We have close relationships with their instructional teams, so we have lots of good information and feedback about where they want the platform to go.
The open source community provides more data, especially about their needs that differ, for example because they are hosting their own instances, rather than running courses on edx.org. For the most part, edX engineers are not educational experts, they're straight-up software engineers. But that makes for a good balance: we can build the software infrastructure, guided by input from the educators, then the educators can build on and extend the platform with specialized components. Similarly, the academic developers may not have faced the software challenges we're used to on a site the size of edx.org.
We have almost 3 million users, which isn't Facebook-sized, but it's much larger than an on-campus project. So we try to bring the two domains together: we provide software expertise, and the universities bring educational expertise. It can be difficult, but we're learning how to speak each others' languages, and trying to design processes that will accommodate the unusual mix. The results are worth it.
What roles are held by your team?
I'm a member of two teams. The first is the entire edX engineering organization. Because all of the code we produce is open source, every engineer plays a role in producing the Open edX platform. The other team is the Open edX team. We're charged with enabling, encouraging, and growing the Open edX community. We are currently three people, but we're hiring! All three of us are engineers by training, but with a love of open source, and with an appreciation for the value of being face-to-face with people... even if it's just on-screen face-to-face!
The Open edX team: Sarina Canelake, David Baumgold, and Ned Batchelder
As the team grows, we'll have people who are purely in a communication and coordination roles, and also people who are more technical, for building larger features of interest to the open source community. The entire edX organization is excited about Open edX being open source, my team's special job is to help keep the open source world at the top of mind, to be their advocates within the company, and to identify and fix friction points.
How will your team leverage ideas from educators?
There are two ways we can use their ideas.
The first is to incorporate them as features in the Open edX platform itself. This requires the typical software product processes: extensive design and planning, implementation, testing, and so forth. Only the most broadly interesting features can be built this way just because we are limited in the amount we can produce. We need to find the greatest commonality and build features to support them. The second way is that we can build APIs that let instructional teams implement their own ideas for their own courses. This is a better fit for the more specialized ideas that only apply to certain domains, or are more speculative.
How can educators learn more about open and online education?
Academic teams can implement new tools for education and try them out on Open edX. We've built the bulk of the platform (including the boring parts!), and they've built the interesting pedagogical tool on top. That sounds like a partnership to me!
It's not about us coming together to design a new idea, it's about each of us having our own area of expertise and combining them so that we can do what we are good at, and they can do what they are good at. I think of it as: "We do software so that you can do education." I feel like this is at the heart of the open source philosophy. In a closed-source world, there are clear providers and consumers: "We have the code, and you don't, so you get to do what we've planned out for you." In the open source world, everyone has the ability to contribute wherever they want and are able to. That doesn't have to mean that everyone is working on the same pieces, it means that people can naturally gravitate to the parts of the system that they're best suited to work on.
Can you tell us about a pull request that's been made to Open edX?
One of the features we've had in Open edX from the start is "hinting"—a way for instructors to provide hints to students if they are answering problems incorrectly. But education researchers from the Open Learning Initiative, who have been studying online education for over a decade, thought that it could be done better. They convened a group of experts to propose changes to our hinting system and have implemented them. That work has been submitted as a pull request, and is in final review for incorporation into the core platform. It's a great example of members of the community coming together to push the platform forward and contributing that work back into the core.
Another rich area of experimentation is social interaction. A clear weakness of online learning is the lack of social connections between students and between students and instructors. A number of instructional teams and researchers have been experimenting with XBlocks that provide mentoring, student pairing, annotation, and so on, to try to add back some of the social richness of in-person teaching. That's clearly a difficult problem to solve. Having lots of groups trying out different ideas and seeing which ones catch on will be very useful. We don't have to go through a long planning process, and then place one big bet on the social feature we like. We can encourage different groups to try different ideas, and see what works.