ikcomponeer blog part 1 — costs

Bertus van Dalen
2 min readMar 19, 2018

--

The website ikcomponeer.nl has been around since 2009. It contains eight recordings by the Dutch Metropole Orchestra. These recordings are cut to pieces like a jigsaw puzzle and presented in groupings per instrument section. Children may arrange the piece differently and experiment with the sounds, or they may try to make the piece of music as it was recorded. When saving their composition the system makes an mp3 mixdown that can be retrieved in a playlist and listened to, with parents or in the classroom with fellow pupils and a teacher. At its height there were a couple of hundreds of users per day of which 200 stored a composition to the playlist. Because the project is not multilingual these are mostly Belgian (Flemish) and Dutch users.

But alas, now Flash is not well supported for general purposes any longer so the usage is now declining. To make it future proof it will migrate from Flash to Angular and from PHP and MySQL to ASP.NET Core (C#) on Azure and table storage. This series of blog posts will cover the adventures. This post is about the costs. Because the project is based on voluntary effort it is important to be transparent about the costs.

  1. hosting on virtual private server, EUR 50 / month

The Javascript and HTML of the website ikcomponeer.nl is hosted here, as well as the API’s for the functioning of the Flash app.

2. Azure Search Index, EUR 61 / month

The composition playlist allows for super fast search so that children can show the composition to their parents.

3. Azure Storage Account “audioclips”, EUR 1,34/ month

This storage account contains the stored and downmixed MP3 files.

4. Azure Storage Account “mixdowntasks”, EUR 0,09 / month

This storage account contains tasks for the mixdown agent when a user saves a composition to the playlist and thus requires an MP3 rendering aka mixdown of his composition to become available to the playlist (see below).

5. Azure Function “addMp3ToPlaylist”, EUR 0,04 / month

After the mixdown agent (see below) has added the resulting mp3 to the audioclips storage account, a function will transfer the search data to the search index so that the mp3 can be found in the playlist.

6. Mac Mini “mixdown agent”, FREE

The Mac Mini polls for tasks and makes a mix down. Because it is also our home computer that we use to watch movies and let the children do homework, this is free of charge. We would need that computer anyway. This also goes for our home glass fiber connection.

7. Costs of development

This will be covered in a future blog post, how Visual Studio Team Services can be used to measure the time spent on tasks.

CONCLUSION: by migrating the virtual private server to Azure we will probably save even more costs. Another cost saver can be the search index.

Do you want to know how we will migrate the ikcomponeer.nl composition environment for children to an Angular application and a microservices architecture from a Flash application on a LAMP stack? Keep following this blog.

--

--