Organising myself

Skin to StreetLifehackery: As part of the latest push to organise myself, I decided to try this idea about getting your inbox down to zero.  While I wasn’t looking after it, it had grown to about 5,700 messages.  After half an hour’s labour this morning, it’s down to 27, and I hope to bring that to zero by the end of the day.  (I haven’t read or used any of the Inbox Zero ideas, although I’m sure I ought to, and probably will soon.)  If I didn’t answer a message from you, I may have missed it in the noise.  Either I will answer it soon, or I accidentally deleted it with my tag-delete command of doom.  You are invited, as a general rule, to pester me again if it’s been more than a week.

AWN has a useful to-do list display which shows me the number of things left to do today in a severe number in the dock, and glares at me trying to make me feel bad about it getting larger than five.

Slight nargery: I suppose famous bloggers must get this all the time, but it’s always interesting when someone posts about something you post and you get to read their opinions at length; someone I don’t know posted his opinion about the themes post I made the other night on the Metacity blog, which meant I got an insight into what theme authors think about how things are– a particularly interesting insight, since, for reasons I haven’t ever discovered, theme authors and window manager maintainers don’t generally have much contact.  I wonder what solutions there are to that problem.

Photo credit: Christopher Peplin, cc-by-nc-nd.

My life continues along

My life continues to be interesting. I should post about it more, shouldn’t I? Work’s been busy, though, but that’s a good thing.

I posted some things over at the Metacity blog about the future of themes and the theme format. Please go and read it and share your thoughts.

I post a lot more there than I do here. Occasionally I will post something there and mention it over here, and people will say “Oh, I didn’t see that. Why isn’t the Metacity blog on Planet GNOME?”. And I’ll tell them that the official policy is that people go on p.g.o and projects go on p.g.o/news, which admittedly nobody much reads, and then they ask me why and I say, “I don’t know, that’s just how it’s set up.” I realise that most projects other than Metacity don’t post much other than their release announcements, but the Metacity blog is frequently-updated and chatty. So I tell the people that for myself, I’d rather like it if there’d be an exception to the people/project planet division for Metacity, or at least have one page that people knew about with everything on it, but it’s not up to me.

Here is my tech thought of the day: I would like it if browsers had a button like the wonderful Universal Edit Button which appeared when the page advertised a link rel=”alternate” of an audio type. Then you could click it and hear the page being read to you. It would be like the button which often appears on Wikipedia pages, only in a standard form everywhere. I may actually implement this.

Buying beer tonight, I was delighted to be carded. Nevertheless, it is ten years since I started doing any postgrad work and thus my Commemoration, which almost everyone else in the world calls a reunion, is coming up. It is beginning to look likely that I will be there. Anyone in the vicinity of Cambridge (the original one) who knows me and wants to say hello at some point in late September should make themselves known.

I was going to post about my life, but I forget what was happening.

My life has many parts, and one part is free software work.  Most of that is Metacity.  There are three main parts to my work on Metacity: fixing bugs, writing tests, and “oo, shiny!”  Fixing bugs is the most important, at least critical or blocker bugs.  Writing tests is important for the long term.  (I’m including fixing up commenting in that, otherwise I can’t know what the tests are supposed to do.)  “Oo, shiny!” is rarer, but keeps people happy when it’s something they asked for.  Sometimes real life takes over and I can’t do any Metacity work for a while.  Other times I do work on one at the expense of the others.  People sometimes get impatient when their bugs aren’t fixed, but there’s mostly just me working on it (there are others, but they’re busier on other projects).

The other day we went to the all-you-can-eat Chinese restaurant in a thunderstorm late at night and discussed Java, and because it was late and there was a storm, there was hardly anyone else there.  The staff were sitting at another table having an apparently very amusing conversation in Chinese.  They came over to apologise in case they were disturbing us, and I said they weren’t, and they said that there wasn’t much food out because of the paucity of customers at that point, but that if there was anything we wanted they’d cook it specially.  There was tons of food.  I should write a guide to local restaurants and put it up on the web.

