Prof. Lorena Barba Implements An Effective Flipped Learning Experience With Jupyter Notebooks and No Video

“The video-first approach puts students in a mode where they are primed to memorize and it gives an illusion of confidence”, explains GW’s professor Lorena Barba on a report in EdSurge about her unique approach to creating effective flipped learning experiences without videos.

“Unfortunately what has happened with edX and Coursera, they are pretty much convinced that video is the center of everything,” she says. “The edX CEO last year said interweaving videos with quizzes are active learning, and that’s ridiculous.”

Prof. Barba’s Practical Numerical Methods with Python” Open edX-style course, for Master’s-level students without prior coding experience, is the perfect example. This free, open-to-anyone MOOC is an extension of the on-campus course. Learners dive into programming exercises as homework using Jupyter Notebooks, an open-source web tool where users create and share live code, data visualizations, and notes about what they are working on.

“Instead of watching videos, students individually follow instructions and experiment with Python in the Jupyter platform first, then arrive to class with questions and work through problems together. They come primed to discuss those things and learn in the classroom,” explains Barba.

In Barba’s class, in-person active learning involves students working through examples and coding problems with peers in Jupyter. The professor also projects her own screen in the front of the class and works out a solution line-by-line so students can follow along.


Useful Links

EdX Formulates Its Vision for Adaptive Learning

edX is working on a project in adaptive learning as a way to create a path to individualized education at scale. Nimisha Asthagiri, a principal software engineer at edX, has produced an interesting document that will be presented during the first Open edX Developer Summit, which will take place on June 1 after the Open edX 2018 conference.

edX’s approach starts with the Pearson definition of Adaptive Learning –”Education technologies that can respond to a student’s interactions in real-time by automatically providing the student with individual support”–, analyzes the requirements, interoperable standards and technologies, and ends up suggesting an adaptive framework to be implemented in the edX platform. Enhances Its Data Protection According to the European GDPR

The website, with 16 million of learners, has updated this month its Privacy Policy and Terms of Service in order to fulfill the new European data regulation called GDPR and make clear how users can manage collected information. “We have always strived to be transparent with you, our learners, about the lifecycle of data on edX,” explains the non-profit organization on its blog.

“We are using simpler, clearer language to describe our privacy practices; describing why and how your data is collected and used; and outlining ways to access, manage and control your information,” adds edX.



IBL Newsletter #5 about Open edX Adoption | May 2018: Jupyter Notebooks, Harvard, Microsoft, edX Inc…


Newsletter format  |  Click here to subscribe ]




• edX released the Hawthorn beta version of the Open edX platform

• GW and IBL open-sourced an XBlock to add graded problems based on Jupyter Notebooks

 An Open edX XBlock to load content from a Jupyter Notebook

• Harvard and Microsoft test adaptive learning for the Open edX platform


• These are some of the of most innovative sessions at the 2018 Open edX Conference

• Exponential growth on adoption of Open edX websites and courses

• “The growth of Open edX is strong, multi-vectored, and accelerating,” says author and edX engineer John Mark Walker

• edX’s code is 90 % open source and 10 % proprietary

• The Open edX Platform will adapt this month to European Data Protection Regulation

• MOOCs become a big business


• The majority of courses attract 1,000 to 5,000 enrollments

• Microsoft launched on an ethics course for artificial intelligence developers, Ethics and Law in Data and Analytics.

• Producing one hour of learning content requires over 100 hours and costs $18K

• Redis Labs launched an introductory course on an Open edX platform


• will offer fewer courses for free

• Two Colombian universities join edX – edX revenues & expenses


The IBL Newsletter about Open edX is a topic-curated, monthly report compiled by Michael Amigot, Founder at IBL Education, a New York City-based company that builds data-driven learning ecosystems and courses with Open edX. If you enjoy what you read please consider forwarding it to spread the word. Click here to subscribe.

Newsletter #5 May 2018
Newsletter #4 April 2018
Newsletter #3 November 2017

Newsletter #2 Octubre 2017
Newsletter #1 Sept 2017

