Introduction to MusiController

MusiController is a webbased music library with two main functionalities. The first is the library of course, the second is the built-in diskjockey.

MusiControllers mascot: the palmtree

A little history

Long ago, somewhere in the early nineties I maintained a Lotus123 spreadsheet which contained information of all my cd's. It allowed for lots of interesting statistics, such as average price of a cd, average songlength, price per song, etc.
This spreadsheet was soon replaced by a spiffy QuickBasic program, which not only held every cd but information on every single song I owned as well.
As I started studying Computer Science in 1995, my capabilities grew quickly and the world around me changed as well. The fileformat mp3 took off, Winamp was soon an ubiquitous application. Me and my roommates started ripping all our cd's to our computers. Soon, we had the wish to build an mp3-jukebox in our livingroom. But computers with enough processing power to decode mp3s in realtime were hard to come by. Without money but with time, I started programming. The result was a nice tool, which could run on an old XT I had laying around. The tool commanded a roommate's Pentium, which in turn was connected to the stereo in the livingroom. This tool was called Communicator. And, statistics-freak as I was, the Communicator collected usage statistics right from the start. A few days later, we could already see which songs were our favourites, which was kinda cool.
Armed with the newly conquered knowledge on how to command Winamp, I started adding the same functions to my music database program. I added the location of the mp3-file to every song in the database, and added the ability to play them in Winamp. After spending a few weeks in programmers heaven, I had a great music database, which could play music as well: MusiController was born.

During the years I added features, changed from Delphi 2 to Delphi 3, 5 and finally 7. I even 'officially' released my program in 2003. The key feature had become the built-in diskjockey. It used the gathered listening-statistics and genre-metadata to create a more intelligent way of randomly listening songs.

MusiController in 2003

Meanwhile I got a job, and started programming professionally. MusiController development was layed on ice for a while. But my usage of it did not stop! I listened to my personal diskjockey allmost every day.
Suddenly web-development started to get interesting, and the idea of transforming MusiController to a webapplication appealed to me. I started from scratch with Java, Tapestry, Postgres, Hibernate and Spring. A streaming music-service was created quite soon, so I could listen to my songs again. This time not only at home, but at work too! Or at friends' places, streaming music works all over the world!

I put the webbased version of MusiController on SourceForge, and I got the help of a friend (deksels) with the development. MusiController is still my pet-project. However, I have a job, a wife and hobbies thus development is not as quick as I would like, but it still makes lots of fun!

cellA CellB
CellC CellD
Table example
  1. some list
  2. second item
    1. subitem1
    2. subitem2

Normal text italic bold? monospaced.