This has been my longest writing gap since when I moved to Namibia. There's no real excuse for that in a country where wherever I am there's a dozen wireless networks permeating my cells. En fin, "my bad dude".
There was snow in Portland when I last wrote. I taught classes for a week there, a most exhausting activity. I prefer programming. In the end the folks were satisfied, I think.
Portland's a nice town. The excellent thing about it was, beside the city, getting to hang out with Dan of the pointy moustache and Bree, an old friend from when I was studying in Salamanca. Excellent, excellent people. Also serendipitously a friend from Peace Corps was in town, so we got to hang out as well. Where hang out eventually meant me going to a strip club (not the moebius) for the first time. Let's call it "interesting" and leave it at that.
After being back for a week, I headed off to visit my sister in Belfast for some St. Paddy's day fun. There I was informed of the existence of the ulster fry, which possesses an intensity. I remain perplexed about the nature of "brown sauce", however.
Somewhere in all of that, I found a new flat and moved into it. It's in Sant Andreu, a bit out of the center, an attic duplex with two terraces. Quite pleasant. I am woken by sun on my face in the morning.
In the flat move I developed a communications backlog, which I'm still working on "flushing out" as it were.
Also in the mix, there have been a number of terrace party-type events. I started to link but got a bit bored -- lots of photos are there in the photo thingie.
Which brings me to the second point I had, which was that f-spot really rocks my world. I love using it. I can't say that about any other program on my computer.
I've wanted to figure out a decent way of putting my photos online. I realized that what I wanted was to use f-spot to "manage" my photos, and then sync it up with the web so people can see. Basically, the approach taken by jimmac when he made original. It took a while to figure out the path of least resistance, but it all became clear when I saw the GUADEC tag cloud. THAT'S what I wanted. A few nights of thinking and one day of coding later, I present my underfeatured bastard stepchild of original (source here). Hopefully I can figure out a way to push this code to someone else. Maybe I can trick jimmac into taking it for his own :)
I have a few more hacks to write about, but that's enough for tonight.
come on feet, cruise for me
It has been quite the week, this ninth of 2006. Excuse the boringly sober prose below, I attribute it to the concrete jungle outside the window.
Sunday. A Belgian arrival on an overnight bus from snowboarding in Tignes (pics to come soon). Pieces of a FOSDEM Sunday, went out a microbit in Gent with some of Thomas' friends . Good folks, very alive.
Monday. Back on the train, plane from Brussels to Barcelona. Took a Catalan test, and out to aikido. It seemed my instructor there had found me a flat out in Sant Andreu, so arranged to go and see it.
Wednesday. Worked late, preparing for next week. Afterwards with Wim's help I moved out, and so closed a chapter on 4% of my life. Then out to dinner, skipped the bar to go back to Christian's, where I'm staying now.
Thursday. Out early to see the flat -- didn't look so good, but I managed to find an agency staffed by non-psychopaths which is a rarity. Into work and working late, picked up Catalan test results at midday -- 96%, not bad at all. Asked out my catalan teacher. Proposition declined!
Friday. Up before 5 to catch a plane out of Barcelona through Frankfurt, too much snow -- the flight from BCN couldn't land, so I missed my direct flight to Portland. They rebooked me through Denver, but after getting on the plane we sat on the runway for 7 hours.
Saturday. Woke up in a Denver hotel at 5 local time. My internal clock is a bit off. The waitress at breakfast is a drug pusher. My hands jitter from the cofffee.
This week leaves me like a riverbed in a rainstorm, events coursing through the perceptual venturi that is me. It's not going to stop soon either. On Monday I start a week facilitating 40 hours of training classes. After a redeye back to Barcelona next Monday I have tickets to Belfast to investigate St. Paddy's day with my sister that lives there. Moonlight sleeping on a midnight lake eh.
 f-spot has temporarily become my favorite application. It rocks to the power of rock.
 At first, instead of "friends" my fingers typed "threads". Something ain't right.