Read also the latest IBL Newsletter on Learning Innovation

GW and IBL Release an Open edX XBlock to Add Graded Problems Based on Jupyter Notebooks

Three weeks after the Jupyter Viewer XBlock for the Open edX platform was released, GW professor Lorena Barba and IBL Education’s engineering team announced the graded Jupyter Notebook integration.

This software extension, released as open source, will allow instructors to assign nbgrader-instrumented notebooks into the Open edX platform.  It will be officially presented by Lorena Barba and Miguel Amigot, CTO at IBL, during the upcoming Open edX conference in Montreal, Canada, on May 30.

This XBlock uses Docker and nbgrader to create a Python environment and auto-grade a Jupyter Notebook, and tracks the resulting score as a problem with an edX graded sub-section. It allows an instructor to upload the student’s version of an assignment created with nbgrader, upload a requirements.txt file to configure the environment, and set the maximum number of tries for the student. The student downloads the assignment file, answers the questions (executing all cells), and uploads the solution, which gets immediately auto-graded. The student gets a visual score report, and the score gets added to his/her progress in the Open edX gradebook.

Features and Support of the Jupyter EdX Graded XBlook:

  • Integrated into edX Grading System
  • Maximum point values are pulled from the instructor version of the notebook
  • A separate Python3 virtual environment is kept for each course
  • Each student’s notebook is run within its own Docker container
  • Several Other Configuration Options
  • Only supports auto-graded cells – Does not support manually graded cells.

This is the video demo:

• The  Jupyter EdX Graded XBlook on GitHub
• IBL, April 28: An Open edX XBlock to Load Content from a Jupyter Notebook

Two Colombian Universities Join edX – edX Revenues & Expenses

The edX Inc nonprofit organization has attracted The University of Rosario in Colombia to its consortium of universities. The first offering from this university will be a Spanish-language Professional Certificate program, Software Design for Organizational Decision-Making, which is currently open for enrollment.

Also, during this month of May, another Colombian institution, the Javeriana University, renewed its agreement with edX Inc. 2021.


Getting prominent universities is part of edX’s mission, as well as an important source of revenue. In 2016 membership dues provided $6.5 million, while certificates generated $12.8 million.

However, in terms of total revenues, contributions and grants – with $23.8 million – were the most relevant chapter. In the same year, the total revenue of edX Inc. was $42.8 million, while expenses reached $46 million.

In salaries, compensation, and employee benefits, the expenses were $24.3 million, with the first executive, CEO Anant Agarwal, making $715,000 that year.

PDF Document: Tax return document files by edX Inc.

Producing One Hour of Learning Content Requires Over 100 Hours and Costs $18K

Racoon Gang, an Ukraine-based Open edX provider, has collected on a blog post several insights regarding the cost of creating an online course. This is a summary:

    • study by Karl Kapp and Robyn Defelice (Kapp is the author of bestselling “The Gamification of eLearning and Instruction”) demonstrates the timeframes for producing one hour of distance learning materials and shows that it takes 90-240 hours on average. Another research by Chapman Alliance conducted back in 2010 states that one hour of e-learning costs around $10,000 to produce.


    • Hourly rates vary depending upon the team selection — composing the team on Upwork,, hiring a contractor’s team to produce the content or working with individual experts.


    • Based on Racoon Gang’s research, one hour of e-learning content takes 100-160 hours to produce, and it costs $8,880-$28,640 ($18,760 on average) to produce.




The Majority of Courses Attract 1,000 to 5,000 Enrollments

The majority of the courses hosted at, specifically, 1761 courses, attract between 1,000 and 5,000 enrollments, according to the graphics, shown above and below, elaborated by the edX organization. A total of 1,250 courses have attracted between 10,000 and 50,000 enrollments. Only 39 courses hit the mark of 100k – 500k registrants, and just 2 surpassed the barrier of half a million enrollments.

Regarding enrollments by date, analytics show a descend in the last year to less than 4 million enrollments.

