Technical Debt

rocketMuzzy Lane is a 13-year-old technology company. That’s a lot of time to build up technical debt. Our largest debt by far was relying on our Sandstone browser plugin, created to deliver engaging, multiplayer 3D educational experiences. The plugin, so necessary in the early days, had become a steady source of technical support issues and a barrier to adoption, especially in locked down computer labs on college campuses. Add in browser vendors’ recent decisions to remove plugin support and it was definitely time for a change. So change we did.

We recently completed our major technology transition into a post-plugin world. The advent of standards like WebGL and WebSockets allowed us to re-architect our platform to deliver game-based learning experiences natively in the browser and on mobile. We are now a true web services platform rather than a desktop experience shoehorned awkwardly into the browser. Our service is hosted at Amazon Web Services, runs on Node.js as its task management core, and manages the vast volume of user data with MongoDB. Our client side experiences are now native web and take advantage of the best the web has to offer from standards such as HTML5, WebGL, WebSockets, and WebAudio to frameworks and libraries like PlayCanvas, Unity, and JQuery.

This transition delivered the benefits we expected. Removing the plugin requirement dramatically reduced our support issues. Managing our platform became easier and more cost effective. But it also brought benefits we had not anticipated. Because we are now a true scalable web service with our stateful data in MongoDB we can deploy updates in a rolling fashion with no downtime. This is a huge benefit for us and our partners in the education market. Our user base is global so there is no good time for an outage. Friday night into Saturday morning EST remains the low point for usage, although not exactly the time engineers want to be working. It’s extremely liberating not to need them.

So what’s next? For us the next frontier is putting content authoring into the hands of our partners. One of the challenges of the current game-based learning scene is that the game developers are creating all of the content. This is at odds with the rest of the educational technology market where developers create systems and subject matter experts create the content using tools provided by the developers. Our new platform architecture has been created with this in mind. We are rapidly moving towards a future where the Muzzy Lane development team creates the activity templates for game-based learning and provides tools to partners so they can create and deploy content for those activities. This not only allows our partners to create their own content but also allows them to maintain and improve their content without needing to come back to us. We’re very excited about this move to authoring tools – but that’s a topic for another blog.