By Jake Edge
August 11, 2010
Lowering the barriers for contributors is something that a lot of projects
are trying to do, but the Banshee media
player project has gone further than many as Gabriel Burt reported in his
talk at GUADEC. Essentially, Banshee has tried to make it as easy as
possible for users—not necessarily programmers—to quickly and
easily fix a small bug or add an extension. The project is clearly making
an outreach effort to grow its community and some of the techniques being
used might be helpful for other projects looking to do the same.
Burt is one of the four maintainers of Banshee and he started his talk by
remembering back to when he was struggling to figure out how to get
involved. At that time, he watched the postings on various Planet
aggregators and eventually got his start by looking at the GNOME Human
Interface Guidelines (HIG), which led him to his first patch. He
noticed that the string "Eject When Finished" didn't follow the HIG, so he
grepped for that string and changed it to "Eject when finished".
That was a simple fix, but he also had to get the code and the
dependencies, so that he could build Banshee. One of the things
that has been addressed since then is that there is extensive help on the web site
that describe how to get started, install the dependencies, and get the
code. "If you run [Banshee], and find a bug, you can get started
easily" to fix it, he said.
There are still things that need to be done to the Banshee interface for
HIG compliance, and "you don't need to be a C# programmer" to
fix them. But he also demonstrated how quickly one can add a new feature
to Banshee with a little programming knowledge.
Live on the GUADEC stage,
Burt modified the "deduplicate" feature—which detects artist or album
names that are textually different, but refer to the same entity—to
add genre deduplication. By making a few changes to the
AlbumDuplicateSolver.cs file, mostly consisting of changing
"Album" to "Genre", along with some minor Makefile modifications, he was
able to add the new functionality. Some queries needed changing, which he
said "might take ten minutes" to come up with, but the rest of
the changes took just a few minutes. Adding a derivative feature like that
is a
"good way to get started contributing to Banshee".
Banshee also has an extension
framework that allows easy addition of new functionality, but the
project has taken it a step further. Executing
./create-extension Foo will set up everything needed for the
extension, including doing a git add for the skeleton code
and enabling the extension in Banshee. You can have a "working
extension in two minutes", Burt said. Once that is done, editing
the code in MonoDevelop gives access to all of the Banshee and .NET
classes and methods via tab-completion, simplifying the development process
as well.
Over the last two-and-a-half years of development, Banshee has averaged 32
commits, ten bugs fixed, and one new contributor every week. There are
active IRC channels, forums, and mailing lists for the project. Burt noted
that the timezone coverage of the four maintainers is quite good since they
live in Sydney, Luxembourg, and both coasts of the US. In short, there are
lots of opportunities for those who want to get involved to hook up with
the team.
Because extensions are available via a Gitorius repository and there are lot of
folks running Banshee development versions straight from the git
repositories, contributions will be quickly picked up by others:
"within days, lots of people will be using your work".
Banshee has a one-month release cycle, so "within a month, thousands
will be using it". He estimated that some 55,000
users picked up the monthly releases, and that within six months,
"millions" would be using the code because Banshee is
installed by default on several distributions and is available in the
package repositories for many more.
At the end of the talk, Burt pointed out some of the more recent Banshee
extensions that integrate with various services, including the Amazon MP3
store. It can be browsed in Banshee, as it uses WebKit for the browser
functionality, and songs can be downloaded directly into your music
library. Through the affiliate program, 10% of any purchases go to the
project, which donates all of that money to the GNOME Foundation. He also
mentioned Miro Guide and Internet Archive extensions as
other useful ways to get audio and video content.
Obviously, Burt's talk was another part of the outreach effort for the
project. "I hope you'll join in and help us having fun hacking on
Banshee", he said. Though Mono and C# leave a bad taste in the
mouths of some,
Banshee is clearly trying to overcome that by making the project as
accessible as possible for new users. But beyond that, there is a clear
sense that Banshee is not about making any kind of political or social
statement,
it's about the enjoyment of hacking on a cutting-edge, multimedia
application. Other projects could certainly follow its lead and
potentially grow their communities as well.
Comments (1 posted)
Brief items
I can only say that thousands of free software developers are alive
today, and I don't think free software development is fatal for
many of them.
--
Richard Stallman
Please, help me bring my boyfriend back from "Linux Land." His name is Zach.
If you find him, you may have to shut off the computer you find him in front of
to get him to speak in anything other than "C." Sometimes he will speak to you
in French, but thats only because he has his phone in French. I don't speak
French so this too has become a wedge in our relationship.
This is a severe issue. Please fix this.
--
"Ilana" files a bug report
Comments (2 posted)
BackupPC 3.2.0 was
released
on July 31. "
BackupPC is a high-performance, enterprise-grade system
for backing up Linux, WinXX and MacOSX PCs and laptops to a server's
disk. BackupPC is highly configurable and easy to install and
maintain." The new release has several new features, including an
FTP xfer method, more options for the server backup command, better error
reporting in the web interface, and more. There are a "
significant
number" of bug fixes as well.
Comments (none posted)
If you are running CouchDB 1.0.0, you'll want to have a look at
this notice in the
near future. "
Over the weekend of August 7th-8th, 2010 we discovered
and fixed a nasty bug in CouchDB 1.0.0. The problem was subtle (cancelling
a timer, without deleting the reference to it) but the ramifications are
not: once the bad code path is triggered, subsequent writes to the database
are never committed. This means there is potential data-loss for users of
1.0.0." There is an update available, but the right sequence of
steps should be followed to minimize the chances of lost data in the update process.
Comments (2 posted)
GNOME 2.31.6 development release is available for testing. "
Ahah!
This release is one day late, and I can already hear some people saying
we're not good at respecting our schedule! I must admit that straight after
GUADEC is not the best timing for a GNOME release ;-)"
Full Story (comments: 1)
KDE has announced the release of the Plasma Desktop and Netbook workspaces,
the KDE Development Platform and a large number of applications available
in their 4.5.0 versions. "
In this release, the KDE team focused on stability and completeness of the Desktop experience. More than 16,000 bugs have been fixed, and many feature requests have been filled. The result for the user is a system that feels faster, takes less time to "think", and works more reliably."
Full Story (comments: 15)
The first public draft of the multitouch protocol specification - the
description of how the X Window System will work between multitouch input
devices and applications - is available. Lots of low-level detail which
will be of interest to developers who want to develop multitouch-aware
applications. "
If you can poke holes into the spec, come up with
use-cases that are not covered or have general questions that aren't
answered, please point them out. The sooner, the better."
Full Story (comments: none)
The OpenOffice.org Community has announced the availability of a beta
release of its upcoming 3.3 version. "
This first preview is for everyone interested in the new features and enhancements of the final 3.3 release, expected later this year."
Full Story (comments: 41)
Newsletters and articles
Comments (none posted)
On his blog, Arjan van de Ven
reflects on the changes in how the PowerTOP utility is being used, with an eye toward restructuring it.
"
So it's now time to rethink some of the code and make things much more scalable for adding new checks and features. In addition, the output also needs to improve to be more useful as a diagnostics tool. I'm thinking about adding a 'generate a report' option, that basically gives a complete report card of the system. [...] This doesn't mean I want to leave the end user behind; not at all. But in terms of new features, with all the low hanging fruit taken care of, some of the things PowerTOP needs to do are just a lot more technical than what PowerTOP 1.0 offered."
Comments (22 posted)
OSNews
covers
the release of the Genode OS Framework version 10.08. "
Today, the Genode OS Framework has seen another feature-rich release, introducing support for hardware-accelerated graphics by the means of Gallium3D, wireless networking via the MadWifi communication stack, a new block-device infrastructure, and Qt4 version 4.6.3. Genode is a modular framework for building special-purpose operating systems, currently supporting 6 different kernels. With the new release, its device-driver coverage reaches a new level and brings the project one step closer towards the goal of shaping Genode to a general-purpose OS."
Comments (4 posted)
Page editor: Jonathan Corbet
Next page: Announcements>>