We went to buy a wheelbarrow the other day, as you do, and they had to get a manager to come and unlock one because they were all chained together at the front of the shop.  The sales clerk said, “Yes, we have to get the manager because these are locked with a lock I can’t possibly open for you.  You see, it can’t be picked, it can’t even be shot off.”  I can’t believe he was expecting me to whip a revolver out of my pocket, shout “Hi ho, Silver, away!” and ride off with a wheelbarrow, so I was a little puzzled to note that this wonderful lock was attached to an ordinary length of steel cable which an ordinary pair of bolt cutters would have made short work of.  Maybe living in Cambridge makes you look out for these things.

Speaking of Cambridge, it seems I’m going to miss my college’s Commemoration of Benefactors this decade.  Oh well.

And now the politics: here is what a South Carolina senator believes is a funny picture.

Playground Patches

Today I was thinking, “Wouldn’t it be nice, and save me quite a bit of time, if when you look at a patch on Bugzilla, there was a Test link next to the Edit and Diff links?  And when you clicked it, it would apply the patch to trunk, and if it worked it would configure and make it and then drop you to a shell so you could see what had happened.”  So I made it.

What you will need:

  • Firefox.  Anyone wanting to port this to Ephy is welcome to do so.
  • A suitable build environment for whatever module it is.
  • A svn account.  You can’t do this anonymously, but only because I didn’t write it to do so.  (See below.)
  • gnome-terminal
  • wget (I would worry if you didn’t have this)
  • svn.  I wanted to make this use bzr-playground (hence the name) but I decided to make it use svn to begin with.
  • The actual Firefox extension itself.  You can get it here, but save a copy to your local disk and then open it up in Firefox.  You will have to restart when you install it.  This will also give you the opportunity to go into the XPI and have a look around. Did you realise that XPIs are just zipfiles and you can go in there, change them, rezip them, and reinstall them, and it’ll just carry on working?  You should.
  • A bug with un-applied patches on it.  Here’s one that I am going to get to on Sunday night or Monday, so try “Edited Patch” from there.

Things it should do in the future:

  • Have preferences, and let you specify that you don’t have a svn account.  Also, whether you want to use svn or bzr-playground. (Actually, you can do this for yourself already, by unzipping the XPI, modifying the commands, re-zipping, and reinstalling.)
  • Be clever enough to note who uploaded which patch, and store the information in a hidden file in that directory.  Then there would be a commit script which figured out what to put in the ChangeLog, commit message, and (for bzr) –author switch accordingly.
  • Not be a toy that Marnanel threw together in a few hours.

Warning:  If you run “Test” on the same patch twice, remember to delete in between;Playground Patches doesn’t do this for you in case it overwrites your work.  If you don’t, the patch will be applied twice, which won’t work.

Credit: This started out as a Greasemonkey script (for the sake of easy editing) until it was advanced enough to need XPCOM, and was then originally compiled to an XPI using the arantius.com Greasemonkey compiler.

I love this planet (in homage and parody)

NASA Endeavour (by NASA)

A free desktop… where anyone can help out.
Yep.

It kinda makes you want to…
Contribute patches?

I love the coders,
I love the Guadec folks,
I love translators,
I love the planet jokes,
I love the GNOME world
And all its GTK,
Boom de yada, boom de yada, boom de yada, boom de yada…

I love the D-Bus,
I love Epiphany,
I love Anjuta,
I love Metacity,
I love this desktop,
It’s such a people place,
Boom de yada, boom de yada, boom de yada, boom de yada…

Parchment

HOLY CRAP SOMEONE HAS FORKED GNUSTO
IS THIS NOT SO COOL
THIS IS SO COOL
THANK YOU WORLD
the end.

Update and explanation, now I have calmed down a bit: In 2002 I wrote a program called Gnusto. It took game programs written in the eighties and translated them into JavaScript. This meant that a browser could run them. But then I discovered that the difficult part was the user interface, in other words actually doing the windows and text and so on on the screen, rather than making the game work. In those days it was a weird black magic to make web applications work on IE and Mozilla, so I specialised it into a plugin for Mozilla (i.e. Seamonkey), and then Firefox. At about this time Eric Liga came along to join the team, and that is how we all originally got to know one another.