In terms of traffic at the portal, the number of active users every day is 425,793, with 75 % of them browsing through their desktops.

It is also interesting to examine the funnel of engagement, from registered learners to the ones who complete their courses.

Two Engineers Explain How the EdX Code Is Evolving

edX’s code is 90 % open source and 10 % proprietary, Ned Batchelder, an edX key engineer, explained in an interview for Pycharm Blog.

“Over 90% of what edX develops is open source. Most of the proprietary code concerns how edX markets and lists its courses, and Open edX includes an open source version used by our community members,” elaborated.

There are 206 repositories on Github, including Django packages and other libraries. The edX core team is comprised of 80 engineers in Cambridge, Massachusetts, and another 70 considering contractors –most of them from Arbisoft, in Pakistan, and regular contributors to the community.


  • “Python is used for the vast majority of code for Open edX. We use Django for our web applications, including the Django REST framework.
  • On the front-end, we have a lot of legacy Backbone.js and Underscore.js, but are slowly moving more and more to React. We also use Sass and Bootstrap.
  • is hosted on AWS. Some example technologies we host there include Memcached, ElasticSearch, MySQL, and Mongo. We use a mix of CloudFlare and CloudFront for CDN.
  • For development, Continuous Integration, and deployments we use a mix of Docker, GitHub, Jenkins, GoCD, Asgard, and Terraform, among others.
  • In addition to using Python with Django, we also use Python for various scripts, linters, testing frameworks, and data analysis. My colleague Cale tells me he used a combination of ipython notebooks, pandas, and ggplot for his analysis work.
  • Finally, like any undertaking this large, we’ve got our special snowflakes like our Ruby-based discussion service that no one wants to work on except to rewrite it in Python, which still hasn’t happened.”


More than 95% of the entire codebase of the edX platform is in Python. One of the reasons is that edX started as an MIT project, and MIT’s teaching language is Python.

“We are still using Python 2. We’ve been making some advances toward Python 3 where and when we can. As part of our Django upgrade process, we recently introduced tox in most of our repos to test against these various combinations. We’ll likely be switching to Python 3 with the rest of the Django community as they drop support for Python 2,” said Ned Batchelder.


“One of the main challenges is keeping track of such a large codebase. We are trying to introduce more and more best practices as we can, and move more and more of the codebase in the right direction, but we have a lot of legacy to work with at this point. Like many development efforts, we have a big monolith as one of the many components of our architecture, and we are trying to work towards an architecture that is split enough, but not too much. It is a balancing act that is difficult to get right,” explained Robert Raposa.


Regarding PyCharm, Robert Raposa said:

“We probably have about 40 developers using PyCharm. Many of the other developers end up using some combination of technologies like sublime, vim, and pdb.”

“Many people choose PyCharm for its debugging capabilities, as well as having an editor that understands Python. When you watch someone debug in a modern IDE, it is hard not to want to be able to do the same. For PyCharm users, we often use debugging, refactoring, autocompletion, version control, find definition or class, and PyCharm has great support for these technologies.”


On the development environment, “we’ve migrated our development environment from Vagrant to Docker. It was in tandem with PyCharm adding more and more Docker support. There have been some hiccups on this front, but it is nice to still be able to debug,” explained Mr. Raposa.




The Open edX Platform Will Adapt This Month to European Data Protection Regulation

The edX organization has implemented a package of improvements for course teams working on the Open edX version of the platform hosted at

Additionally, edX has announced new technology, which will come into effect this month, to meet the new European Union General Data Protection Regulation (GDPR), including the possibility of deleting accounts, which is not feasible so far on the Open edX platform.

In terms of Studio, edX’s authoring tool or CMS, these are the novelties:

  • Add or Edit dialog for HTML component on images already added to the Files & Uploads page.
  • Add an image by drag and drop without uploading it via the Files & Uploads feature.
  • Text alignment in HTML components as a new formatting option
  • Redesigned Files & Uploads page, with drag and drop, multiple files upload, enhanced search, etc.


edX official announcement: May 2018 Open edX Product Update