General MusicBrainz update: We've hired Oliver Charles!

Its been a busy summer behind the scenes at MusicBrainz! All this week I want to post a series of blog entries to catch you up on what we’ve been up to and how I expect us to move ahead with development of new MusicBrainz features. Over the summer we had three students working on various Google Summer of Code projects, making all sorts of interesting progress. In today’s blog post I’ll cover Oliver Charles’ (Acid2) work on his Template Toolkit branch. Later this week I will cover other SoC projects and current work on NGS in an effort to lay out a roadmap for future MusicBrainz development.

For lots of details on Oliver’s work, please check out his blog. Without delving into details here, I’ll say that his work is an important stepping stone in getting to the fabled NGS. Many people have commented that the current mb_server codebase is too confusing and too hard to setup. This has the effect of keeping developers away from hacking on the server. The general consensus was that we needed to clean up the codebase to make it easier to follow, separate business logic from the user interface logic and to use some more modern tools.

Oliver worked to address all of these points over the summer. We were clear on the fact that this project was too much to finish in the time that was available, so that the project would remain unfinished at the end of summer. Fortunately, MetaBrainz has been signing up more customers, so we finally have enough money in the bank to hire a coder to keep working on new server features. To that end, we’ve just hired Oliver part time to continue working on his project! Currently, the goal is to finish his Template Toolkit work by the end of the year and to start a beta test phase at the beginning of next year.

Hiring a developer to continue hacking on new features for the server is really important. My time in the last year has been taken up by keeping MusicBrainz running and keeping our search servers from melting. Unfortunately we’re coming up on a year without a server update, which is tragic. Having money in the bank should allow us to finally speed up the pace at which we’re updating our servers. Ideally I would like to have 4 updates per year — we may not reach that just yet, but I can see three releases happening in 2009!

Tomorrow I will post an update on Niklas’ collection work and the upcoming server release. Stay tuned.

For now, congratulations to Oliver Charles and welcome as an independent contractor to the MetaBrainz Foundation!

Planned downtime: Friday Sept 12, 14:00 PDT, 21:00 GMT, 22:00 BST

Tomorrow, Friday Sept 12 MusicBrainz will be down intermittently for about 30 minutes from 14:00 PDT/21:00 GMT/22:00 BST. We’re going to migrate to our new switch, which means that various portions of MusicBrainz will be unavailable for brief periods of time. Hopefully the overall unavailability of the service will be a lot closer to 5 minutes than 30 minutes. As usual, we will do our best to keep the interruptions brief.

Sorry for the inconvenience.

Update at 22:49 BST by djce: we’re done – it all went according to plan.  The site was down for just under 15 minutes.  Thank you for your patience.

Amazon opens "SoundUnwound" to public beta, and becomes a MetaBrainz customer!

Robert Kaye writes:

I’m pleased to announce that Amazon became a customer of the MetaBrainz Foundation last year! They’ve been quietly working on a site to promote and let users discover new music: SoundUnwound.

Amazon is now ready to let the world play with their new toy — but please be aware that the site is only in beta and may still contain some snags. I had the pleasure of previewing their work when I visited them in May and I was quite impressed with their methods of presenting information about music. I think MusicBrainz can learn a few things from their work.

However, I would like to stress that Amazon is currently only using the MusicBrainz data for SoundUnwound. I know there are a few people in our community (myself included) who would like to see Amazon use MusicBrainz data in their main store. That is currently not a point of discussion — the cooperation between Amazon and MusicBrainz is limited to SoundUnwound.

I’ll continue to work to convince Amazon that they should use our data in more of their operations, but for now, let’s take one step at a time!

Welcome on board, Amazon!

Unplanned Downtime

It looks like the main web site has dropped off the ‘net – most likely the server has crashed. I’ve asked the good people at Digital West to reboot the server. Please bear with us… hopefully we’ll be back up soon!

Update: the server is back (so it was down for just over an hour).

Update 2: We have two new servers on order to bring much needed redundancy to the site. So, the next time our flaky web server crashes the site should keep running. We hope to have those machines in rotation early in September. (read: after Burning Man. 🙂 )

Bandits at high noon!

The traffic to MusicBrainz is growing steadily! (steady growth is much better than exponential growth!)

We’ve recently added two more search servers, which are now humming along nicely. But now we’re seeing that our main web server is starting to get saturated, so we need to add more capacity. In order to use our existing machines effectively and to greatly increase the redundancy of our site, we’ve asked out board of directors to approve the purchase of two more servers. I expect this to be approved shortly.

In the meantime we’re getting more serious about people who are violating our very liberal terms of service that state that no single client instance is to make more than one Web Service call to MusicBrainz per second. We’ve been blocking mis-behaving clients more aggressively and have decided to block all clients that use this User-Agent id string:

