GNOME Docs hackfest in Brno
[info]philbull
A couple of weeks ago, I attended the GNOME doc sprint in Brno, which ran in parallel with the Red Hat Developer Conference. My flight came into Vienna, where I was met by Shaun McCance and Florian Nadge. After a rather bizarre lunch at a Greek restaurant (Free wine! Free dessert! Expensive meal!), Shaun and I took the train to Brno, narrowly avoiding a trip to Hungary in the process. The Czech Republic is seven shades of awesome. The countryside that we passed through on the train was beautiful (even more beautiful on the way back, when the snow had melted and the Sun was out), and Brno seems like a pretty cool place to be. Food and drink are super, super cheap, at least when you're used to Oxford/London prices, and pretty much all the meals I had were excellent. Maybe we were only eating in nice places? I don't know. I only wish the concept of vegetarianism had made its way over there in a bigger way - I'm on a bit of a pescatarian kick at the moment, so I could eat fish at most places, but vegetarian options were few and far between. (Amusingly, one restaurant managed to stuff a fish with parma ham, while omitting to mention this fact on the menu. Ho hum.)

We spent a few days at the Masaryk University while the developer conference was on, and had a couple of decent topic brainstorming sessions. It was really good to see so many familiar faces - the Docs team has been growing at a steady pace over the past couple of years, and we now have a good number of people interested in both developer and user docs. We found some of the new changes for GNOME 3.4 quite challenging to write about - a lot of the new UI's were incomplete and buggy while we were working on them. It was useful to be able to bug the devs in person, though. That's why hackfests are so great - you can drag the maintainer of some app into the docs room and review the UI with them, pointing out what users will struggle with, while finding out directly what will have changed by release time. Repeatedly reviewing UI changes is a gigantic pain for docs people, since we have so many topics to review - one string change, and a whole bunch of help topics can be rendered useless. It's useful to be given a thorough "heads up" about stuff like that, and that's what we got.


GNOME Platform Overview (1)
The hackfest went extremely smoothly this time around, partially because we didn't have to fight with the facilities at all (the wireless held out!), and partially because Jim is a genius, and got everyone to arrive with a recent, working version of GNOME 3.x. Jim wins. We spent the first few days either brainstorming topics, or reviewing the desktop help for correctness. We have almost 300 topics in that document, so it's a big job. That was a good warm-up exercise for everyone, I think. We then moved on from the university to Red Hat's Brno offices, where people started to work on separate projects. I spent some time restructuring the platform overview, which has been a thorn in our side for quite some time.

The idea was to make it so that new developers could find their way around the platform, understanding what capabilities are available, where they can be found, and how to use them. One particular hurdle to new developers is getting a toolchain set up to do even basic things, so I added some "conceptual overview" topics, and "getting started" guides. It's also important to make people realise that GNOME isn't really like any other platform - there's no SDK, no one, blessed, distribution channel, no one company responsible for technical support. We need to prepare people to handle this, so that they don't get confused and put off from using the platform. I then broadly categorised the various libraries in the platform by function, and wrote "marketing" overviews for some of them. Each overview explains some of the cool things you can do with the libraries, has links to different types of resource for the individual libraries, including conceptual material, guides/manuals and, importantly, example code, and also points at existing GNOME apps that use those technologies.

I think that building a library of example code snippets is a very valuable exercise - you can learn a lot from seeing one, simple feature implemented in a few lines of code, completely separate from any boilerplate or other stuff. It's important to allow people to get something working quickly, by gluing together little chunks of code here and there. Otherwise they lose interest. Once they have something that just about works, they can then go on to refine it, and "do it properly". That's how a lot of developers learn, I'll wager. Pointing at existing apps that make use of the various parts of the platform is also important. We should milk our open-source credentials more when we talk to developers - people have solved all sorts of problems using GNOME technologies, and so we should make it easier for outside developers to inspect the relevant bits of code so they can see the solution without having to figure it out for themselves. Tiffany and Susanna did a lot of work on the developer tutorials too, which are very useful for brand new developers. Those will be merged into the platform overview too, alongside the shorter example snippets. Much of the overview is in stub form at the moment, but we plan to develop it over the next release cycle or so.


