Metacity Journal

I was going to write a short essay here about the “given enough eyeballs” dictum, why and how code can grow old gracefully, and the excellent news that, thanks to Erwann Chenede, today’s Metacity release fixes the window-cascading bug that people have occasionally been complaining about, but I ended up writing it all in a Metacity Journal post, instead. I think you should all read the Metacity blog, of course.

Nor shall my sword

After I got out of work, we went to the hairdressers’. Rio decided that she wanted her hair cut short for the first time (like Kit Kittredge), and I think today I saw a strange change between little-girl Rio that was and teenage Rio to come, brief as it was. The hairdresser trimmed my hair and asked me about how it was working out that Rio had three parents living in the same house. Afterwards we went to eat somewhere and the server told me my hair was longer since last time; I think trimming the split ends causes an optical illusion of some kind. Rio and I played a maths game that she taught me, and I told her it would be ideal as a Python exercise. There was no time for a darts match tonight.

Several months ago I volunteered to help with the transition of GNOME Bugzilla towards 3.0, and I haven’t done much work on it since. However, I have come to the decision that potentially scriptable things which are unscriptable annoy me, and this particularly means websites which can only be interacted with by scraping. This has spurred me on to work on writing patches for upstream Bugzilla so we can get some kind of test version of 3.0 up for bgo. Things are going quite swimmingly well with this.

Alex was away on business, but he has returned. There was much rejoicing, for I missed him. Fin has a job interview tomorrow; think good thoughts for her.

Thank you to everyone who sent me suggestions and patches for blt; it’s been inspiring to get so much feedback. I have made a launchpad project for it. New version out soon-ish.

I have a big lazyweb/discussion post about metacity testing frameworks coming up, too, but that’s to come.

BLT – bash loves twitter


About a year ago, I wrote a simple client for twitter.com called blt. The idea was to make a twitter version of biff(1), so you’d get new tweets printed before your prompt after pressing return. Making this fast was a challenge, because twitter often took tens of seconds in those days to respond to queries, and I didn’t want to have a daemon hanging around the whole time to deliver messages.

I wrote this as a challenge to myself, and put it on Google Code because that was the best place I knew to get version control without the bother of running it myself (these days I’d probably have used launchpad), and mostly forgot about it.

The other day, however, I thought of typing its name into Google, and discovered that people actually use it, and that people were asking questions about its workings and calling it “fantastic” and “freaking awesome”, and also reviewing it and saying it’s not much good yet and things. I was surprised. So I set about putting a few hours into cleaning it up a bit.

I used some of the negative comments in the last review I linked as a guide as to what to fix:

It’s a pain to install.
Not any longer, I hope, since it’s now in CPAN.
It requires weird dependencies.
See above; also I’ve removed dependencies on libxml since (again to my surprise) not everyone seems to have it installed; I thought it’d be more widely used.

It was good to write some serious Perl again. Thanks to the folks on magnet #perl who helped me with packaging questions.

So, it’s a little closer to stable, and while there are still some bugs (I think it loses tweets sometimes; it doesn’t deal with direct messages very well; the library API is ad hoc and frankly ugly) it shouldn’t be too hard to install to test and play with if you have the cpan program installed, which you should if you have perl installed:

cpan App::BLT

If you run this as root, you’ll get /usr/local/bin/blt installed; otherwise ~/perl/bin/blt, so I hope you have ~/perl/bin in your path. “man blt” should be helpful, but otherwise come and find me or comment here and ask questions. Follow BLT’s own twitter for further updates.

Photo: BLT on toast at Chez Moi, by Smokey Combs, cc-by-nd.

Carmen weekend