Almost a month no postage. Well! This time I write only briefly to note that I'll be out on holiday, snowboarding for a week in Tignes, in the French Alps. Life is indeed difficult on the old continent.
Tried to see Brokeback Mountain, but it was sold out when we got there -- Broken Flowers instead. Two/four words: "Resonating WTF". Like l'etranger in some ways, without the killing and such.
My buddy Leif has a wonderful copper bowl he got in Nepal. When you rub your finger around it, it fills the space outside with a ringing from its inside. Somehow the movie reminds me of that bowl.
saddest songs ever
Songs that make the jaw gape and the cranium boggle: Little Sparrow, by the Country Gentlemen (is it by them?). Actually I was going to make a list as an excuse to mention that tune, but there is nothing that can hold its own against the Duffey/Waller harmonies in Little Sparrow, except perhaps anything else by the Country Gentlemen.
OK it's not sad but I've heard another one that can stand up to the harmonies just now, Melt the Teakettle by Darol Anger. Hot hot hot hot fiddle. Yow. Yow!
The world turns 26 today! Happy solipsistic birthday everyone!
I'm rereading a couple of things right now. One is the moosewood cookbook. I was given it when I was a freshman or so in college -- eight years later the same text says different things. The book is layered within itself, so that looking at the same thing you get what you are looking for, depending on how much you understand of the subject. Really nicely done.
In a similar vein I'm passing through a phase of astonishment at one of my Aikido instructors. She also teaches in technicolor, which is nice as Aikido classes are normally mixed-level. I can only understand from her what I am prepared to understand, which is a small subset of what she does.
The other re-read is neuromancer by william gibson, for the imagery of what it's like to make and disassemble constructions in virtual space. I see shapes as he does, solids and meshes and ice, layers and colors. Maybe you have to be on drugs to explain the shapes. They do exist without drugs though.
Death by / life in the bullet point
I continue to really dig Lucinda Williams. Persons interested in music should investigate.
These days it is possible to drink an evening beer outside. Most excellent.
Thanks to those that wrote mails regarding the slime writeup. Juho Snellman notes that Common Lisp does not actually specify a profiling interface, although most implementations provide an instrumenting profiler. It's mainly SBCL that provides a statistical provider. Stephen Thorne writes that vim also has decent completion support via C-n, and there is another key that can complete entire lines (:help completion allegedly has the details).
John Leuner also write something quite interesting:
The editor is also aware of live objects represented in the #< description > format. You can do something like:(in-package :cl-user)
which returns:#<PACKAGE "COMMON-LISP-USER">
Then you can cut and paste these references (using normal emacs kill and yank) and use them at the REPL as arguments to other methods, eg:(package-name #<PACKAGE "COMMON-LISP-USER">)
will give you the name of the package referenced by that "link".
 Any association of the word allegedly and the idea that using an editor other than emacs is a crime is a purely cromulate coincidence.
It seems I haven't written for a while. I only have the desire to write when I'm walking the streets though. Sitting down in front of a machine turns me into a consumer. Consume p.g.o. Consume random news media. Consume all of my mailing lists. Refresh, refresh. I need therapy or something.
Back to the real world, we definitely cooked a fine thanksgiving dinner a couple of weeks ago. Week and a half, I suppose, and I when I say we I mean the australians. Thanks Mike, Jaime, and Jan. Although if it weren't for Mike I wouldn't have been so hung over Saturday morning and wouldn't have sounded so pathetic on the phone calling for help "Jaime Jan please come bird it still has feathers". Jaime has a good play-by-play of the event, replete with pictures.
Good though. Thanksgiving makes me feel good. Also the gumbo made from the turkey carcass makes me feel good, both while cooking and consuming. Consume consume. (There were 5 pies to consume at this event -- 2 apple-walnut from the lovely tiffany, one pumpkin pie by the lovely me, one apple by the lovely Mike, and one pecan bastard-child pie from all hands in the kitchen. Tasty pies, each and every one.
After the Thanksgiving weekend there was a krazy week at work, putting final polishes on, and putting final dabs of putty in the holes of, GStreamer 0.10. I link to Christian Schaller's hyped-up description of the release, but it's true -- I've been more proud of software before, but not by much. GStreamer 0.10 is quite an accomplishment.
After an odd weekend (intended to be low-key, went out until 7 on Friday night), it was back to work. <![CDATA<
an odd thing to think, as if work defines existence?
work is fun and all (see footnote 1) but I think
25 hours a week would allow me much more poss-
ibilities for personal growth
Did somebody say work? Because I was just thinking that! Lately I've been hacking the clock synchronization stuff into flumotion. It is looking most excellent. It's tough to do a job properly, such that no one will have to come and clean up after you later, but it's also satisfying. I am pleased with work right now.
That's the week kids, a bit of hacking, a bit of aikido, a bit of random vacation days on a Thursday. A bit of cold outside that penetrates the bones, given enough time. I give to almost all beggars in this season. They do not have a kickass chili waiting for them at home as I did today.
Footnote 1: Julien (fluendo chief and also nice fellow) put in a new policy of 20% time, for example like they have at Google, and about which NITI folks often speak. Most excellent in my opinion; tomorrow is the first one. Rock.
Footnote 2: Google links thrive off of descriptive link text. I hope NITI folks appreciate the referrals for "often" and "speak".
Footnote 3: This writing product finishes here. Pending topics: an upcoming trip home, musical discoveries of 2005.
harvest time on maggie's farm
Finally got a Flumotion release out last week. Hounding us until the end was a terrible bug manifesting itself as random connection loss between the different processes in the server, and 100% CPU usage that couldn't be traced to anything. None of the profilers I tried (or wrote!) gave any clue as to what was up.
The problems were solved when we switched away from forking out job processes to doing fork+exec, which is a more supported model in Twisted. It could be that we weren't correctly cleaning out all of the file descriptors in the child's main loops implementing the reactor in Twisted, causing processes to wake up all the time. It is difficult to analyze exactly what is the state that needs cleaning up in a program like that, instead of analyzing exactly what state to keep for the new process. Also, exarkun in #twisted had an interesting observation, which was that with python's refcounting gc, just about every time you access a variable you modify its refcount, which requires that the child have its own copy of that memory page. Really takes away the copy-on-write advantages of forking processes.
The moral of the story would be that usually you don't want to fork in Python. Changing this to execute separate processes took about 4 hours one afternoon, and took away just about all of the bugs we had been seeing. Thank Jesus!
Also those four hours were krazy 4G1L3. Only thing was it was on my machine, and I have focus-follows-mouse, a different keyboard from Thomas, swapped caps and control, and I use emacs and he uses vi. But somehow we limped along. Agile limping.
very crucially serious notes
Also this is the crucial phrase of this sentence. I think this convention is so great I'm going find a professional typographer to ask what they think about it. It's about time that some of the popular exponents of this writing style get their well-deserved recognition!
Other things I should write about at some point: more notes on using baz and arch-pqm, my very pleasant impressions of SLIME and SBCL, a recent Aikido seminar with Miyamoto sensei (coming all the way from Hombu dojo), an upcoming trip to the states.
We got some new books in at work, among them Peter Norvig's classic Paradigms of Artificial Intelligence Programming (PAIP). It sounds strange, ordering a decade-old book about AI programming in Lisp for a company that works with media from Python and C, but the book has a staying power that outlasts the passage of time.
PAIP is not interesting from an AI perspective. Most all of methods and strategies are outdated at this point. Its strength is in teaching how to optimize programming in a high-level language. See the PAIP retrospective page for how -- skip past the Lisp melancholy at the top, just go directly to "What lessons are in PAIP?" at the bottom.
Lesson 26 on that page is a delightful Alan Perlis quote: "A programming language that doesn't change the way you think about programming is not worth knowing", which was originally published as part of Epigrams of Programming.
I spent the weekend in Paris.
(I'm now basking in the glow of that sentence. Excuse me.)
Went to see the city, and to visit a girl. The former was pretty interesting, the latter left a bit to be desired. Así va la cosa.
My patch made it into 2.6.14-rc5. Neat.
In the shipment that brought us PAIP also came Corbet et al's Linux Device Drivers, third edition. From a brief skim, I find it's a nice complement to Love's Linux Kernel Development -- LDD has more specifics on writing drivers, but LKD is good for an overview of the kernel as a whole.
Unexpected bbq last night. Up drinking and saying stupid things until 4 in the morning. The weather's still nice enough to sit out on the terrace in the evening -- in terms of temperature barcelona wins handily over the french cold wet capital.
Quite pleased to see that Billy Biggs is writing. Yay.
The eclipse was beautiful. Seeing the moon cover the sun through a piece of dark glass was quite nice, but for me the best thing was how in every place where the light poked through a shadow it cast an image of the crescent sun, pinhole-camera style. So the shadows of the leaves cast a blanket of sickles across the street. Shadows of fingers made it look like people had moons in their hands. Those with frizzy hair had celestial crowns.
I am a stupid person for not taking pictures!
Is full of guilt. If you are one of the unlucky on that list, my platitudes to you. Funny how knowing the nature of the issue does not help in solving the problem.
Last weekend was Barcelona's annual festival commemorating some kind of virgin or something. What does it really mean? Castells, human towers five people tall; cabezudos, the big-head, you-know-you've-been-too-long-if-you-think-they're-normal clown-type things; and of course, a form of explosive enjoyment. This time it was in the form of the correfoc. Think fireworks on goat heads and pitchforks wielded by people dressed up like demons. People from the city meeting the two qualifications of being a little nuts in addition to posessing cotton garments to cover the whole upper body joined the diablos, joining together with anyone with a fresh firework, frolicking in the sparks. I am a moron for not taking photos. Stupid!
Other mercè activities: concerts until 5 in the morning, a day off work (woot!), wine tasting along the port, open museums. Pleasant.
I'm not sure if I hate the Streets for being artistically vapid or whether some of their songs are catchy.
Saw the Raveonettes on Friday, was OK but not as good as the album I have. I wanted more noise! And bounciness!
From the recapturing-the-past department, I got a hold of a copy of The Shins' Oh Inverted World the other day. Hello 2001!