GNOME Platform Overview (2)
People were working on a lot of other stuff besides, but this is already a long blog post, so I'll leave it up to them to explain what they did on their own blogs. Everyone worked really hard, and it was an absolute pleasure to spend the week with a group of such fun, dedicated folks. It was even good to see Ryan Lortie. So, well done Shaun, Jim, Tiffany, Mike, Andre, Kat, Dave, Baptiste, Tomeu, Julita, and Susanna, you rock!

And that's not to mention our hosts. I need to say a massive thank you to Florian, and Petr, for being so great. They helped us with travel arrangements, showed us around town, gave us somewhere to work, translated for us, ordered food in for us... The whole nine yards. It was amazing. The language issue was especially difficult for me - I can get by in most places where they speak either Germanic or Romance languages (at least some of the words look familiar), but I was completely lost with Czech (which is Slavic). I think we would have had a pretty confusing time without them. Andre Klapper was also magnificent, putting up many of the docs people at his apartment before their early flights the next day. So thanks, guys, you are awesome! And thanks to Red Hat, and especially to the GNOME Foundation, for sponsoring the whole thing, and making it possible to bring all of us together to work on GNOME.


Sponsored by the GNOME Foundation
  • Add to Memories

Open Help 2011 - Cincinnati
[info]philbull
We live in strange times. I woke up on Saturday morning to find that I'd been magically transported to Cincinnati by a benevolent spirit. And American Airlines. Bleary-eyed and somewhat confused, I was accosted by a passing documentation team and forced into attending the inaugural Open Help conference, where a gaggle of tech writing luminaries pummelled me with their insight. Only hours later, I was being exposed to questionable meat products by the Godzilla fan club. Standard.

The conference went pretty well. There were some good talks on user-centred information design and converting technical support queries into valuable documentation, lots of interesting documentation technology from Red Hat and Mozilla and tips on designing certification programmes from BSD. This was followed-up on Sunday by a day of discussion, where we shared experience and converted one of the speakers to Ubuntu. Open source FTW. Now we're up to the GNOME hackfest which, unfortunately, has been marred by the availability of peanut M&M's. I'm spending the rest of the afternoon converting my sugar high into a bunch of commits. More on the conference later, and hopefully Shaun will have videos from the talks.

GNOME Foundation sponsorship
  • Add to Memories

Cosmology Meets Machine Learning
[info]philbull
Guess who's live Tweeting the Cosmology Meets Machine Learning workshop at UCL? Yes, yes, it's me. (And Phil Marshall, and Joe Zuntz.) Follow the #cmml hashtag if you're interested in Bayesian inference, statistics, machine learning and/or cosmology.
  • Add to Memories

GNOME 3; User Help hackfest
[info]philbull
GNOME 3.0 released

Well done everyone!

User Help 2011 hackfest

Well, the User Help hackfest in Toronto went swimmingly! Blip tells the story. Muchas tortugas to the GNOME Foundation for their usual level of super-generosity, and muchos Horton's muffins to CDOT at the University of York at Seneca for hosting the hackfest. (By the way, they're doing some seriously cool stuff over at CDOT - check it out.)

As a result of the hackfest, the GNOME docs are lookin' gooood. If you have an up-to-date build of GNOME 3.0 you can see for yourself (in Yelp, as The Fearless Leader intended). There's an HTML build on Library too, but it's not quite as pretty.

Sponsored by the GNOME Foundation

  • Add to Memories

GNOME Women: Work on docs!
[info]philbull
It's time for another round of the GNOME Outreach Programme for Women!

I recently got back from spending a week in Toronto at the GNOME docs hackfest. Tiffany and Natalia, our current women's outreach interns, were so completely and utterly made of awesome that I couldn't resist mentoring for the docs team this year! We're looking for people to work on some of the following:
  • Writing, editing and testing help topics for end users
  • Writing guides for developers
  • Integrating help into user interfaces
  • Performing help usability tests
  • Making high-quality instructional videos to be integrated into the help
  • Helping distros to use the GNOME docs as a basis for their own specific documentation
  • Something awesome of your own invention
