Khan Academy Building an Exercise - part 3

Part 3: Feedback and Conclusion

Things were starting to get ugly. The previous attempt to deal with a browser compatibility issue involved a rather awkward workaround; and even then the exercise was still not complete because of yet another obscure text formatting issue involving the browser zoom level on Firefox and Chrome. My original attempt to use the Raphael and graphie JavaScript libraries had appeared to be to ineffective. It was time to consider a different approach...


Khan Academy - Building an Exercise: Part 2

Part Two: Interactive tools

The next step in creating my cryptography exercises for Khan Academy involves creating a set of interactive tools. By combining visual elements as well as interactive mouse events, it will make the individual problems a lot more engaging.

A pirates favorite kind of Graph...

For the first tool, I wanted to create a letter frequency bar graph that compares the average letter frequency of English to the letter frequency in a Caesar Cipher. This allowed the user to compare the difference between the two, and then figure out how much they would have to shift the graph in order for them to line up. There were already a few exercises that utilized bar graphs for mean, median, and mode exercises; which would serve as a good template for what I wanted to do.

The way the Khan framework builds a bar graph is using the graphie.js library (which works on top of raphael.js). This library gives you a series of functions to draw lines and basic geometric shapes on a web page. So in order to build something like a bar graph, every single line, rectangle, and letter has to be placed individually, using a absolute position relative to the image space. While out of context these shapes can be relatively meaningless, putting it all together results in the following image...


In this case, each of the blue rectangles were drawn in a loop, where the vertical value stayed the same but the horizontal value incremented for each pass of the loop. Same for the orange rectangles (and the alphabet labels), except they would have a slight offset such as +0.5 so they appeared next to the blue rectangles. Even the border of the bar graph was created using two separate class to a draw line function.

Getting the height of the rectangles was simply a matter of using the functions I had already created in my crypro library. One to return the array for the English language frequency, and another to dynamically build a frequency array based on a given encrypted message. Both of these arrays were normalized, and then scaled so they could be fitted to the size of the graph.

Eventually I might come back and add some more functionality to this graph. But the first version of this graph turned out rather well. So on to the next tool and the start of my problems...


Khan Academy - Building an Exercise: Part 1

Khan Academy doesn't just offer a wide range of educational videos and exercises for students who want to learn; they have also made their exercise framework open source on GitHub, so teachers and instructors can create these type of learning exercises for their own website. Khan Academy even allows people to submit exercises they have created, with the chance that they may be added to the main site.

Which leads me to the objective of my next coding project; designing an educational exercise targeted towards students, based on a series of Khan Academy videos. Over the course of this challenge I will have to parse through a large pre-existing code base on GitHub, get my hands dirty with some javascripting, and navigate the perilous issues of browser compatibility.


Coursera Review Part 1: A Massive Open Online Course Platform

Coursera is part of the movement to make a free, high quality education available to everyone in the world. They are a platform for Massive Open Online Courses (MOOC), which take the curriculum and materials from existing University courses and scales them to reach tens of thousands of students at once. Started in Fall 2011 by Stanford University, Coursera now partners with over 60 universities and offers hundreds of courses in subjects such as Business, Medicine, Art, Engineering, Computer Science, and more.

I actually sat down to write a review on the Coursera platform several months ago, only to find that the interface and site design had literally changed over night. Much like other recent MOOC platforms such as edX, they are continually working on the technical challenges of handling thousands of students at once without diminishing the quality of the material. This results in constant improvements and iterations to the site design, especially since it is so new.

Where Coursera differs from edX, is that Coursera is a for profit company with an aim to developing premium content and services to support the site.

This review is based on several classes I took during the Summer/Fall of 2012. Similar to my MITx review, we will take a look at Corsera by examining the platform, the content delivery model, and how their philosophies effect the overall MOOC experience.


Is Gamification A Real Word?

Gamification involves the use of design techniques to motivate and engage people in situations not typically associated with games. Over the past few years, more people have been considering how this could change the way we think about business, education, and the world. So can Gamification be something we take seriously, or is it merely a buzz word describing concepts that have been around for decades?