But then Firefox 2 was so different from Firefox 1 that the user interface needed to be practically rewritten, and I didn’t really want to take on the work, and although Eric tried some things out I don’t think it ever ran as well as it once had. And then Firefox 3 came along and things were all over the place. So Gnusto doesn’t run much any more, which is a shame for something which had at least a year of development time put into it.

Anyway, we talk a lot about Free Software. Some people suppose it means software you don’t have to pay for. It doesn’t mean that: it means software which grants you certain freedoms. One of those is the right to change the way it works and make that into a whole new program, which is called “forking”; this right is often called “the right to fork”. Last week someone announced he had forked Gnusto into a new system called Parchment, which will let you play any of these hundreds of games on the web with almost any modern browser. People took what Eric and I had done and mashed it up and made something beautiful with it. That is the power of freedom. That is why I’m happy.

Sous les pavés, la plage.

I’ve been working at the new job for a week now, and I’m enjoying it a good deal. The coworkers are friendly and the work has a lot of new challenges. I’m not sure how much I’m allowed to blog about. I’ll find out.

I spent a good while playing Packrat cooperatively with Fin this evening.

I have started microblogging over at identi.ca, which is synched to my twitter account. There are two reasons I’m using identi.ca rather than any of the dozens of others: firstly, its engine, laconi.ca (which somehow my brain keeps thinking has a far more interesting name) is free software and you can modify it or run your own; secondly, it uses an open protocol based on XMPP (like Jabber) so that anyone who wants can run their own microblogging site and join a big distributed network. It will be interesting to see how this develops.

There’s a fair to celebrate the Fourth of July, and we went there yesterday. After about an hour the entire field had a power cut, and there was brown smoke going up in the air from one corner and an acrid smell. The field was full of people groaning with disappointment. Five minutes later the power came on again, only to fail once more soon after: it kept doing this for four or five times. In the end they gave out cards if you’d arrived recently enough to let you come in free another time.

The Fourth of July fireworks in neighbours’ gardens are also making the dogs around here bark. There are some interesting Metacity bugs I’m working on, but I think I’ll get an early night.

And! Happy birthday to Carmen, who is of course one of the most awesome and special and wonderful people in California or anywhere! Many many happy returns.

Link soup:

New beginnings

Chicken green curry(I used to make a post every day about my life. What happened to that…?)

I said goodbye to my old job on Friday and I’ll start a new one tomorrow which is closer to home. It’s also doing more the kind of things I want to focus on, which will be interesting. My coworkers took me out to a place called Wild Rice in KoP for a goodbye meal.

Today, we went to Shupp’s Grove, but I didn’t get anything. The best part was stopping at Boehringer’s ice-cream stand on the way back, where I ate a turkey sandwich and no ice-cream, and forded the shallow anonymous stream with Rio, although I should have taken my boots off first. The ducklings are almost fully-grown.

I’ve been doing a lot more Metacity work recently than I have for weeks; let’s hope it continues. I’ve done some refactoring and commenting over the last few days, and today I fixed GNOME bug 92867 (theme viewer shows theme name in titlebar) and GNOME bug 430198 (allow toggling of non-composited minimise effect in gconf). They’re not major, but they’re progress.

One of our trees, a great and heavy oak, fell in a thunderstorm the other day, narrowly missing our house. It hit a maple on the way down which deflected it, although the maple was hurt in a rather self-sacrificing way. When the tree people came to clear it up it turned out that the oak was rotten to the core and dead inside. Not a work of art, but…

I thought  I saw an execution there.
The fascinated public gathered round.
The cheerful hangmen stripped the victim bare
And built their gibbet high above the ground.
The rope was taut, my wildness filled with fear.
I saw him fall.  I heard his final cry.
Yet when the hangmen left I ventured near
To find my fault: I’d never seen him die.
In fact, I think he’d died some years ago.
There’s blackness of decay in every breath.
The sound of flies was all that’s left to grow,
Now free to come and feast upon his death;
Prince of the trees, I have a simple plea:
I will not die till death has come to me.