I'm pretty excited about this stuff. We're well on track to building a help system that even beats the (excellent) offerings from Microsoft and Apple. Get in touch ASAP, there's loads of stuff to be done right now!
  • Add to Memories

Desktop Help
[info]philbull
Welcome to the future of desktop help. It's GNOME flavour!

Latest GNOME Desktop Help front page

(Tweaks to the page style pending, and plenty of content left to add. Shaun's version looks better - not so much blue everywhere. Well done everyone who's been working on this today!)
  • Add to Memories

User Help hackfest
[info]philbull
 We're at the User Help hackfest in Toronto. Join us on #docs on irc.gnome.org!

(Thanks to the awesome GNOME Foundation for sponsoring the hackfest, and Syllogist for sponsoring muffin-time!)
  • Add to Memories

Frustration, thy name is trying to work on two projects
[info]philbull
Last Tuesday I gave a talk at the Cape LUG about what I saw for the future of GNOME-Ubuntu relations. I didn't paint a pretty picture. A full half of my talk consisted of me moaning about how crappy it is that minor differences between the two projects are repeatedly being blown out of all proportion, resulting in the current river of bad blood we find ourselves wading through. (The other half was filled with my customary suite of bad jokes and incoherent rambling.) Interestingly, Mark Shuttleworth was also in town and dropped by [1] to listen and respond to some of my points. This was certainly welcome because it helped me to understand some of the decisions Canonical has made recently. Besides, it was a nice gesture.

Perhaps some context for what follows is in order. I'm an Ubuntu person who spends most of his time working upstream in GNOME. I do this because I think my work can benefit the wider community as well as Ubuntu users (and, erm, because I enjoy working on GNOME). It can be a bit crappy sometimes, though.

For starters, some [2] people in the GNOME community moan about how Ubuntu doesn't pull its weight upstream. They then make it difficult for Ubuntu-y folks to contribute things upstream. People within the Ubuntu community, Canonical employees included, have tried to make significant contributions and have been knocked back on several occasions [3], in most cases not for any particularly good reason I would judge. I've even heard stories about Canonical having to upstream patches via a third party because a GNOME maintainer wouldn't accept (identical) patches from them! (I know; citation needed.) There is an anti-Ubuntu (or at least anti-Canonical [4]) sentiment in parts of the GNOME community.

Equally, there is a frustration with GNOME in some quarters of the Ubuntu community. Rather than joining in on the GNOME side of things and developing upstream, people see the processes and dynamics of GNOME as hurdles to doing what they want to do. It seems easier to go off and partially reinvent the wheel than to try working with people who don't share your exact vision of the free desktop [5]. Of course, there is no middle ground to be had, and the "irreconcilable differences" which prevent us from working together on one thing or another often lead to "completely different" approaches being taken, like Unity and GNOME Shell [6]. This way of doing things is often a gigantic waste of time and reinforces the opinion of some in GNOME that Ubuntu isn't a team player.

To round-off this sketchy analysis of a complicated situation, I should also mention Canonical's role in all of this. Canonical are a for-profit company and intend to make money from the Free desktop. On paper at least, I think most people in the GNOME (and Ubuntu) community are happy for people to make money from Free software. The method you use to make that money is subject to intense scrutiny, however. Free software companies are already at a disadvantage compared to proprietary software businesses when it comes to making money [7], and insisting that all of their attempts to generate revenue fit into some warm, fuzzy picture of a benevolent cooperative for whom profit is incidental is unreasonable [8]. Sorry folks, but it's the 21st century - even charities are getting cutthroat when it comes to fundraising, because they realise you can do more good by playing the capitalism game whilst remembering to stop short of the excesses of Big Business.

If you want the Free desktop to be successful, to gain significant market share, to compete with some of the biggest, most ruthless companies in existence, you're going to have to throw away some of your ideas about how this should work in an ideal world and start playing hard ball. I think this is what Canonical are trying to do. And yes, that involves exploiting [9] the community to some extent, and of course people are upset about that. I don't think Canonical are hell-bent on milking FOSS for all it's worth, but they do require some freedom to operate. Having said that, if Canonical want to push the view that a pragmatic, corporate approach to Open Source is the route to success, then they're going to have to do a lot better at not making people feel used. Things like splitting Banshee's Amazon referrals and insisting on copyright assignment cause bad feeling without bringing in much dough, I would imagine.

