Next NGS milestone: Beta 3 on 7 September

After a 3 hour bug triage session with the team we’ve managed to sort out the bugs and come up with a schedule for the next release. After looking at the number of bugs for us to tackle before the release, we felt that we really needed to have one more beta release before we are ready to call it a release candidate. Given that, we’re going to do yet one more more beta release on 7 September.

I know, another beta release? Yes, we’re sorry that this is stretching out longer than it should have, but we’re dedicated to releasing the software when its ready and not before. We’ve done our best to cut out unnecessary features, but we still have about 8 weeks of work to do. Fortunately, both Oliver and Warp are now working full time and and fully focused on this release. Re-writing a 10 year old codebase isn’t an easy thing to do and so far it looks like NGS will become stable before perl6 does. 🙂

The release candidate 1 will be 100% feature complete with no new features or tweaks being added. All we will do to the release candidate is fix bugs! For this reason we are not creating an NGS release milestone in Jira. That way, no one can postpone any tickets into the final release. 🙂

To see what we have planned for the upcoming releases, please take a look at the bug list for beta 3 and the bug list for release candidate 1. Currently we expect release candidate 1 (and hopefully only 1) about 4 weeks after beta 3. We hope to then release NGS onto the servers 2-4 weeks after that.

Looking for a contract programmer for C++/Python work

UPDATE: This position has been filled.

A soon-to-be partner of MusicBrainz is looking for an engineer for contract work. This company is looking for a person who has the following skills:

  1. Strong Python and C++ skills with experience in building applications on Windows, Linux and Mac.
  2. Open source programming experience
  3. Server programming skills a plus
  4. Solr and audio programming experience a plus
  5. Ability to be a self starter, handle task coordination via Skype and IRC.

The work would involve working with MusicBrainz and the partner company. This contract would be full time for 2-5 months, depending on the workload which isn’t very clear yet. After that the contract would taper off to 10-20 hours per week on an ongoing basis. Depending on how main portion of the contract goes, the company may decide to give more hours to the contractor on new projects. The pay for this position is still being determined, but its safe to assume that it would be a fair rate for an engineer based in the US. This engineer can be located anywhere, but the pay is likely to be appropriate for US rates. If you are interested in this position, please send your resume to helpwanted at musicbrainz dot org.

Downtime: Adding more RAM to our DB server

As a band-aid measure we’re going to add another 4GB of ram to our database server. This should hold us over until we migrate to NGS, when this problem should go away. In order to add more RAM to the DB server, I’m expecting a down time of about 10 minutes starting at 14:00 PDT, 17:00EDT, 22:00UK, 23:00 Europe this Friday July 30.

Sorry for the inconvenience.

UPDATE: Server has been fed an additional 4GB ram and everything is back to normal. Let’s hope this helps the load on the database server.

VLC, we love you, but we're seeing too much of you!

Dear VLC:

In the last month you grew to more than 25% of our traffic and this is hard for us to handle. We’ve limited the number of requests from VLC to 100 requests per 10 seconds. We need to find a way to help cover our costs for all of this traffic.

In other words, we need to sit down and chat, VLC. Please contact us!

Respectfully,

MusicBrainz

Please take the MusicBrainz Survey!

Jess Hemerly, who is has been studying MusicBrainz as part of a class at UC Berkeley, has devised a survey for MusicBrainz users to get a better understanding of who contributes to MusicBrainz and why. She says:

I’m a researcher at UC Berkeley’s School of Information and a MusicBrainz editor (agreatnotion). I’m interested in how and why people contribute to MusicBrainz and how it can be better. Your participation will help us learn more about you, our community, and how to sustain a successful peer-produced database. The survey takes about 15 minutes, and all personal information—like username and email—will remain confidential. My advisor and I will review and analyze the results and hope to share our analysis with the academic and open source communities. The results will also be made available to the MusicBrainz community.

Take the survey here. The survey will be open for two weeks, until July 23, 2010.

Thank you for participating!

