Hacker's Diary
A rough account of what I did with Emacs recently.
- September 30
- Still poking at RVP, now with added mod_perl! Whee! (by
which I mean, "ow my brane")
- September 29
- Still trying to get the hang of working as opposed to slacking
around in front of a computer all day. The upshot being that
either I'm kinda zonked when I get home and not inclined to hack
at much, or I'm hacking on something for the office that I can't
really be wittering about.
- September 28
- Mild network tunnelling problem diagnosed as "you don't
really need the entire 10.x.x.x space for a half-dozen
computers... d'oh.
- September 27
- More RVP hacking. I can't as yet hand out the modded source for
reasons to do with waving of hands, these are not the droids,
yadda yadda.
- September 26
- Hacked at the more-or-less abandoned RVP plugin for Gaim over
the weekend. Tried it out today. It sort of works! Now I need to
clean it up and fix the bits I #ifdef'd out.
- September 25
- Sneaky Vodafone people changed the name of the login form on
their site, which briefly broke my Vodafone-to-Flickr toy. I could
probably code this more defensively, but meh. Don't feel like it
just now.
So, Hero. Are there any
chinese-legend-made-movies that aren't tragedies? Also, no matter
how much I've come to expect it, I still dislike the wirework
dancing-on-the-treetops scenes which are apparently a requirement
for the genre. I was much happier with the pacing in this than
with previous simliar movies, mind you. Plus there were some
beautiful things done with colour and cinematography, especially
for the mountain lake fight. The massed ranks of archers made me
think of Lord of the Rings, in particular since the accompaning
chants and music sounded pretty much the same - heavy bass and
lots of shouting. As noted in IMDb, the movie's narrative is
comparable to Rashomon in that several
sequences are retold from different perspectives as the story
unfolds; initially, I was wondering how the whole thing was going
to last longer than, say, 45 minutes, until the first
retelling. I'd definitely rate this above House of Flying Daggers, and
quite probably above Crouching Tiger, Hidden Dragon
also.
Also, in case anyone still cares, Alonso clinched the Formula 1
driver's championship today by finishing
third. "Yay". Not to detract from his win, but what a
crappy season it's been.
- September 24
- There is something distinctly weird about the RSS aggregating
toy. I want to put in some code that deletes locally cached items
after they've rolled off the relevant feed, but my attempts to do
so thus far have resulted in me getting multiple copies of the
same story which, deductively (is that a word?), must have
appeared in a feed, vanished, and then reappeard. But that doesn't
make sense to me, so I've just switched off the cleaner in favour
of accumulating quantities of other peoples' writing and purging
it every so often.
Well, that was annoying; up2date crashed my desktop
session and left SELinux in some sort of messed-up state that I
can't seem to recover from that's preventing me from logging in as
a non-root user. Quick fix: disable SELinux. But really
now.
- September 23
- And a few more beers with the guys. This morning: "You said
on your blog that you hadn't seen Hero. Here it is."
Cool!
- September 22
- Ok, ok, I'm not getting much non-work geeking done this
week. I'm learning tons of stuff, but I can't tell you about any
of it.
Actually, I've spent pretty much all my non-work time this week
watching the Scrubs Season 2 DVD, which arrived in the post while
I was driving around the country last week. The extras on Season 2
are far, far better, but I'm damned sure they've got a whole stack
of outtakes that they're not sharing. Curse them! *shakes
fist* If you're at all a fan of the show, though, I strongly
recommend you buy the boxed sets since they're the absolute
business.
Hmm, also somewhere in the copious_free_time I've been tweaking a
script that I use to frob my DVDRentals wishlist, but since I've
never actually pushed out the code that I'm tweaking into it
(since it is part of the Giant Movie Thing I Will Probably Never
Do Anything Useful With) there's not exactly anything to show
there. I will admit it's embarrassing to look at the hoops I
jumped through to make things like cookied logins work when all I
really needed to do was to learn to use
WWW::Mechanize. Web browser in a Perl Module,
yo.
- September 21
- Out for a few drinks with new coworkers.
- September 20
- Phew. Long day of learning, mainly watching someone else solve
problems so I could learn how it's done.
- September 19
- First day at work. Brane still intact, yay!
- September 18
- I can say this about The Aviator: it's long. I'm not
sure what else I can say about it. I was by turns unimpressed with
DiCaprio's limited range of facial expressions (appearing largely
to consist of variations on Joey's "dividing two numbers in
your head" look), and impressed with how, late in the movie,
he looked quite like pictures I've seen of Howard Hughes. The
IMDB-trivia tells me that various sections of the movie were
postprocessed to look like the various film technologies of the
decades spanned therein; this was utterly lost on me, and, I
suspect, quite possibly a lot of people. I'm not entirely clear on
what the point of that sort of technical fiddling is supposed to
be if it's not the focus of the movie, or at least a major point
therein. I thought Hughes' OCD was initially overfocussed on,
too - the way it was highlighted was all but having a marching band
across the bottom of the screen playing "OCD is here
again", although maybe that's just my lack of familiarity
with the disorder. I did watch the whole thing through, so I guess
that's to its credit, but I did pause it a few times to check
email, make a sandwich, etc. I'm sure if I played golf I'd have
taken a break to do that. Priority: wash your dog first, as the
man said.
- September 17
- Did a little more hacking on the Vodafone-to-Flickr toy; it now
automatically detects Vodafone's stupid duplicate image bug, and
inserts the date/time as an exif tag in the image so that Flickr
can use it. It'll overwrite the original exif tag, mind, which
might be The Wrong Thing if I get a better
phonecam...
- September 16
- Fixing up the UTF8 handling in the RSS toy. By which I mean
forcing everything into ISO-8859-1. I should really work it the
other way, I guess. Is it valid to put out no charset in your
content-type header and then specify UTF8 encoding in-line? I
guess it must be.
Went to see Dylan Moran at the Olympia with John and his wife. The
support act, Karl Spain, made me laugh harder, but Moran did keep
me at least giggling for the hour he was on. There was some sort
of mixup with tickets among the people on the row in front of us,
made more amusing by the fact that there were two empty seats in
our row that noone seemed interested in. Amusingly, one of the
people involved in the mixup (who got quite angry about it, too)
was a guy I used work with.
- September 8-15
- My brother's been visiting for the last week, so the computer's
mostly just been sitting around doing whatever idle computers
do.
The RSS Toy now defaults to just listing headlines, with an expand
button to reveal the full article. This is obviously a no-brainer
feature that I should've implemented ages ago.
- September 7
- Hosed a bunch of stuff off the webserver - it's a server, it
doesn't need MP3-playing ability, or even a GUI. Pfft. I should
probably put in the spare 256MB DIMM I have lying around,
too.
- September 6
- Found a rather silly bug in the MPLE code where I was doing
about half the bit manipulation required to flip the media serial
number into usable shape. I could probably do a better job of the
fix, but what I've put in works.
I wonder whose brilliant idea it was to break the version of
tar that ships with FC4? Used be you could do tar cfz
foo.tar.gz foo --exclude bar but now that attempts to treat
--exclude and bar as filenames, which is plainly wrong
and, as I say, used work just fine. I imagine this can
only be some nonsensical POSIX-compilance rubbish, just like the
ps command switch nonsense.
Made a go at cleaning up some of BBDB's configure stuff; autoconf
is a serious pain in the neck to deal with, but it should
ultimately clean up a lot of the mess in the current
makefile.
- September 5
- More editing fun: I am fiddling with moonedit as a means of
maintaining a todo.txt file from two different machines,
potentially not running the same OS. Right now I'm trying to get
my existing todo.txt into a file I've already opened, and I've run
into two problems: firstly, moonedit doesn't cater for having
multiple files open simultaneously. If you open a new file, it
disconnects the current session to do so. And there doesn't appear
to be an immediately obvious "insert file contents"
option, either. Secondly, I've run into the same "who's got
my selection" problem as I'd previously mentioned elsewhere:
even explicitly setting the CLIPBOARD selection from Emacs fails
to produce anything when I select Paste in moonedit. Couple all
this with the fact that, as best I can tell, moonedit is
closed-source - meaning I can't fix these bugs myself - I think it
will soon be taking a long walk off a short pier.
Further experimentation:
- mousing is broken in Windows, too.
- You can "import" a file by opening a new window,
(obviously this also answers my multiple files issue), copying
the entire text, and pasting it to the window you wanted to
import to. This doesn't work on Linux because there's no New
Window option.
- only the server gets an automatic Ctrl-S option - everyone
else gets prompted for a filename to save as.
- if I highlight text, you don't get to see it. This is
actually a bigger issue than it appears; if I'm trying to
draw your attention to something, for example, I can't do that
by highlighting the text.
- there's no file-browse window for the linux version - you
have to type in file paths manually.
Spent some time cleaning out the pile of half-patched,
half-package software I've been meaning to do something with for
the last, uh. While, I guess. I've packed up all the spca5xx tools
including the driver, plus fixed pilot-link's Perl bindings as
provided in the Fedora RPM (they're not build by default). Go me!
Now I really should get back to hacking BBDB's RMAIL
support.
So, ah, totem, the latest-and-greatest Fedora-provided
movie player. What the hell can it actually play? Anything I've
given it so far, it's complained that I don't have any means of
dealing with it, e.g. Message: don't know how to handle
video/mpeg. What good is a movie player that can't handle
mpeg out of the box?
Bumper movie night! First up, House of Flying Daggers: if you
liked Crouching Tiger, Hidden Dragon
you'll probably like this. Personally, I was enjoying it until the
whole thing sort of ground to a halt about 20 minutes from the
end. The final fight was pretty dramatic, mind you, and I will be
renting out Hero at some point since Flying
Daggers is supposed to be a companion movie of sorts to it.
Next, Monty Python's classic And Now For Something
Completely Different which I don't think I'd ever previously
seen in its entirety - I'd seen a lot of the individual sketches,
but not this particular assembley of them. Wonderful stuff,
including the classic "my
hovercraft is full of eels".
Finally, 9 Songs. Um. I really don't know what
to make of this. I think there's about five to ten minutes' worth
of plot, and the rest is either the main characters having sex,
the main characters at a gig, or the male lead talking about
Antartica. Actually, that's the entire movie; the male lead's
voiceover, largely done over shots of Antartica, constitutes the
storyline, such as it is. Really, the only noteworthy feature
about this movie is the much-talked-about fact that the leads did
in fact have omigosh actual sex on film (well, DV cam) and if
that's the only thing of note in the movie then you might as well
not bother watching it. I'm rather disappointed; much was made
about how the movie was supposed to portray an evolving
relationship, but really, it didn't do that at all. Eternal
Sunshine of the Spotless Mind did a far better job of that,
to name but one movie I've seen recently.
- September 4
- Hmm, I may have been overly hasty in my dismissal of the
available Perl modules for dealing with iCal files; just that the
ones I was looking at were particularly bad. Here's the current
state of affairs, as best I can
tell:
- Net::ICal
Huge scope. Lots of little classes to subdivide pretty much
everything in the various specs as part of the Reefknot Perl
calendaring toolkit. Unfortunately, none of this has been
touched since about 2001.
- Tie::iCal
This is fairly raw; it essentially does a straight
iCal-to-hash conversion. Might be exactly what I'm looking
for, and it's dated January 2005.
- Data::ICal
The readme says this is for writing iCal files, which, well,
I'd rather have something that does both reading and
writing.
- iCal::Parser
Appears to be read-only - same issue as with the above
module.
So I think maybe I'll try the Tie::iCal one and see how well it
works out. About the only downside I can see is that it requires
me to pass the data through a file rather than dealing directly
with the DAV server, but hey.
Uh. I gave it a calendar file with 224 entries, and it just sat
there. For a long, long time. I gave up waiting for it and went
out running, and it was done when I came back. I think I'll fire
it off again, and time it this time, but realistically I think I'm
looking at using libical at this point.
Attempting to hack together a quick UI in Glade, I find two
problems: firstly, there are two stock Forward buttons and Glade-2
doesn't appear to be able to differentiate then, and secondly,
icon-only buttons don't seem to shrink down to the size of the
icon. So that lot's going in the bin.
Hmm. I was annoyed that the static binary for the last.fm player
was looking for a library I didn't have, and then further annoyed
when MoonEdit appeared to be looking for the same thing, then lo
and behold I discovered it is available for my platform,
just not installed by default. So I build a specfile for the
last.fm player, packed it up and installed it. Yay!
- September 3
- Turned the script I'd been using to pull pics off Vodafone's
site into a module; the intention is to have it sit somewhere
polling the Vodafone site on, say, a half-hourly basis and dumping
RSS or maybe flinging anything it finds up to Flickr.
I am poking around, therefore, at the Flickr API. And while it's
all nice and groovy, there does not appear to be a simple
documented way of saying, "here's my username and
password, go upload a file". There's this damned key-exchange
crap which requires me to log into the site using a browser in
order to authenticate yadda yadda yadda. I guess I can do it once
manually and then wing it from there.
Okay, that seems to work - a one-off auth, and save the token
resulting from it. Further discoveries: if you don't provide an
image filename on uploading, you get an "Invalid
Signature" error.
Anyway. After all that, I now have a scraper that will pull
pictures out of my Vodafone picture album and post them to Flickr,
including any information available (date, time,
'subject'). Gnee!
- September 2
- Bug in DART timetable doohickey due to site weirdness on
Iarnród Éireann's part. Fixed. Sorry if you were
trying to use this and couldn't. Ironically, in fixing it, I was
late catching the DART to town...
Fiddling with video stuff again. Hmm, wasn't I messing around with
ffmpeg builds a few years back?
Glued the geocoding hack from yesterday onto Google Maps. Cackled
a lot. I'm easily amused.
After much banging about with Mozilla Calendar (which is a piece
of junk), Palm Desktop, Perl, ColdSync, and an iCal-format
calendar, I have managed to scrape the six or seven Palm Datebook
databases into one consolidated database, possibly still with some
duplicates. The fun and games included:- Discovering that
the Palm Desktop vCal and the Palm OS 4.0 vCal are not
identical; in fact, they differ on one crucial tag which, if you
get it wrong, leaves you with a bunch of untitled entries in your
desktop calendar;
- Discovering Internets.com, whose crappy
Intersync thing not only failed to work for me but somehow
crippled my Palm Desktop to the extent that I've now uninstalled
said Desktop to see if reinstalling will fix it;
- Mozilla
Calendar breaking on such difficult tasks as "import 5 new
items", and falling over repeatedly until I figured out that
I needed to delete some of its cached files, manually disable the
calendar I was working on, and wait a lot every time I need to
actually do something. What a piece of crap. It would be nice if
they released a new version, because I'm really not willing to try
one of the nightly snapshots given the "quality" of the
current release.
- The ColdSync perl stuff isn't bad, but
could do with more abstraction.
- I will at some point
probably need to write Perl glue for the ical library, or at least
the bits that I want to use, because the Perl ical modules are
apparently stagnating and completely sucky.
I keep
thinking it would help if I read the vCal specs (for PalmOS) or
the iCal specs (for Mozilla and, I guess, everyone else) but then
I remember that these things tend to pick and choose their
interpretation of the specs anyway and it's far easier to just
bang bits together until something catches fire. Anyway, at this
point I have a convertor that will eat a DateBook PDB and spit out
either Palm, Palm Desktop, or Mozilla-friendly .vcs
files, and another that will download my calendar and attempt to
merge it into the active DateBook PDB. Neither is complete,
particularly in the area of repeat rules, but tomorrow I'll try
and stick the two ends together and hopefully come up with a
Coldsync conduit that will sync against the iCal file. Of course,
then I need to find an iCal application that doesn't fall over
every time you try to use it. And no, I'm not going to even think
about touching the KDE or Gnome PIMs or
Evolution. Maybe I'll dig out the vcal code I wrote for emacs a
few years back and bolt everything onto emacs' diary.
- September 1
- Happy Birthday, Donal!
Stupid web tricks: using someone's free mapping site as a
geocoding server. Bwahaha. Sorry.
previous month | current month | next month
Waider | |
back to school, back to work |