Wednesday, December 15, 2010

Amazon Affiliate Revenue

Since late July Banshee has had AmazonMP3 store integration, earning a 10% affiliate fee. We're proud to send all of that revenue to the GNOME Foundation. Here is the cumulative revenue breakdown per store:$1185€315£80¥28€70

That totals to about $1800 USD, all going directly to the GNOME Foundation! This accounts for about half of what GNOME has earned from Amazon in the last six months.

Our revenue has increased every month, too; in December we're on track for another record month! Find out more about Banshee...

Monday, August 16, 2010

Use Bugzilla Like a Champ

Things that can eat up way too much time:

  • Given a bug id #, going to its URL
  • Searching bugzilla

To save time, frustration, and get more done (since it's no longer time-consuming and frustrating), I added a few, special bookmarks. They contain a keyword, which you can type in the URL bar to go to the bookmark, and a %s, which is replaced by whatever you type after the keyword in the URL bar. In Firefox, you can right click a bookmark and edit its Properties to add a keyword.

Here are the ones I use most, and examples of what you can type in the URL/Awesome bar:

  • Go to a bug: bgoid
    bgoid 585112
  • Search BGO: bgo
    bgo product:banshee os:windows
    bgo product:hyena status:needinfo
    Other search fields you can use
  • Search Banshee bugs by summary: bbug
    bbug startup crash
    bbug metadata


Tuesday, July 20, 2010


I'm giving a talk on Friday, July 30 at 10:15am. I intend it for people who want to start hacking on FOSS and GNOME projects but haven't found a way in yet, and those of all experience levels who want to learn more about hacking on Banshee in particular. Of course I'll talk a lot about the state of the project, and some of our cool new features too.

If you want to meet up in Amsterdam sometime Wednesday through Saturday, or in The Hague after that, send me an e-mail. I arrive in AMS early Wednesday with no plans.

Finally, a lazyweb request: if you have advice on prepaid data SIM cards in the Netherlands, I'd love to hear it.

After taking the train to Amsterdam Central, I went to this Vodafone store and got a €7.50 sim card, €5 of call/txt credit (incoming is free, outgoing is 30 cents/min and 19 cents/txt) and a 50% off €10 30 days of data — so all told, €17.50. The guy spent 10 min or so fiddling with my G1 (dev phone) to get it activated, and then I goggled the APN info you need to enter manually: with username and password 'Vodafone'. Seems to be working great!

Wednesday, May 5, 2010

Banshee 1.7.0

We just released the first of the unstable/beta releases leading up to Banshee 1.8. We are aligning with the GNOME release schedule for 1.8, like we did for 1.6. The Banshee calendar has the full release schedule. Our download page describes how to get beta releases. See the 1.7.0 release notes for more information.

One small new feature is the ability to switch sources quickly via the keyboard. You can type 'g' to activate the switcher, then type a source's name, acroynm, or substring of the name to switch to it — eg g then np to switch to Now Playing.

Busy Busy
There is a lot going on in the Banshee community! For example:
  • Alex Launi was accepted to Google Summer of Code to work on Banshee's Now Playing source, making it slicker and more useful. Banshee co-maintainer Alexander Kojevnikov will be mentoring him.
  • Mike Urbanski is working hard to get his podcast-ng branch merged into master, get it tested, and possibly replace the current Podcast extension for 1.8.
  • Paul Cutler is preparing to ramp up his docs branch work, adding in-app end-user documentation to Banshee.
  • I'll be speaking about Banshee at GUADEC. More on this later.
  • We'll be making very frequent 1.7.x releases, quickly getting contributors' fixes and features into users hands.

There will be dozens of other features in 1.8, but they depend on what piques contributors' interest and motivation. You can wait and see what makes it — or get involved and make things happen!

Friday, April 2, 2010

Beautiful Evidence of Committers


A couple years ago I got turned on to Edward Tufte's books about visualizing data. It's inspiring work, showing the value and beauty of data-rich visualizations that work at multiple levels. Since then, I have wanted to apply the principles he espouses in my own work, leveraging software for data processing and interactivity.

This is my first attempt. I wanted to visualize who contributes to a given project and how long they've been involved. I knew I had speedy access to the commit logs via git, but the choice of tools or languages to process and generate the display was harder to make. I opted to try using Perl (a language ingrained in my memory from using it at the LJ World) and HTML/CSS (ingrained from numerous projects and jobs).

The Evidence

I'm happy with the result. You can quickly see when people started contributing, and the changing rate at which they joined. And you can see how long any given contributor stayed involved. I generated charts for a few git repos I already had checked out, including Banshee.

Screenshot of script's output ran against Banshee's repo

This is a scaled screenshot of the rendered HTML output, which I encourage you to click through to since it has tooltips and is zoomable in your browser. The script is available, and barring bugs should work on any git repo.

Wednesday, March 31, 2010

Banshee 1.6!

As scheduled, we just released Banshee 1.6.0! This release has been a long time coming, and we're really proud of it.

Screenshot of Banshee 1.6 showing grid album browser
A more detailed backstory

We originally intended to release 1.6 last fall, but we got caught short on time, and ended up calling 1.5.1 a stable release so distros would feel comfortable picking it up, but of course the weird versioning has caused quite some confusion.

We continued the 1.5 series with 1.5.2 though 1.5.7 betas, leading up to this release: 1.6.0. The process really started 14 months ago when we branched off 1.4, and master became the workplace for 1.5. It wasn't even until after we branched that Alexander Kojevnikov, now one our most prolific contributors and a maintainer of the project, got involved!

Beautiful numbers

53 programmers contributed to Banshee 1.6 just since 1.5.1, and over Banshee's full history, 142 programmers have contributed. I think these are astounding numbers. And these don't include Banshee Community Extensions, which started two months ago today and already includes 15 extensions and 19 maintainers.

We fixed 265 bugs since 1.5.1 as well (over 500 since 1.4), added dozens of new features and enhancements, and had over 2,000 beta users opt-in to report anonymous usage data that we will use to make Banshee better.

Banshee 1.6

Here are some of the new features in Banshee 1.6. Read the Release Notes for more detail, screenshots, and enhancements not listed here.

  • Play Queue Auto DJ
  • Sync Device From Playlist
  • Grid View
  • Type-ahead Find in Track, Artist, and Album Lists
  • Automatic Scoring
  • New Shuffle Modes
  • Audiobooks Library
  • Library-folder Watcher
  • eMusic Importer/Downloader
  • Internet Archive Extension
  • YouTube Extension
  • Improved Metadata Handling

A community effort

Thanks to everybody who has helped make Banshee such a success! Tremendous thanks go to Bertrand Lortentz and Alexander Kojevnikov, who over the last year in particular have contributed countless hours writing their own patches and reviewing others', triaging bugzilla, being active on IRC and the list, and generally being great maintainers of the project. They have invested in Banshee, and the effect on Banshee's quality and the community's growth is evident.

You can tap into the Banshee community and energy in many ways – read Planet Banshee, follow us on Twitter, lurk in the #banshee chat room, subscribe to banshee-list, monitor bug activity, and keep up with the latest code. We're a friendly, productive bunch, so stop by if you have a question or idea, if you want to contribute or you just want to learn how you can make your own project better.

Thursday, March 11, 2010

Banshee 1.5.5

We released Banshee 1.5.5 – aka 1.6 RC 1 – yesterday, with a lot of bug fixes, polish, and a couple new features.

Gapless Playback / Playbin2

Banshee now uses the playbin2 GStreamer element. With this comes support for gapless playback, which is the default now for users with GStreamer >

Grid View

We are debuting a new grid mode for our custom list widget, visible in the modified Album browser. It will be used for Videos, Audiobooks, and more in future releases.

Album browser, now as a grid

YouTube Extension

This extension shows YouTube videos in the Context Pane related to what you're playing, and lets you watch them within Banshee. You can enable it in the Extensions tab of the Preferences dialog.

Contextual YouTube videos

Banshee Community Extensions Update

We also released Banshee Community Extensions 1.5.5, including five new extensions: CoverWallpaper, LiveRadio, Magnatune, Telepathy, and Ubuntu One Music Store (not ready for users yet).

The Mirage shuffle/fill by-similar mode has been greatly improved. It's smarter, now looking for tracks similar to the last several you've played, and dissimilar from ones you've skipped.

Enhancements and Fixes
  • Improve search responsiveness on large libraries
  • Add icons for Nexus One and Audiobooks
  • Play Queue item count, size, duration now ignores old tracks
  • Muinshee fixes: disable Auto-DJ, allow reordering, hide previous song
  • Fix a very common, SQL-related crash in 1.5.4
  • Fix saving equalizer settings in culture-invariant way
  • Jumping to a source's prefs via its context menu works again
  • Usage data not submitted more than every 48 hours
  • Fix repeatedly resyncing some files to a device b/c transcoded
  • Clear the redo stack on shuffle mode change
  • Accept feeds with empty title
  • Uri encode file location queries, making them work properly
  • Fixes to the OS X build


We are now string frozen in preparation for our 1.6 release on March 31st - so translators, full steam ahead! We might do a RC 2 in a couple weeks for additional testing and fixes. File bugs for any issues you find, and help us make Banshee 1.6 the best release ever!

Wednesday, March 3, 2010

Banshee Metrics

Last Wednesday we released Banshee 1.5.4, which included an opt-in feature to submit anonymous usage data. Over 500 people have already opted-in!

Interesting Stats
They are primarily getting Banshee through the Ubuntu PPA, with a moderate number building from source or using other distributions — including 20 OS X users.
20OS X

They are using Banshee in 36 locales, across 30 languages. Keep in mind the Preference to opt-in is (so far) only translated into 9 languages.
About half have the Banshee window maximized, enable ReplayGain support, show the bottom-left cover art, and show the context pane.

I'm still working on better ways to analyze the data and extract actionable information. I plan to have distribution graphs and such soon. In the meantime, I've posted some more stats here. As we get more submissions, add more data points, and get better analysis, we will be able to identify options nobody uses and optimize Banshee for real-world users.

Thursday, February 25, 2010

Banshee 1.5.4

Banshee 1.5.4 is out, with cool new features and lots of fixes! This is our fifth release in preparation for our big 1.6 release at the end of March.

Banshee Community Extensions

We have made a 1.5.4 release of Banshee Community Extensions as well. This includes the Alarm Clock, Lyrics, and Mirage extensions, and several others.

Mirage Similarity Engine

The Mirage extension has been modified heavily, dropping the old “Automatic Playlist Generator” in favor in integration into the playback controller – adding shuffle-by-similar, and into the Play Queue Auto DJ – adding fill-by-similar. Mirage calculates the acoustical similarity between two songs.

Play Queue Auto DJ, fill by similar

Anonymous, Opt-in Usage Data

Under Preferences, you can choose to "Improve Banshee by sending anonymous usage data" back to the Banshee developers. This collects information on what version you're running, what OS, library size, slow SQL queries, and a whitelisted subset of your preferences. This information will help us choose better defaults and see what parts of Banshee are used most and can be improved.

The 30+ people running a development version of Banshee and already submitting data are using 11 different language locales, have a median screen resolution of 1440x1024, and a median music library size of 5k songs. I'm working on some analysis/viz software to crunch the data - stay tuned!

Other Notable Improvements
  • Wikipedia context pane extension enabled by default
  • Add support for Nokia N900 phones
  • Coverart for unicode artist/albums now supported
  • Dropped glade-sharp dep; GNOME 3.0 ready
  • Add columns showing track sample rate and bits per sample
  • Option to sort an artist's albums by year, not title
  • Fixes to GIO backend
  • Many crash/startup fixes for OS X build
  • Fix several memory leaks
More Information

As always, check the release notes for more detailed information, screenshots, and download links. Thanks to everybody who made this release happen!

Thursday, February 18, 2010

Banshee Community Extensions


Writing a Banshee extension and getting it into users' hands has never been easier. We have started a new sub-project called Banshee Community Extensions (BCE), collecting various existing extensions under one source repo, bug tracker, and autobuild setup.

Its source is hosted on gitorious, dramatically lowering the barrier to committing and sharing your code publicly.

This centralization makes things easier on translators and packagers, too. And users get access (without manually downloading/installing) to the fruits of the extension community's labor.

Creating a Working Extension in Minutes

It's ridiculously easy to make a new extension. Install Banshee 1.5.3 (including the devel package), or build/install the latest from git master instead. Then,

git clone git://
cd banshee-community-extensions
./create-extension Foo
make run
This creates, builds, and runs Banshee with your extension. Go to Edit » Preferences » Extensions to enable it, and see it appear:

We already have seven extensions migrated, and one brand new one!

  • AlarmClock
  • Awn
  • ClutterFlow
  • LCD
  • Lyrics
  • Mirage
  • RadioStationFetcher
  • StreamRecorder
And, we have 13 maintainers already!

We have bleeding-edge openSUSE/SLED packages available, and Ubuntu packages should be ready in time for Banshee 1.5.4 next week.

If you've been putting off some extension idea you've had, delay no longer! Read the full Extension Writers Guide, and get started today!


Thanks to Chow Loong Jin (aka hyperair, our fearless Ubuntu packager) for broaching the idea behind BCE, and to Bertrand Lorentz for teaming with me to get things to this state - in just two weeks!

Wednesday, January 27, 2010

Banshee 1.5.3

We've just released Banshee 1.5.3, containing a lot of exciting new features and bug fixes.

New Features:
  • Sync device from playlist option
  • Type-ahead find in track, artist, and album lists
  • Optional cover art in lower-left corner
  • Cover art editable via drag-and-drop and right-click
  • Audiobooks library extension
  • Library-folder watcher extension
  • eMusic importer/downloader extension
  • GIO file backend, supports non-local files

Read the 1.5.3 Release Notes for the full scoop and some screenshots of the new features.

screenshot showing manual cover art editing, ipod sync-from-playlist options, and lower-left cover art

This release is what will become Banshee 1.6 and be picked up by distros; your help testing it and filing bugs is important and appreciated!

Try It

You can get packages for your distro, grab the source tarball, or follow the bleeding edge by trying it from git master.

Aaron worked hard to bring back the OS X build this release, too.

Digg It!

Monday, January 25, 2010

Banshee Release Schedule

We are aligning Banshee's release schedule with GNOME's, at least for the next few months. Banshee 1.6 will be released the same day as GNOME 2.30, and we'll have three beta releases before then.
  • 1.5.3 - Jan 27 - Wednesday!
  • 1.5.4 - Feb 24
  • 1.5.5 - Mar 10 - String Freeze
  • 1.6.0 - Mar 31
I'm excited to try switching our schedule from feature and whim driven to time-based; I think it will be felt positively by everybody: contributors will know when their work will reach people, translators will have time to translate, and users can stop wondering what mixture of magic and bribes will cause a release to finally happen.

Subscribe to the Banshee development calendar, find out how to help test the latest Banshee, and/or contribute your creativity and sweat!