June 15, 2006

Scratching that itch: Sander Jansen

Author: Joe Barr

By day, 27-year-old Sander Jansen -- originally from Holland -- works for ESI Group in Alabama, a company that produces sophisticated software for the aircraft and automotive industries. In his personal time, he scratches his own itches by creating free software. I discovered Jansen's Goggles Music Manager recently and decided to try it out, and pick Jansen's brain to see what motivates him to write free software. Here's what I found.

I asked Jansen how he became interested in Linux and free software, and he says that he got into Linux thanks to an interest in learning about Unix-like systems:

I started using Linux about 5 years ago, mainly because I was interested in learning to use unix type operating systems (always had been a DOS / Windows user). Linux at the time seemed the most logical choice as I could use it at work and had help from a friend of mine for all the basic questions. Also certain companies who decided not to support their old hardware anymore for people upgrading from Windows 98 to Windows 2000 made me a big believer in free software. Of course the best thing about free software is that I can customize the software the way I want it to work.

While I was on Jansen's site reading about Goggles Music Manager, I came across another with that was also named Goggles. Confused, I asked Jansen what was up with the name. He replied:

My first open source project I ever released was my DVD player frontend for Ogle. Now as you may know, finding a good name for your project is about the hardest part, the rest is just coding. It is sometimes not even worth starting something unless you have good name :).

So I basically came up with Goggles as the name of my frontend for Ogle (use goggles to ogle!). The reason the music manager also has Goggles in it, is mainly of me being lazy coming up with another name, but also since gmm sounded quite nice. See it as a sort of brand name recognition. :)

So, now that we know the story behind the Goggles name, let's take a look at the software.

Prerequisites, build, and install

Building and installing the Music Manager, Sudoko, and Goggles is relatively easy, even if it doesn't follow the familiar ./configure, make, and make install mantra. If there is a hard part to the process, it is in getting all the prerequisites installed beforehand.

All three applications depend on the cross-platform FOX toolkit, which makes it a great place to start whittling down the list of requirements. You can grab the latest version for your platform on the FOX Toolkit site.

By the way, if you're running Ubuntu on your desktop, libFOX gets installed by default in /usr/local/lib. Since Ubuntu assumes that all shared libraries will be in the directories they use, the project doesn't provide the standard /etc/ld.so.conf file for users to add other directories. Never fear, just create a text file with a single line in it which reads /usr/local/lib and save it as /etc/ld.so.conf, and you're good to go. Other prerequisites include xine-lib, SQLite, and libtag0c-dev. Naturally, you'll also need to have Ogle installed if you want to use the Goggles DVD player.

Enter the subdirectory created for each of the apps after you decompress the tarball, then run the installation script provided by entering ./gb at the command line. Use the help argument to see what options you may have in finding prerequisites, specifying or skipping functions, or where to install the finished code. Once it's built, run ./gb install as root and you're all set.

Before I could build gmm -- the executable name for the Goggles Music Manager -- I found that I also had to install libogg-dev and libvorbis-dev before it would compile. Then it was simply a matter of running ./gb and ./gb install, the latter as root.

Goggles Music Manager

Goggles Music Manager is all about making it easy to play your tunes. The first time you run it, point it towards the parent directory for your music collection and it will create a flat-file database (that's why SQLite is a prerequisite) to make it accessible. Adding additional music to the database later on is as easy as selecting Import from the File menu.

Figure 1 shows how your music collection is organized in the Music Manager. By default, there is one pane each for Genre, Artist, and Album, arranged above the largest pane, which shows the tracks available for the current selection. In my small collection, Genre is wasted space, so I opted not to display that pane by selecting View and un-checking Show Genre List.

You can display the tracks in their natural order, as they appear on the album, or you can randomize them. They are played in the order they appear. Want to play everything you've got, in random order? No problem. Select the first artist, then press shift and select the last artist. Then repeat the process in the Album pane. Then click on Sort and select Random. Your playlist now includes your entire collection. Of course, you can fine tune that process by selecting multiple albums by the same artist, or by several artists.

The latest version of gmm will play both Ogg and MP3 formats. Everything extracted in MP3 format by SoundJuices worked great for me in gmm. It's a fast, easy-to-use player. I wish I hadn't noticed his other apps, though. Now it looks like I'm going to have to learn how to play Sudoku.

Click Here!