Computer Science
My first area of study was computer science, where I quickly gravitated to database management and web application development. My MA thesis involved using XML to represent sheet music for easier transmission via the internet, and much of my recent research and activity has been in the area of XML and music.
Active Projects
- Multimedia Interactive Listening Example System (MILES):
- One of my long-term goals was to create an interactive guide for students to help them better analyze music. My breakthrough on this was when, with the advent of HTML5 audio, I could create a simple JavaScript listener to capture the playback time. The rest was just a simple matter of creating a storage format to store the annotations—done with XML as a continuation of my MA thesis—and building some client-side JavaScript to parse this information. The result was MILES.
- example: Original Dixieland Jazz Band – “Livery Stable Blues”
- XML container: Original Dixieland Jazz Band – “Livery Stable Blues”
- flash cards sans Flash:
- One of the more challenging aspects of teaching music to non musicians is helping them learn to listen to music—in other words, analyze it—not just hear it. In particular many students struggle with the listening portion of the exams—true of all levels of music history.I wanted to avoid using Flash, as it was on its way out of widespread use—and full of security issues—and I wanted to make it universally accessible on a variety of devices. For this reason, I created a flash card system, based upon the underlying HTML5 audio system of MILES, that is completely driven by HTML5/CSS/JS/XML. It also works with touch devices, such as iPads and Android tablets.
- example: pre-Jazz / early Jazz / Armstrong listening exam
- listening games
- In the same vein as the flash cards project, I wanted to provide a fun way for students to prepare for the listening portion of the exams, thus was the genesis of the listening games system. Like MILES, it uses HTML5/CSS/JS/XML to create a simple, mobile-friendly, name-that-tune game of the listening from each exam in the course. Students can also post their high scores to the course homepage, for some added friendly competition.
- example: pre-Jazz / early Jazz / Armstrong listening exam
- interactive Jazz ensemble demo
- The latest tool I developed is a Jazz ensembles demo. Again, novice listeners can have a difficult time deciphering what the roles or even sounds of individual instruments in the two major Jazz ensembles: combos and big bands. This tool uses multitrack audio and a virtual mixer to allow students to control the volume—or mute—any number of instruments.The challenge with this tool was getting multitrack audio to play synchronously. Simple HTML5 audio playback was not sufficient, as starting all of the instruments at the same time using JavaScript proved impossible. Subtle difference in playback timings would cause phasing and synchronizing issues. Also, the state of synchronizing features such as MEDIAGROUP was in flux, and not supported across browsers.I then stumbled upon the Web Audio API. It was much more complicated to implement than HTML5 audio, but allowed much more fine control over synchronization. The result was a tool that could handle any number of instruments.
- example: interactive Jazz ensemble demo
Other Projects
- ARTD 325: Digital and Web Design (2015FA)
- This is primarily a web design course for graphic design majors. It covers everything from basic HTML to responsive and universal design.
- Interactive class examples on CodePen.io
- Robotics
- My wife and I taught robotics at the Lawrence Brothers Science Camp. In two days, we taught junior-high students how to use and program LEGO RCX units and then they were tasked to build a robot to find a light source and stop when it reached it. All five teams were successful, and four did so on their first attempt.
- e-commerce websites
- One of my latest projects was to develop a registration and tracking system for the long-running charity ride in Vermillion, the Margarita Ride. It uses PayPal’s REST API to process payments.
- networking
- I work with a number of local groups and establishments to develop networking solutions to address their needs.
- consulting
- In addition to networking, I provide technical consulting solutions both to on-campus and off-campus organizations. Most recently, I was the technology coordinator for the Center for Transatlantic Studies, while it was in existence, and provided a number of services to them, including: website development, web application development, network surveys, etc.
Citations
- Deinhard, Jan, Tobias Lensing, and Paul Kellett. “Interactive media streaming.” U.S. Patent 8,745,259, issued June 3, 2014.
(references my thesis work) - Junior, Pedro Ribeiro Kröger. “Desenvolvendo uma meta-linguagem para síntese sonora.” (2004).
(references my thesis work) - Kalayci, İ., & Korukoğlu, S. (2009). Müzik verileri için xml tabanlı diller.
(references my thesis work) - Lee, Jin Ha, J. Stephen Downie, and Allen Renear. “Representing Korean traditional musical notation in xml.” In Proceedings of the 3rd International Conference on Music Information Retrieval. IRCAM, Paris. 2002.
(references my thesis work) - Nesi, Paolo, P. Bellini, J. Barthelemy, G. Zoia, and K. Ng. “The Interactive-Music Network.” (2004).
(references my thesis work) - Steyn, Jacques. “Alternative Design Goals for a General Music Markup Language.” Interactive Multimedia Music Technologies (2007): 133.
(references my thesis work)