While visiting a low-income school in Brooklyn, John had an opportunity to watch some high-school students learn to code. What he saw was less than ideal. The lesson was to build an Asteroids-style game with Python. The instructor hoped that constructing a game would be sufficient motivation to keep the students' attention. But it was very hard for any student to focus long enough to make significant progress. John wondered if it might be possible to make code more interactive and provide more immediate, interesting objectives (on the order of 5 lines of code instead of 100). So the Edoo team formed and it began to create a game (of sorts) designed to teach object-oriented principles.
What it does
How we built it
Challenges we ran into
There is not a lot of documentation for Babylon.js or Oimo.js, so we had a lot of debugging to do, and we had to adapt some of our plans around poorly implemented features. (The physics impostors used for collisions were particularly finicky.)
Accomplishments that we're proud of
We completed all the milestones necessary to provide a clear demonstration of the eventual game/coding environment we have in mind.
What we learned
What's next for Edoo
We would like to add more classes/features, provide very instructive documentation and error handling, and then try our project out on some of our less code-savvy friends. We would love to see this project eventually be deployed in schools that are struggling to implement a computer science curriculum.