Yet again: NGS replication restarted

Sadly, the last round of NGS testing caused some problems. I’ve fixed those problems and restarted the replication feed again. Follow these instructions to get your replication started again:

  • Download and install the mb_server source code from git. Follow these instructions. (Make sure you update this code from the code you may have pulled yesterday)
  • Set your server type in DBDefs.pm to RT_SLAVE
  • Download and import this dataset. This is the same dataset has in the last NGS test!
  • Insert this required row into the database, using our psql program:
    cd <mb_server_src>/admin
    ./psql READWRITE
    insert into replication_control values (1, 12, 100, now());
    
  • Now run admin/replication/LoadReplicationChanges a few minutes after the hour to keep up to date with the data on the test server. Please note that this system may not be stable yet and that we will occasionally load new data on our test server, which will require you to reload the data on your server.

Good luck!

Once more: Testing the NGS live data feed

Now that we’re (hopefully) done making schema changes to NGS, its time to give the replication testing another try. If you’re interested in testing replication for NGS, follow these instructions:

  • Download and install the mb_server source code from git. Follow these instructions.
  • Set your server type in DBDefs.pm to RT_SLAVE
  • Download and import this dataset.
  • Insert this required row into the database, using our psql program:
    cd <mb_server_src>/admin
    ./psql READWRITE
    insert into replication_control values (1, 12, 0, '2010-06-15 17:00:02.795317-07');
    
  • Now run admin/replication/LoadReplicationChanges a few minutes after the hour to keep up to date with the data on the test server. Please note that this system may not be stable yet and that we will occaisionally load new data on our test server, which will require you to reload the data on your server.

Good luck!

Announcing NGS Beta 2!

I’m pleased to announce that we’ve finished hacking on NGS Beta 2! The test server is updated with the beta 2 source code and a fresh data dump (20100616 complete with 119,000 old edits migrated).

To play with NGS Beta 2, head over to the test server and log in with your normal MusicBrainz username/password. If you find any probems, please enter a bug report in our bug tracker. To see the complete list of issues that have been resolved for Beta 2, see this rather long list.

Oliver says:

Here’s a brief summary of my changes:

  • Edit migration – old historic edits are now migrated, along with votes. Edit notes are not yet migrated, though work has begun in this area
  • Many bug fixes from beta 1, including improved error handling
  • A few more possible edits, including removing PUIDs and adding/deleting ISRCs from recordings
  • Case change edits are now auto-edits
  • Aliases now have a ‘locale’ field
  • Annotations can be previewed before submit

It’s hard to summarize the apparent 160 issues in JIRA though, but these stand out at least.

Warp says:

  • Completely new release editor, not quite finished but it should give you a good feel of how the final version will work.
  • Some big changes to /ws/2, see the new specification.
  • Non-latin names are now properly sorted.
  • Green tagger icons
  • Ratings can be cleared.
  • Lots of data display fixes and tweaks.
  • Both Oliver and Warp have been working hard to meet this deadline, and I’m pleased that they’ve completed this important milestone! Many thanks to Oliver, Warp, Nikki, Navap, Ijabz, Murdos and anyone else who had a hand in working on beta 2. I would also like to thank Alisa Lemberg specifically for her efforts in helping Warp, Navap and myself redesign the release editor. Alisa’s UX experience helped us focus our efforts and finally deliver a solid release editor. Without her we’d still be guessing the right approach to take for creating a usable release editor.

    Happy Testing!

    Oliver Charles joins MusicBrainz full time

    I’m pleased to announce that Oliver Charles (acid2) has agreed to hack on MusicBrainz full time. Aside from some vacation time in July, Oliver will be working full time starting now.

    Along with the grant engineer from the Queen Mary Linked Data grant we will have four full time people working on MusicBrainz. We’ve never had this many people dedicated to moving along the server development. I’m hoping the times of extreme resource shortages will be over, allowing us to hopefully target a much faster release cycle for the server once we releases NGS.

    Welcome on board Oliver!