Topic: Reviewed

Walking past the round-the-block lines for the iPad 2 prompted me to reflect on the long-term educational significance of the tablet. The futurists who predicted the rise of mobile will most likely claim that these tablets fulfill their vision. Tech pundits insist that this new form-factor goes beyond superficial cosmetics and represents a transformation in computing. What should we make of the hype?

The 2011 Horizon Report predicts both mobile and ebook/ereader adoption within the next year:

"For more involved web browsing, reading, watching videos, or to use any of the tens of thousands of Internet productivity and lifestyle applications, the tablet provides just enough extra space to enable comfortable use over longer periods of time."

At CCNMTL we've begun exploring the deployment of applications on tablets. We recently launched two behavioral interventions that are being used in the field - MySmileBuddy and MedER. These applications are hybrids of data collection and multimedia educational material and are being administered by social workers making housecalls and researchers on-site in the pediatric emergency room.

Nothing like having to spend time in a noisy, cold, cramped server room doing upgrades on hardware to make you appreciate the virtues of the cloud.

Here at CCNMTL, we have a pretty diversified setup when it comes to servers and hosting. CUIT provides a lot of resources for us: a very solid network infrastructure, DNS, email, file serving, databases, course management systems, centralized authentication services, backups, and Java and LAMP app servers. CUIT is tasked with serving the entire University though so they tend to be a bit more conservative and in their deployments than an organization like ours, whose mission involves keeping up with the cutting edge, sometimes needs. So we run a few of our own servers, using Debian, Ubuntu, and a Xen Hypervisor setup. This lets us run Django, Plone, TurboGears, PostgreSQL, and experiment freely with anything else that comes along that we see potential value in, or even just make sure our applications run with newer versions of software than what CUIT has deployed.

This is a strongly-opinioned fly-by review of the evolving web framework ecosystem for Node.js.

I'm a big fan of Javascript, and write a lot of it for browsers.  So I've been excited about the prospects of server-side javascript which opens up a lot of possibilities for sharing code on the client and server side.

Node.js seems to have exploded server-side javascript development, as it was fast, easy to setup, and provided a niche-advantage in handling requests asynchronously.

But Node.js is a low-level runtime which brings a good standard library and scripting environment for deployment. We don't want to re-write cookie and session handling for every project.  For web development we need a framework that organizes code and brings the old lessons that Rails brought to projects like Turbogears and Django in python.


Gource is a fun tool that takes your source repository, and outputs a video showing your developers as little gnomes dancing around the source tree building the program. I think it's a great visualization to demonstrate to the less technical members of our organization and the world, what a programmer does on a daily basis. The source-tree is simple enough to be graspable as program components, yet reflects some of the complexity we handle. Thus it shows pretty vividly how fractured a programmer's attention can be, and why we need time and space to develop.

I've run this on a couple of our own projects. I think this could also be useful in visualizing the activity of classes; for example in a wiki.

There is alot of buzz right now around the latest version of Firefox which finally implemented the native <video> tag specified in html5 .

These developments were a hot topic at the Open Video Conference, which was about a whole lot more than just the video tag, but the timing was really perfect. For more about the OVC, see Jonah and Mark Phillipson's reports, as well as the announcement of our Open Sourcing of VITAL .

The introduction of the <video> tag is a pretty big deal. Up until now, to display video in a browser, you needed to use third party plugins embedded in object tags. This allowed for the video to be seen in the browser, but the video wasn't really part of the web page - it was trapped inside a box.