My point is that the bulk of this bickering is counter-productive and unnecessary. Open source desktops are hardly swimming in market share, and I doubt chronic infighting will remedy that situation. I don't care who started it, or who is in the wrong. From my point of view, the whole situation is depressing and demoralising. If it continues, chances are I won't want to work in either community. But the differences are reconcilable! GNOME can understand and facilitate Canonical's commercial goals and can be more accepting of Ubuntu people and their way of doing things; Canonical can benefit from the fruits of the Ubuntu and GNOME communities' labour in a more sensitive way; and Ubuntu contributors can resolve to work upstream more. All it will require is for some people to swallow their pride and/or make small compromises [10].

1 In a Darth Vader mask. Really. There are photos somewhere.
2 I would like to draw your attention to my careful use of the word "some" throughout this post.
3 I'm thinking of things like Zeitgeist, app indicators (which are a Free Desktop standard!) and so on.
4 I fully understand that Ubuntu and Canonical aren't the same thing, and that there are tensions between them. They often get tarred with the same brush upstream, though.
5 The decision to switch to Unity instead of GNOME Shell is symptomatic of this. I asked Mark about that decision and he said that attempts were made to get Canonical design people working with GNOME design people etc. etc. and no agreement could be reached. Despite this fundamental disagreement between the two camps, Unity and GNOME Shell are doing a great job of looking and feeling almost identical to one another.
6 Sorry to harp on about it, but GNOME Shell and Unity are extremely similar, to the point where hardly any of the differences offer tangible benefits to the end user. Helpfully, they're just different enough to cause massive problems for documentation and support people though. Working together on one new shell would have been possible on purely technical grounds.
7 By this, I mean that factors like the code being open mean that it can be more difficult to get users to pay up; revenue streams other than the obvious, directly selling the software, must be found. Of course, Free software has plenty of advantages in terms of reduced development costs, community contribution and the like.
8 To pick an example at random:
"I thought you understood the spirit of Free Software, but you're just another normal company that is first going after money."
9 An ugly word, but I think it's the right one. You're making money by taking other peoples' work and packaging it up, without offering them any reward for that work (monetary reward, at least).
10 I will be swallowing some of my pride by working on documentation for Unity and assigning the copyright to Canonical.
  • Add to Memories

Cape Town; Talks
[info]philbull
It turns out that I've been in Cape Town for the last three weeks, hiding from my documentation responsibilities in the rather picturesque Department of Maths and Applied Maths at UCT. (They use Ubuntu here!) Shaun is dragging me across the Atlantic in mid-March to make up for it though. Rumours that I was bribed with biscuits are almost certainly unfounded.

Anyway, while I'm here I'll be opening my mouth on numerous occasions:
  • On Monday the 21st of February I'll be giving a talk on "Contributing to open-source documentation" at AIMS in Muizenberg.
  • On Tuesday the 22nd I'll be talking about "Future conflicts between the Ubuntu and GNOME communities". Catchy title, huh? It's at the LUG meeting on UCT Upper Campus. See the CLUG wiki for more information.
  • On Tuesday the 1st of March I'll be giving an academic talk on "Testing homogeneity on large scales with the kinematic Sunyaev-Zel'dovich effect". That's at 12 noon in the Maths building at UCT.
  • Add to Memories

App maintainers: It's time to embrace the duck
[info]philbull
Documentation superstar Tiffany Antopolski sez:

The Gnome Documentation Team is working on updating help to Mallard docs. We have a list of applications that still need their user docs converted to Mallard. That list can be found here.

I would like to ask maintainers to have a look at the wiki. If you have info for the wiki, please add it. Or, if you know someone interested in working on your help, please introduce us to them (and maybe add their name to the wiki).

If you have any questions, please feel free to get in touch with the Gnome Documentation Team.

We're looking for some more writers to help with the conversion process - get in touch!
  • Add to Memories

You are viewing [info]philbull's journal