my blog

Friday 20 May 2011

Solutions Linux & LinuxTag 2011

I was traveling last week to attend two events: Solutions Linux in Paris and LinuxTag in Berlin. It was a bit unfortunate that they happened during the same week, as they conflicted for two days — which means I missed some days for both events. And on top of that, the Ubuntu Developer Summit was also last week, which resulted in some people missing the events...

Compared to last year, both events had a quite visible difference in terms of number of visitors. I'm not exactly sure why this is so; it could be because there were conflicts with other events, or also because they moved to first half of May, which is different from previous years.

What was most amazing, however, was to be present at booths just one month after the GNOME 3.0 release. For both events, we had tons of GNOME 3 PromoDVDs (kindly offered on behalf of the openSUSE project) to give away, and that was a big success: I think we gave around 600 of them at Solutions Linux and probably a similar amount, if not more, at LinuxTag (Tobias would know better than me here).

GNOME 3 PromoDVD

GNOME 3 PromoDVD. Picture by Frédéric Crozat

Many more people than usual came to us to talk about GNOME 3 and the feedback was very positive in most cases (except for kernel hackers, interestingly). Even if visitors loved the fact that it's intuitive and shiny, I believe what many loved even more was the innovation that the GNOME project has put in GNOME 3. It was also eye-opening to realize how many people were interested in looking at and playing with the internals of GNOME Shell, and considering writing an extension to cover that small thing they were deeply missing — until we usually showed them that there was already an extension for what they wanted.

We didn't have an event box for the GNOME booth at Solutions Linux since we weren't sure there would always be someone on the booth during the three days, but in addition to the PromoDVDs, we had many t-shirts from FOSDEM. Many thanks to Alexandre Franke, Michael Scherer and Christophe Fergeau for doing most of the work at Solutions Linux.

On the other hand, at LinuxTag, Tobias made use of the two European event boxes to make sure that, after last year where we had no presence at the event, GNOME would be rocking hard there. And I must admit it worked pretty well!

GNOME Booth at LinuxTag

GNOME Booth at LinuxTag. Picture by Tobias Mueller

On the openSUSE side, Henne cheated with magic to organize an incredible presence at LinuxTag. We had something like 30 people, and the booth was always full of people willing to answer questions or help visitors. While it was not needed to attract people, we also had some of our openSUSE beer to distribute around.

It's really interesting to compare memories of the LinuxTag events I attended, and the most visible difference is how people perceive the project: it now feels like openSUSE is really considered as a community project by everyone we're talking to while this was much less obvious in 2008. Apparently, we're doing something right :-)

openSUSE Booth at LinuxTag

openSUSE Booth at LinuxTag. Picture by Michal Hrušecký

Going to Berlin was also a great opportunity to catch up with the other boosters and many friends. It was a bit short, but I was glad to be able to use some brain time from great minds like Stefano (from Debian), Bradley (from Software Freedom Conservancy) or Andreas (here at openSUSE), to just name a few. Pavol and I investigated further how to deal with the GSoC money for openSUSE without the openSUSE Foundation, and the event was a nice opportunity to discuss this with other people to help us move forward. Finally, I was able to put a face on the name of our latest booster who joined the team recently, İsmail, so now I really know whom I'm annoying every day ;-)

Since I apparently can't go to events without delivering some talks, I had three slots to publicly digress about some topics during the week:

  • for Solutions Linux, it's always hard to find appropriate topics as this is not the typical audience I'm used to; the people attending the talks are usually much more interested in the business side of things, and in how technologies can benefit their companies. In the end, I chose to talk about SUSE Studio since it offers an extremely intuitive interface based on great technologies to build appliances. And it's so cool that it makes it easy to talk about it :-)
  • my first talk at LinuxTag was about cross-distribution collaboration. That's a topic that I'm getting fond of after discovering that we could do much more in this area, and there's nothing blocking more collaboration except people not talking to each other. There are some success stories of collaboration (with some that are really long-standing), but there are also failures. Those failures should however not prevent us from trying again and again, as long as we learn from them. There was some good discussion with Sebastian Pipping from Gentoo about this, so this will hopefully result in even more contacts with Gentoo in this area.
  • my second talk at LinuxTag was about GNOME 3. I really enjoy talking about GNOME 3, as we do have a great story to tell there and people are excited about this new version. While GNOME 3.0 could fill a full presentation slot, I like to go beyond and discuss about how we evolved as a community and what will come during the whole GNOME 3 era. Many thanks to my German friend, Daniel Siegel, who helped demo the instant messaging integration in the Shell during the talk; he also provided me with a nice topic to discuss with the audience, while doing a demo :-)

