Christmas projects

Every year, usually around Christmas, I’ll take a break from regular work to focus on something new. While it’s usually possible to learn on the job or in evenings and weekends, it’s great to take a week or two away to do a deep dive in something different.

This page lists my recent Christmas projects.

2017: VoiceXML, JVoiceXML and VoiceXMLRiot

I’m currently doing a lot of development of voice applications using VoiceXML and wanted to learn a little more about its capabilities and ecosystem. VoiceXML applications are typically powered by expensive enterprise telephony systems so development and testing can be difficult. JVoiceXML is a powerful and flexible open-source VoiceXML browser but it has a steep learning curve and is difficult to set up and configure.

During the Christmas break in 2017, I started work on VoiceXMLRiot – a VoiceXML application testing framework. It builds on top of JVoiceXML and indeed is an alternative to its own test framework, VoiceXMLUnit. VoiceXMLRiot is intended to hide much of the complexity of JVoiceXML and is accessed through a simplified API.

2016: Angular 2

I’ve built web based GUIs in a number of roles, often relying on basic JavaScript. However, I’ve never had the need to build a JavaScript heavy Single Page Application. As a means to learn Angular 2 and to brush up my JavaScript (and TypeScript) skills, I rewrote the Spanners demo app as an Angular based SPA. Results in GitHub.

2015: Docker

During a career break in 2015 I decided to look at Docker which was terribly new and exciting at the time. I was glad to discover that the hype was well deserved and astonished at its power and simplicity. This led to a four-part series of articles on Docker basics and later to a redesign of the Spanners demo app. The new 4.x iteration of Spanners demonstrates microservice concepts. It would have been next to impossible to build, test and distribute without Docker and Spring Boot.