Shotwell 0.11.0 Released

Today Yorba is proud to announce the release of Shotwell 0.11.0.  This is the latest version of our photo management software.

Changelog:

  • Hierarchical tags
  • Support for RAW+JPEG and selectable RAW developer
  • Switched from GConf to GSettings
  • “Hide Photos Already Imported” is now persistent
  • New Saved Search options
  • Mimics no longer stored in home directory
  • Added support for BMP format
  • Many, many bugfixes

Download a source tarball from the Shotwell home page at:
http://www.yorba.org/shotwell/

Binaries for Ubuntu Natty will be available soon at Yorba’s Launchpad PPA:
https://launchpad.net/~yorba/+archive/ppa

Why I Like GNOME 3 Shell

Friday night at the c-base pre-registration party Karen Sandler asked me what I thought of GNOME 3, and in particular, the GNOME 3 Shell.  Although I’m generally impressed with it and enjoy using it daily, I couldn’t enumerate for her solid, tangible reasons.  (It probably had something to do with the bottle of Berliner I was holding.)  She asked me if I would blog my thoughts.

Here they are, for whatever they’re worth.

Stability – Considering this is an initial release, I’ve found the Shell to be remarkably stable.  I’ve had no freezes or crashes.  While that seems like a low bar to overcome, this is essentially an 0.1 release.  Not much 0.1 code can make the claim that it’s stable.  Most 0.1 code is just happy it compiles.

Performance – When I heard in Gran Canaria that Javascript was a key technology behind the Shell, my thoughts immediately went to scalability — both in terms of performance (the common use of the term) and of code manageability (which is how I use that term some times).  I can’t speak to the latter point because I’ve not dived into the Shell source, but in terms of the former, I find the Shell to be speedy and brisk.  The only stalls I’ve experienced were when the machine was under load.

Productivity – I should list this first, but I decided to save the best for last.  My productivity has jumped since I switched to GNOME 3 Shell.  This might be a highly subjective evaluation.  I suspect I’m not alone.

I suffer from a common malady, Easily Distracted Syndrome (EDS).  Flashy lights, running gauges, televisions tuned to static — anything blinking or back-lit steals my attention away from what’s in front of me.  GNOME 3 Shell’s minimal and colorless chrome keeps me focused on the work at hand.  This is a good thing.  Windows is by far the worst offender, but all desktops are culpable.  Jeffrey McIntyre at Slate wrote about this problem in 2008, noting that “Our desktops are now a thick impasto of tabbed windows, pull-down menus, dashboard widgets, and application alerts. No possible distraction gets left behind, no link, feed, IM, twitter, or poke unheeded.”  Since computers are supposed to help productivity, changing this state of affairs should be a high priority for any desktop designer.

I like that GNOME 3 Shell doesn’t have a lot of widgets to play with.  The Tweak Tool is about is far as it goes, and I’m happy with that decision.  With GNOME 2 Shell, whenever I created an account on a new machine, I was in for at least an hour’s worth of work rearranging the desktop to my liking.  When I sit down to a GNOME 3 desktop, there really isn’t much to do — but I do twiddle with it.  The following are changes I wish would be made to the out-of-box experience:

(Note: I’m sure all of these have been debated ad infinitum in chat rooms and on mailing lists.  I’m still going to list them.  Think of these as a kind of late vote — open-source hanging chad):

Power Off… – I understand the impulse to stay as minimal as possible, but requiring me to log out in order to power off the machine is frustrating.  I use a GNOME Shell extension to add Power Off… and Suspend to the system menu (it also adds Hibernate, which I could live without).  I can’t believe I’m the only one grumbling about having to find and install this extension.  One of the big guffaws over UNIX’s predecessor Multics was that you had to log in in order to log out.  (The myth came about because of a feature that could lock the console, much like screensavers today.)  Unlike this bit of Multics lore, make no mistake: with out-of-the-box GNOME 3, you have to log out in order to turn off the machine.

Weather indicator – This is the one distraction from the GNOME 2 Shell I wish was moved to GNOME 3.  Yes, there’s a couple of weather indicator extensions out there (here’s the one I’m using), but they’re rough around the edges, hard to configure, and have to be installed separately.  If the new Shell can support calendaring in the clock drop-down, certainly it’s not a stretch to have a weather indicator in the top bar as well.

Desktop – Some people never use ~/Desktop for anything.  Others store their entire lives in it.  I more or less fall in the former camp, but I do keep a few documents on my desktop now and then.  Beyond my personal habits, it’s an odd state of affairs that to the user the entire desktop background is an inactive, inaccessible void.  Fortunately the GNOME Tweak Tool allows for Nautilus to manage the desktop much as it did in the past.  That was the first switch I threw to ON when I ran the tool.

None of this is particularly damning, and in all I think the GNOME 3 Shell designers have done a great job.  Certainly I wouldn’t call it an “unholy mess” and then demand that the designers add features back, as though the way to clean a room is to toss more stuff on the rug.  With a few careful additions here and there, the experience would be just right.

I keep going back to the productivity gains I mentioned earlier.  Perhaps that’s the best compliment I can pay to the group: Your creation stays out of my way, which is exactly what I want.

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!

JIm Nelson's blog + archives from Yorba Foundation's original blog