But the best thing of the week was that Klaas brought me some of his Blütenhonig. I've been wanting to get some for months (I think we first talked about it at FOSDEM 2010?), so I was really curious about it; therefore it's no surprise that it was one of the first things I ate when I came home, and it tastes great! I'll need more soon :-)

Monday 18 April 2011

Taking my release manager hat off

Back in June 2005, I noticed that we were lacking some tarballs due mails for the GNOME 2.11 release cycle and I sent a small mail to get this fixed. This is how I got trapped: after this mail got read by Mark McLoughlin, he suggested I could replace him on the GNOME release team. A few years later, in September 2007, Elijah chose to pass his GNOME release manager hat to me. And now, in April 2011, it's time for me to pass the baton: Luca Ferretti is replacing me on the release team (he joined as a trainee in the past few months), and my good friend Frédéric Péters becomes the new GNOME release manager.

Release Team love

Picture by Frédéric Péters

I'm really happy of what we did as a team during those nearly six years. I'm more than happy, actually: I'm proud of it. Everything that happened between 2005 and 2011 is of course the achievement of the whole community, but I do believe the release team played an active part — even if not always visible — in what we produced. Of course, there's one failure I will never forgive myself: I never managed to get French adopted as official language for the project, even though I believe good progress was achieved on this front.

Down with release team!

Picture by Claudio Saavedra

Leaving the release team is not a recent decision; I actually took it back in 2009. I clearly remember sitting in a meeting room in Gran Canaria during the Desktop Summit, and deciding that I would leave the release team once GNOME 3.0 would be out. And a year later, in the Hague, when it became obvious that we would reschedule GNOME 3.0 to March 2011, I wondered if it meant I should stay six more months or if I should leave after 2.32. But I couldn't leave before 3.0, so I chose to stay.

The decision being taken for a long time doesn't make it easy, though, as the release team has been part of my identify for a long time now. However, it's time to move on.

I support the release team

Picture by Ryan Lortie

I'm of course sad to see my evil twin leave at the same time, as well as another member of the french consp^W^Wteam. But there is new blood coming in to replace us, and I'm convinced they will contribute to make the GNOME 3 era a very successful one. And with Frédéric Péters taking the release manager hat, I can only say I'm leaving the release team with confidence that the team will stay strong!

Wednesday 13 April 2011

gnome-panel is dead, long live gnome-panel!

With GNOME 3, we obviously recommend to users that they should use (and at least try for a few days, it's usually enough to get addicted) our new interface, based on GNOME Shell. That being said, not everybody can use GNOME Shell yet (if you're unlucky with your hardware, for instance), and some people just really want to stay with an interface closer to what GNOME 2 provided. And that's where the fallback mode enters.

Sure, the fallback mode is not our target in terms of design, but that doesn't mean it's unloved. It's actually looking quite good with 3.0 and I encourage people to go ahead and try it instead of just proactively hating GNOME 3 because of the changes it brings. You can configure GNOME to always use the fallback mode in the the System Info panel of the System Settings:

You can force the fallback mode in System Settings

The fallback mode is made of the same components as your GNOME 2 session. Except that they got boosted with love! Let me tell you about the changes in gnome-panel for GNOME 3.0 to give you an idea of what kind of love I'm talking about.