Carmen came over to spend last weekend with us, and it was a wonderfully happy time. She turned up (in Beatrice the car) on Friday after dinner, just as the rain was beginning and the dark had fallen. Rio was overjoyed to see her, and excited to see her reading pile extended with some books that she was giving us to lighten the load when she moves across the country; she got to bed rather later than normal. Fin and Carmen and I went out to the shops for crisps and so on, and the thunder was huge and magnificent and the smell of the rain surrounded us; we splashed around and through the puddles and got pretty wet. When we were safely home and watching the lightning, the adults stayed up pretty late too; we didn’t get to bed until three what with one thing and another.

Saturday morning was a drenched cleansed world. We went into Philly so Carmen could get her first tattoo, at No Ka Oi; the tattoo is a compass rose, on her back, and is beautiful. It took about an hour and a half and she bore the pain with admirable fortitude. (She hasn’t posted pictures, or I’d link to them.)

UPDATE: She has posted a picture; here it is.

Rio wasn’t allowed in the shop, so she and I went to the Shoe and she bought herself a children’s book, counting out the quarters. When we came back, Fin took Rio and brought Alex and me lemon cakes while we waited. After that we went back to the Shoe and bought a badge and a book and a shirt saying “Nobody knows I fuck women”, and then went to my favourite steak shop, Jim’s Steaks on South Street, for lunch. The parking meter was showing a DHCP error (no, really) and took too much of our money away. When we got home, Carmen took some photos of me, which I might post later.

Sunday mostly involved eating grilled cheese, talking about website design and infrastructure, hugging lots, and saying goodbye. We will probably see her again before she leaves, but it was a sad farewell nonetheless.

I could tell you what I’ve been fixing in Metacity here, but at the moment I don’t feel like writing it up. Maybe later.

“I felt like I could run forever, like I could smell the wind and feel the grass under my feet, and just run forever.”

Rio and I have been watching Dragonfire. She loved it.

Last weekend we went to Philly with Amy and John. After a bit of wandering, the others went off elsewhere but Rio and I ended up at the Shoe where they were just about to start showing a film (apparently they show them every Saturday night); Rio ignored the film, but accepted a cup of popcorn, and went off to the children’s section to read. She was very taken with the idea of zines and decided to try making her own. Later we all met up again and walked to the Passage to India, which has very good food for about $10 a head.

I have been playing with Carmen’s Next Great Adventure website. It now has a much nicer layout and the maps are properly designed, and it has the basic blog structure. I still need to make it so that people can put a “Where’s Carmen?” badge on their own sites. I’m really excited about watching this adventure unfold, and I know a lot of other people are too; if you have ideas about how we can get still more people watching and cheering her on on this journey, let us know.

Oh, I almost forgot to tell you: she’s selling a lot of her stuff. If you live near DC and you like nifty second-hand books, look into it.

A friendly person has actually asked me whether I can spend a few hours talking him through fixing Metacity bugs! I am delighted. I also have a long list of focus bugs to track down, starting with the slightly recondite GNOME bug 158626 (about ddd of all programs), and I have to talk to the gdm folks (and the downstream folks, too) about merging fusa with the similar gdm applet which is a partial fork of it. I also have a blog post on this journal coming up about themes.

That rather odd meme about which commands you use most

$ history | awk '{a[$2]++ } END{for(i in a){print a[i] " " i}}'|sort -rn|head
115 ls
113 cd
93 sudo
70 r2e
67 fg
60 less
46 vi
40 screen
37 cat
26 lynx

And on the laptop:
58 cd
52 fg
39 ls
28 vi
27 ag
20 ssh
19 less
18 killall
12 man
12 gifsicle

Is this supposed to tell you something about me? :)

(To stave off the questions before they come: “gifsicle” is a wonderful tool to create animated images; “r2e” is a program to deliver RSS as email, and scores highly because I ran it a lot when I was first getting it installed; it will drop over time since it’s now run from a cronjob; “ag” is a time and job tracking system of my own and nobody else has it. Yes, of course it’s pronounced “silver”.)

It amuses me that apparently a large number of GNOME hackers use vi. I’m also interested that I’m the first person to use “fg” a lot. Do you others use “%” to resume, or do you never background processes?

