Category Archives: GNOME

On Novacut

What follows is my opinion alone and does not represent the views of the Yorba Foundation or its employees.

There’s been some noise in the Gnomish blogosphere about Novacut and their recent (and second) attempt at fundraising via Kickstarter.  Probably the most slicing criticism I’ve seen yet comes from Danny Piccirillo at The Silent Number, who opens his complaint with this:

I am writing to say that the only way for the ideas behind Novacut to be realized is to stop pretending that throwing $25K worth of funding at it could possibly save the project. …

What Novacut is doing is harmful to free software, especially existing video editors.

I met the Novacut crew at the Orlando UDS last year.  They seemed like decent and motivated people who believed in both the power of open source and independent filmmaking.  It never crossed my mind that they were somehow, in any way, “harmful” to free software.

I’m not going to delve into my opinions of the Novacut editor or their dmedia project or even open source video editing in general (although I should point out that Yorba has some skin in that game).  I do want to express opinions on some larger points, however.

First, if the open source movement can really be so damaged by a few folks trying to raise $25,000 — which in the software industry is pennies in the couch cushions — then open source is doomed.  I don’t buy that argument for a minute.  One of the professed strengths of open source is its distributed nature, that no project can be shut down or washed out of existence (or do likewise to others, although it might overshadow them due to its success).  It’s particularly ludicrous to think that trying to raise a little money is somehow besmirching the name of open source video editors everywhere.

Second, I’ve grown tired of the “Never start a new project!” line of argument:

For the video editor, Jason needs to just swallow his pride and join forces with PiTiVi, as he has been invited to again and again. … PiTiVi has just implemented audio sync and multi-camera alignment, and surely the rest of Jason’s revolutionary ideas can be implemented as well.

My problem with the above statement comes down to one word: needs.  If open source is freedom, then it follows that contributors should join projects out of desire — out of freedom — and not due to some perceived imperative.

Of course, it’s easy to dismiss my opinion here because of my involvement with Shotwell, a program I’ve put a lot of hard work into in spite of the viable alternatives out there.  This is not a new or convenient opinion for me, though.  I’ve felt this way for years now.  I could name any number of open source projects that prove my point; you may be using a few of them right now, as you read this.  Sometimes starting afresh — tossing out old assumptions, letting go of aging technologies, focusing on new ideas or techniques — results in something useful, interesting, wonderful, or even revolutionary.  Alternatives also create healthy competition, which can be even more motivating than $25,000.

Does that mean everyone should simply start their own project whenever they feel the itch?  Of course not, but the threshold line between join forces and start afresh is not for me to dictate either.  Each contributor should get informed, weigh the alternatives, and then proceed with the decision they’re comfortable with.  And, as an informed individual myself, I need to accept that decision — the only imperative need I’m comfortable with in a free society.

Shotwell and GNOME 3

Earlier today I created a new branch in the Shotwell git repository called “gtk3”.  This branch holds a version of Shotwell that builds successfully under GTK+/GDK 3.

Due to time and resource constraints, we don’t have plans to have a GNOME 3 version of Shotwell ready for its 0.11 release.  The gtk3 branch will be maintained and updated through the 0.11 cycle to keep it from straying too far from the trunk.  At some point (most likely during 0.12 development) we’ll merge it back into trunk.  At that point, Shotwell will be a GNOME 3 application.

Although Shotwell compiles and runs under GNOME 3, there are some notable outstanding bugs.  The ticket title is prefixed with [gtk3] to distinguish them from bugs that cross both versions.  The GTK+3-specific issues include:

http://redmine.yorba.org/issues/3455 – Port to GTK+3 (this is the umbrella ticket for the complete task)
http://redmine.yorba.org/issues/3869 – [gtk3] Histogram not drawn correctly
http://redmine.yorba.org/issues/3870 – [gtk3] Horizontal scrollbar appears in checkerboard pages
http://redmine.yorba.org/issues/3871 – [gtk3] No text in publish progress bar
http://redmine.yorba.org/issues/3872 – [gtk3] Verify I18N
http://redmine.yorba.org/issues/3873 – [gtk3] Search bar problems
http://redmine.yorba.org/issues/3874 – [gtk3] Basic Information pane has no border

We encourage anyone who’s interested in the future of Shotwell under GNOME 3 to try out this git branch.  To download from our repository:

$ git clone git://yorba.org/shotwell
$ cd shotwell
$ git checkout gtk3
$ ./configure
$ make

You can run Shotwell from the build directory or “make install” to run from its installed location.

To reiterate, this branch is under active development and not slated for the 0.11 release.  In other words, use at your own risk.  It’s worth taking the time to back up your Shotwell database before use:

http://redmine.yorba.org/projects/shotwell/wiki/ShotwellFAQ#Backup

If you do find a bug or an issue, please let us know by reporting it to our Redmine server:

http://redmine.yorba.org/projects/shotwell/issues/new

If the bug seems to be GTK+3-specific, please prefix the ticket title with [gtk3].  Thanks!

Dave Neary on forking

As someone who witnessed Shotwell get forked over a dispute of two text labels, I have to chuckle and nod my head at Dave Neary’s apt analogy:

A fork is like a schoolyard football game. Tommy brings a ball to school, and gets to be captain of a team every time, picks the best players for himself, because if he doesn’t, he threatens to take his ball away. After a few weeks of this, the other players get annoyed, and everyone chips in to buy a ball for the group. At this point, Tommy has lost all power – he still has his ball, but he’s not team captain any more. He gets left standing against the wall till the very end to teach him a lesson in humility. So he sits out the games for a while in protest, starts a competing game at the other end of the yard with his ball and his rules. All the best players go to the other game, though, and some of the kids make fun of “Tommy’s” game – invitations to give up his game & join the new one seem more like taunts than honest efforts to include him. After a while, he realises that playing football with others is more fun, and more important, than playing with his football.

My only comment here is that Tommy in this situation represents a master trunk and the others are the fork.  There’s an additional football analogy here, that of Tommy wanting to be captain and bringing his own ball to the schoolyard and trying to get the others to play his game.  If they do, we admire the power of the open-source ecosphere.  If they don’t, it’s another branch that’s shriveled and died.

In this sense, open-source forking has made it into Urban Dictionary.