Under the hood

  • Bonobo no more: okay, this was already in GNOME 2.32, although we had a compatibility module for bonobo-based applets. Now all the communication between the panel and the applets is done over D-Bus. Sounds like a jump to the future, doesn't it? Of course, this means that applets have to be ported but I heard there is documentation for that. This work was lead by Carlos Garcia Campos.
  • Port to GTK+ 3: how could we release for GNOME 3 with a GTK+ 2-based panel? No way. So various people worked hard on moving to the latest GTK+; thanks should go to Carlos Garcia Campos, Germán Póo-Caamaño, Milan Bouchet-Valat, Christian Persch and Benjamin Otte.
  • Port to GSettings: since we wanted to be cool, there was no way we would still use the venerable gconf to store settings. Porting to GSettings was quite fun, especially as gnome-panel was probably one of the heaviest user of gconf (and it was certainly using it in interesting ways). We now use GSettings in interesting ways too since some API is still missing in GSettings. Oh, and we're also using dconf (which is what GSettings uses as a backend by default) directly, which is completely insane and crazy. But we love insane and crazy!
  • Port to GDBus: that's really the cherry on the cake. We still had some code using dbus-glib, and moving to GDBus just made sense. Ryan Lortie was the one removing the last mention of dbus-glib-1 from configure.ac. That being said, we now optionally depend on telepathy-glib which uses dbus-glib :-)
  • Real libpanel-applet documentation: sure, sure, we don't want you to write new applets because they won't work in the non-fallback mode. But if you really decide to not listen to us, you now have a complete and up-to-date documentation to help you.
  • Easier way to define default panel layout: if you ever tried to define a default panel layout with GNOME 2, you certainly knocked your head against a brick wall several times (I know I did). Those days are over now: just use a simple keyfile-based file and just specify the keys you want to change for each object.
  • Lots of code cleanup and changes for GNOME 3 friendliness. Did I say lots? I probably meant tons. Really.

User-visible changes

  • New panel layout and theme: that's probably the first thing you'll notice in the fallback mode: it looks a bit different, and the content in the panels has changed a bit by default. It was done to make the fallback mode look closer to the non-fallback mode, which is sound. But if you don't like that, just change it. Use another theme. Move your panels and applets (see below). You can make it look like GNOME 2 if you really want to (but I must admit I very much like the new way :-)).
  • Centered applets: that's the second thing you'll notice: the clock is centered by default! Woo! Centered applets? Am I dreaming? People have been requesting this for a looooong time. And it's here. And it works. Really. Try it. You can center more than one applet, obviously.
  • User menu: that's the third thing you'll notice: the menu bar lost its System menu, and instead, there's a user menu on the right. If gnome-panel is built with telepathy-glib, this menu will enable you to change your presence on the desktop (including for IM). It also contains, more or less, the same actions that were available in the old System menu.
  • Align your applets correctly: so, now you see applets on the left, centered and on the right. It turns out this is now enforced: you cannot put applets at some arbitrary positions anymore. They will always be left-aligned, centered or right-aligned. This actually matches what people generally try to achieve when they setup their panels, and while I was initially reluctant to do that, Ryan convinced me. And he did good since this offers a much better experience. But that's not all, this also fixes all the annoying issues you had when changing the resolution of the screen or moving a panel, where some applets suddenly moved to weird positions and you had to reconfigure everything to be properly positioned. Now it just works. Really. Magic, I tell you.
  • Still editable, but not by accident: this all sounds cool, but you tried to add an applet, or to even just move one, but without success? There's a secret trick here: press alt (or the modifier configured for metacity, if you changed it) and right-click. And here you go, you can do everything again! This is indeed not very discoverable, and we might work on improving that, but this makes using gnome-panel a much more solid experience. First, you don't have this feeling it can break easily (I had this feeling), and second, you won't remove things by accident anymore. This also means we don't need the per-applet lock setting anymore, so it's gone. And really, did you edit your panels that frequently? I doubt so :-)
  • Bye-bye drawers: I had to remove drawers. Those were buggy in various ways, and I don't think this was fixable with the old approach. This is going to annoy the people who were using them (I've not seen a lot of users of drawers, though), but I think if we had to break this (and we had to), this had to be done for 3.0. Maybe we'll bring back a way to stack launchers, or something similar. But that needs a proper design, to avoid the a drawer is a panel, but it behaves a bit differently approach.
  • (Update) No more popup menus on menus: I forgot to mention that the popup menu in the applications menu is now gone. This has always been broken (it was only working for items that didn't have a submenu, for example), and this was really a hack that was not portable to GTK+ 3. So instead of trying to keep the hack alive, I killed it.
  • Small fixes for some several long-standing bugs. The one I immediately think of is the thin lines appearing in the notification area. Yup: they're gone now. It was really a stupid bug, but for some reason, I was not able to easily reproduce it before so could not fix it.

That's a lot of changes, and if you have any doubts about that, here are some stats: 174 files changed, 12699 insertions(+), 19364 deletions(-) (this is just for code, and it doesn't include translations, schemas, etc.). It's actually the second most active development cycle in terms of lines changed since 2.0 (the first one being the one from 2.2 to 2.4, which included a nearly complete rewrite of a good part of the code).

Oh, and this is how it looks like:

GNOME 3 Fallback Mode

It's certainly not as elegant as GNOME Shell, and you can see that the NetworkManager icon is not using a symbolic icon yet, which is a bit annoying. But still, it's pretty usable, I'd say :-)

In case anyone wonders, I love the new GNOME 3 and so I moved to the non-fallback mode (which I wholeheartedly recommend). But if GNOME Shell is not for you, give the fallback mode a try, you'll love it too!

Monday 11 April 2011

GNOME 3 celebrations from everywhere

After GNOME 3.0 went out, I disappeared a bit from our reality (as I was trying to get back to a more healthy state), but I still managed to read feedback here and there about the release. I guess I'll blog a bit about the fallback mode, since it appears this is either not known at all or well-misunderstood...

What really made my day, though, was how our release got celebrated. I'm not even talking about the launch parties (some had amazing cakes, woo), but just about things like this:

  • our friends at KDE codenaming their 4.6.2 release Congrats specifically for GNOME 3: The codename "Congrats" dedicates this release to our friends over at the GNOME camp, who release a new major version today.
  • our friends at Ubuntu celebrating GNOME 3 in the front page of their website with a picture dedicated to the release in the slide show. Unfortunately, I didn't take a screenshot of this and it's now gone — if anybody took a picture, please share it!
  • our friends at openSUSE welcoming GNOME 3 with a present: 10,000 Live DVDs of GNOME 3 that will get donated to the GNOME Foundation for events.

GNOME 3 is a top tweet

I'm sure I missed a lot of other nice celebrations (links in comments are welcome :-)), but even with only those four items, I feel a lot of love! Thanks to everyone who had a nice thought after the release, we really appreciate that!

Wednesday 6 April 2011

Enjoy GNOME 3 today!

GNOME 3.0

GNOME 3 banner by Jakub Steiner & Lapo Calamandrei

After nine years in the world of GNOME 2, our community is now moving one step further with the availability of the first GNOME 3 release. We're writing an important new line in the history of our project.

It's hard to ignore the feelings this event creates.

I remember the long discussion Lucas and I had about the future of GNOME, in front of his hotel at FOSDEM 2008.
I remember how, at GUADEC 2008 in Istanbul, the release team discussed the idea of finally doing GNOME 3.
I remember the Boston hackfest in October 2008, and all the ideas that were generated there.
I remember writing the first draft of our plan for GNOME 3.0, late at night at the end of March 2009, while being hosted by Christophe.
I remember meeting with as many teams as possible for two days at GUADEC 2010 in the Hague, to decide if we should delay the release.
And I obviously remember the Bangalore Hackfest we did last week to work on the final details on the release.

I love our project and what we achieved. You will love it too!

- page 4 of 43 -

by Vincent