And it looks like the sunshine’s here to stay

Alex has been away in San Francisco for a week or so, so Sharon was driving me into work. This meant waking up at six. I woke up on Friday feeling icky and nauseated; ordinarily I stress over the decision over whether to call in sick (ask me sometime about the scalding incident; I hope I’ve got a bit smarter since then) but getting into work at seven is pretty crappy on any day and doing it when you feel you might throw up is worse, and I have sick time left, so I called in. I spent most of the day curled up reading Mists of Avalon and feeling groggy, or sleeping. Later I felt better. I think I’ve just been stressing myself too much.

(Alex is back now, by the way, as of Saturday. Hooray.)

Today SaraMae put up her antique stall at Shupp’s Grove. (I warn you: if you click that, it plays crappy music.) We all went with her and put up the tent over the stall, and then stopped at a place which makes tremendously bad-for-you food, like chips and milkshake, but does it really well, and there’s nowhere to eat inside the place, so you have to sit outside beside the weir and listen to the music of the river.

As I paid my bill at the pharmacy today, I said to the person with me, “Of course, this is a good reason to move to Wales.” The pharmacist overheard and said, “Why, are drugs cheaper over there?”

Nargery: I have been fixing a few bugs outside Metacity for a change. I spent a lot of Saturday learning the intricacies of Ubuntu’s build system, because I tried to record a story on Friday night and I couldn’t get gnome-alsamixer working; a bit of searching around showed me that it was GNOME bug 429012, which was easily fixed, but someone pointed out to me that Hardy’s shipping soon and an upstream patch probably wouldn’t make it in unless I moved it downstream myself– so, that became Launchpad bug 106903. Caroline Ford was helpful in getting Launchpad to do what was needed; James Westby showed infinite patience in teaching me how to prepare a debdiff. Thanks a ton to you both. I then used my newfound knowledge to make an attempt to fix Launchpad bug 199402 (which hadn’t reached GNOME Bugzilla yet). And then there was GNOME bug 335763, which was something in zenity which needed fixing in order for GNOME bug 521914 in Metacity to be closed (of which more below).

Riordon thinks the Linux distro OS-tans are awesome, by the way. I told her about each of them and why it looked like it looked, and she came up with some more ideas about them. It makes me want to learn to draw, except I’m crazy busy as it is.

Here are two posts in the Metacity blog you might want to read:

Links… well, I’ll let them accumulate for a while.

Photo by Kris & Fred, cc-by-nc-nd. No, that isn’t what it looks like here.

Catching up

It’s been a while since I posted. I used to post every day, but that was when I was doing exciting stuff at work that I could talk about. I’ve seen some things I’d never seen before: Fin bought a fresh coconut from the shop and Rio and I had no idea what it was; she threw it on the pavement and it burst, bleeding milk into the gutters. We chewed on the coconut meat. And we went to church on Palm Sunday at St Gabriel’s and I saw fresh palm leaves for the first time in my life.

(Fin later went back to the shop and a Redner’s employee called Scott was making some classist and indeed racist remarks, so Fin is complaining to their management.)

I have been reducing the bug queue in Metacity. Metacity is six years old, and a large bug queue has built up. There were over forty bugs without a response; now there are two, and they are both dual screen bugs. (It has been noted that Metacity’s support of dual screens is not as good as it might be; this is not unconnected with my not having two screens to test it with. I will try to save up and get another screen at some point.)

My plans for this iteration include the bug queue being brought down to managable size, and adding a proper, automatable test suite. If I reply to your bug, you might not hear back from me for a while, because there’s a ton of others.

Carmen, a very dear friend of mine, is travelling across the United States from Washington DC to San Francisco by car. If you live anywhere vaguely between these two points and are okay with lending a couch and a shower for a night, or if you’ve done a move of this size before now and have wisdom to share, please let her know about it. You people in San Francisco are a lucky bunch of people to get her living among you, and I am going to miss her a whole lot.

Today’s links: