For two years I played various roles on Carnegie Mellon’s RoboTutor team as we competed as finalists for the Global Learning XPRIZE. This international competition sought to address the acute shortage of teachers in developing countries. The goal was to create an open-source Android tablet app that enables children ages 7-10 with little or no access to schools to learn basic reading, writing, and arithmetic without adult assistance.

View the source code here.

I developed many skills including navigating a complex web of legacy code on my own, enabling and mentoring student developers, and incorporating feedback from user testing in a foreign environment.

One good example of the end-to-end pipeline of what it takes to implement an interactive learning activity was the base ten addition/subtraction with carrying/borrowing (see more here).

  • Curriculum: noticing an area where our curriculum did not meet the EGMA (Early Grade Math Assessment) standards,
  • Research: finding a paper where a researcher had successfully designed an activity to teach to this standard.
  • Design: creating prototypes of increasing fidelity, while seeking feedback from an expert
  • Implementation: programming the design into the existing product architecture
  • Testing: testing the developed product to fix bugs and improve user experience

RoboTutor is one of five $1M Finalists in the $15M Global Learning XPRIZE.

I have been working as the lead software engineer on this project since August 2017. It’s been a hell of a ride.

Here are some kids learning with RoboTutor!