Mozilla/4.0 (compatible; Win32; WinHttp.WinHttpRequest.5

If you’re using a MusicBrainz enabled application and all of the sudden it stopped working today, please leave us a comment below. We’d love to identify the offending application so we can contact the author of the application.

Also, the following IP address have been blocked from using MusicBrainz, either because of their client string or sending too many requests to MusicBrainz:

85.144.88.11, 69.181.45.228, 80.58.205.43, 205.209.78.232, 195.235.104.253, 85.240.173.204, 92.195.16.20, 89.241.123.24, 71.12.186.1, 204.17.31.126, 98.64.41.178, 77.188.36.140, 141.155.126.17, 217.225.157.236, 91.9.246.252, 66.91.250.27, 217.41.4.13, 83.76.160.150, 91.67.8.254, 88.191.58.11, 141.30.218.96, 88.88.124.26, 82.42.72.21, 91.9.230.72,
213.22.39.14, 86.0.180.87

In the last 16 hours, the following IPs have been over the limit:

Total requests IP address
3187 58.170.57.43
3344 71.76.7.125
3523 92.193.11.17
3789 61.216.59.7
4495 67.180.35.184
4670 218.66.36.76
6521 91.47.225.62
7993 67.109.84.5
8558 91.47.135.154
189763 88.191.58.11

If you find your IP address on this list, please make a donation to the MetaBrainz Foundation and we’ll consider unblocking you after you assure us that you will not be making more than 1 request per second.

New search servers

I’m happy to say that we’ve now got extra search servers – a failover pair, in fact, so we’re no longer reliant on a single search server. In fact shortly we hope to bring a third server into the pool too. Not bad considering that, so far, we’ve only ever had one (or zero) search servers.

What this means for you is that searches should be faster. It also means that the future performance of the web site is now more assured than it was before – we’re in a substantially better position to handle extra traffic.

Most of the work was done by Robert Kaye; I only helped to polish off the edges 🙂

Jim DeLaHunt is our new style leader!

I’m pleased to announce that Jim DeLaHunt is our new style leader!

After chatting with tons of people, it appears that no-one has any objections to Jim being our new style leader. Jim will be working to improve the style process and to get stuck proposal moving again. Expect to hear much from Jim in the coming weeks as the revamps our style process. If you’re interested in taking part or observing the improving style process, please subscribe to the MusicBrainz style mailing list.

The BBC unleashes dynamic artist pages beta

The BBC has just released its next MusicBrainz enabled feature: Dynamic artist pages.

You can see how often your favorite artists have been played on the BBC networks since last year. Turns out Coldplay is quite popular. To see how often a specific artist has been played, find the MBID on MusicBrainz and then go to this URL:

http://www.bbc.co.uk/music/artists/<artist mbid>

For instance, Portishead has mbid 8f6bd1e4-fbe1-4f50-aa9b-94c450ec0f11, so to check on Portishead, you’d go to:

http://www.bbc.co.uk/music/artists/8f6bd1e4-fbe1-4f50-aa9b-94c450ec0f11

The folks at the BBC assure me that all the artist MBIDs have a page there, but the page isn’t guaranteed to have much data. Even the MusicBrainz test artist is there. 🙂

Well done BBC! I’ve learned lots and lots about how the BBC operates and to see my friends at the BBC make highly visible progress tickles me pink!

Matthew Shorter of the BBC offers a little more insight:

Why are we doing this?
Currently our offerings around individual artists tend to be dispersed and hard to find. This leads to poor search performance for BBC music content, which means that users will typically only find content if directed by broadcast, or serendipitously by browsing brand sites.

Persistent unique URLs for artist pages which automatically aggregate what the BBC has to offer around individual artists will lead over time to much improved search performance and facilitate wider syndication of our content, building reach to brands. Automation and dynamic publishing means the pages can be created and maintained with a fraction of the manpower and server
load of the current generation.

Building good interrelated metadata for artists and programmes will also help greatly to enrich the music offering of radio & TV sites, offering such things as a chart of artists most played by a network, further information behind tracklists, rich now-playing information and so on.

What’s the offering?
We have a page for every artist in the MusicBrainz database – c.350,000 and counting. They contain, where available, basic information about the artist, discographies, high-quality images and details of play count by BBC networks & programmes. (It’s worth pointing out that for most of these pages, most of the time, there won’t be much content, but that’s fine, because pages will only ever be linked where we have broadcast or otherwise featured an artist, which by definition makes them significant.) See instructions at the bottom of this mail for how to access a given artist page*

Help wanted: Add release AR links to Wikipedia

Wendell and Sergey from MusicIP have done another crawl of Wikipedia — this time the goal was to match up releases in MusicBrainz with Wikipedia pages that exist for those releases.

Just like last time the results have been broken into convenient chunks of 100 with the proper links to let people verify the matches and quickly enter them into MusicBrainz.

If you’re interested in helping, please follow the instructions on the wiki and jump in!

Thanks!