Hacker's Diary
A rough account of I did with Emacs recently.
- November 30
- Currently enjoying the hospitality of a good friend while
waiting for my car to be serviced. Geeking at a minimum; I've been
tipping away at a Gtk/Perl front-end for Yum, because I hate that
every time I want to see what a particular package is, Yum wants
to assemble a full package list and possibly retrieve new
headers. Haven't you folks heard of JIT? As part of this silly
endeavour, I modifed the RPM2 module to be able to unpack an RPM
header from a memory blob. This is because Yum's header files are
basically raw, no-magic RPM headers written to disk in gzip
format.
Finished Flyboy Action Figure Comes With Gasmask. Brilliant. In
particular, the dialogue and character sketching. It's basically a
story about relationships - romantic and otherwise - with a little
SciFi bolted on to it.
- November 29
- Drove to Ballina.
Two movies: King
Arthur and Eternal
Sunshine of the Spotless Mind. The former wasn't quite as bad
as I'd expected, although I had a hard time recognising any of the
cast beyond Ms. Knightley - I'll have to go IMDB trawling at some point to see
where I may have seen any of the other
vaguely-familiar-but-nameless actors. It was a bit tiresome that
some of the sequences appeared to have been lifted wholesale from
Braveheart,
with little more than minor rewriting to fit the
changed-but-similar setting. The latter movie was great. Michel
Gondry is a genius at assembling looped music videos, so I was
more-or-less unsurprised when this movie did something
similar. The Carrey/Winslet relationship got more and more
believable as the story moved on (as we progessed backward through
the relationship, if you will) and I'm always a complete sucker
for Stupid Couple Tricks, like the whole night picnic on the
frozen Charles. Funny thing in the DVD extras; Carrey apparently
did a whole bunch of stuff where he's talking to the
"doctor" about his past relationships - partly to get in
the swing of things, partly for script ideas. At some later point
when he and Winslet are rehearsing, they're listening to one of
the tapes and Carrey-on-tape says something like "I hate all
women", upon which Carrey-in-real-life pretty much freaks
out, apologises profusely to Winslet, and then flings the tape
player across the room. Method acting, eh?
- November 28
- Evelyn is
unashamedly sentimental, while at the same time being more-or-less
faithful to the true story it's based on - a custody battle by a
single father to regain his children from State care, which led to
a Supreme Court challenge of the relevant law on the grounds of it
being unconstitutional. Michael Asimov wrote a good account of
the legal side of things; I'm sure some digging around Irish
legal websites might actually turn up the text of the cases in
question. What I found amusing was the role-reversal of Pierce
Brosnan playing a down-and-out Dub, and not quite nailing the
accent all the time, while Stephen Rea, more normally (in my mind)
the sort you'd put in Brosnan's place, nailed the "West
Brit" accent perfectly. The movie also features Frank Kelly,
aka Father Jack (you might spot a few familiar gurning smiles),
and an astoundingly convincing Irish Lass performance from
Julianna Margulies (that'd be Nurse Hathaway from E.R.) If you can
cope with the schmaltz factor - which is high - this is a good
movie.
With some abuse, I managed to get Mono up
and running. The abuse included locating a version of
libgal that it was happy with.
After some further HTML abuse, the banking module can now retrieve
the account details pages into a more-or-less parsable array of
lines.
And now I have a Mono "web browser", which I think is
pretty much the "Hello World" of this particular
programming set.
- November 27
- Spent far too long poking at j2me stuff. It's a real pain in the
ass to deal with, particularly since I have pretty much zero specs
for the target platform (i.e. my phone) and it's all locked up
solid so you can't go poking about in the innards. Oh, and my
phone doesn't appear to implement any of the features I'd find
interesting to play with.
- November 26
- Some more tooling with the big movie thing.
- November 25
- Wow. PCX files are ghastly. This is a file
format?
- November 24
- Prodded the banking stuff a little more. I'm working on having
it retrieve the current account details at the moment.
Figured out, eventually, what the hell the Pike build was up to -
it was checking to see if it could re-exec itself under bash,
which it then proceeded to do. This is stupid. Really stupid. In
particular, because it explicitly disregards my choice of shell,
but also for other reasons such as it loads the bashrc for said
shell which gives it rm -i (and of course it doesn't
explicitly call /bin/rm to get around this) and because
it breaks any inbound pipes, which stops yes|configure
from working. IDIOTS.
I've lost a day somewhere, too. I hate when that happens.
- November 23
- Work was sort of insanely busy today, and then the Intarweb broke.
I discovered a page full of stuff for Sagem phones which indicated
that it supports, in addition to OBEX and plain old AT, a
propietary STX-LEN-CMD-CRC-ETX protocol. Dear jebus. I can write
these damned things in my sleep at this point.
- November 22
- Tweaked the banking stuff to pull the "minimum payment
due" data off the MBNA site, since that's generally about the
only other part of it that I'm interested in (the main point of
interest being "how doomed am I this
month?")
FWIW, the reason I'm trying to get Pike on board is that this nifty
DVD-making script is written in Pike instead of something more
useful (to me) like, say, Perl. I could go through it and
translate it, I guess, but it's a few hundred lines long and I
don't actually know Pike.
- November 21
- Lazy Sunday. Very lazy Sunday. Largely spent untangling the
ATrpms repository from my Fedora box, and trying to get the
aforementioned Pike working.
- November 20
- Pike takes an awfully long time to build. Like, really, really,
REALLY long.
- November 19
- Lost In
Translation is a truly excellent piece of work.
- November 18
- Late night in the office, software released. Yay, go me!
- November 17
- Yay, I have a shiny new 2.6.9 kernel running, replete with NTFS
support. Now to figure out why kudzu is dumping core.
- November 16
- At Tom's recommendation,
signed up to Google
AdSense. The only obvious indicators thus far are a slight
disturbance in the Force, er, sorry, the workshop.
- November 15
- Lots of logreading. Work, ergo SEEKRIT.
- November 14
- Sex Lives
Of The Potato Men is a very funny piece of work. I'm not sure
how portable the humour is, and it helps to like Johnny Vegas, but
for a movie with no discernable plot it kept me in giggles (and
occasional guffaws) for the duration.
Did a little more tweaking on the giant movie hack. At some point
I may have some code to show, but for now I'm kinda thinking it
out.
- November 13
- Acheived today:
- I can play .3gp
files with mplayer
- I built, deployed and ran a Hello World
MIDlet on my phone.
- I dusted off my IrDA code and had it
turn things I beam to it into mail messages, including inlining
images and base64-encoding them. Check out irmail.c!
- I
found a buglet in VM,
my chosen mailer.
Woo, solved the streaming metadata issue: it turns out that the XMMS session serving out the music
via LiveICE wasn't configured properly. Now to figure out why both
AudioScrobbler and my
XMMS hack toy are unable to read the track data that XMMS is
displaying.
Aha. The latter is broken because it's reading off the playlist,
not the currently-playing track. And XMMS' remote interface won't
let you read the track title. So I've made it output the fact that
it's merely streaming instead.
- November 12
- And continuing the frantic.
- November 11
- Frantically busy in the office.
- November 10
- Went through a whole bunch of Perl files checking what I'd
modified and checking them into CVS, mainly in an attempt to clean
things up. Poked at the mailman.pl script a
little since I'm not sure the Learn stuff is actually
working.
Played with my big movie idea a little more. It now has an
asynchronous queuing doohickey.
- November 9
- Set up some UI stuff for the big movie idea.
- November 8
- Hmm, the metadata doesn't appear when I listen to the stream in
the office. I think this might be something to do with UDP,
although I'm really not sure.
Hmm, indeed, running it over a VPN connection gives me the
metadata.
Poked at the Finance::Bank::IE
stuff some more, so it's getting to the Account Details page
now. Haven't parsed it yet, though.
- November 7
- Hmm, that was pretty spectacular: not only did I somehow lock up
Firefox, the gdb process I attached to it got hopelessly confused
as well and had to be killed. Of course, it serves me right for
running a nightly build rather than an actual release.
I am once again attempting to set up IceCast; having installed a 2.x
server I discovered that the original LiveIce won't talk to it,
and the guy who's working on the new LiveIce doesn't (on cursory
inspection) appear to have picked up the plugin for XMMS which is
pretty much exactly what I wanted to use. So I decided, no
problem, I'll just build a 1.x server. Nnnngh. This is the first
program I've seen that fails to link because the developers used
extern int errno instead of #include
<errno.h>. What was the point of that, exactly? And
there appears to be two sets of variables governing where files
get installed, one of which is utterly unaffected by the configure
script, so doing ./configure --enable-fsstd has no effect
on file placement (although I'm sure it affects where
IceCast goes looking for files). Anyway. It'll be done shortly, at
which point I'll no doubt discover that it Just Doesn't Work or
something.
Yep, it didn't work. It seems like the configure problem is
something to do with my .spec file, so that's not
IceCast's problem at least.
Wahey! Eventually it works. Now I have to make it add
metadata.
...and METADATA. Woohoo! Now I can listen to my jukebox in the
office!
- November 6
- Moved a bunch of furniture around the house. Still not 100% sure
of what I'm doing, though. I should maybe ask the landlady if she
can put some of it in storage or otherwise ditch it.
Decided I'd do some housekeeping on the computer as well. Threw
out Mozilla to stop me from
going back to it now that I've decided to stick with Firefox; the
latter was crashing on a Vodafone page but grabbing the
latest nightly build solved the problem before I could get too
involved in trying to debug it. I've also nuked all my plugins and
I'm redoing them from scratch so that, you know, I don't have
legacy crap lying around.
I'd seen a bit of Jungle
Fever before, so I rented it out and watched the whole
thing. Largely unimpressed; Spike Lee seems to have put more work
into the shooting than the actual storyline, and the fact that I
was noticing technical photography says a lot about how little the
story grabbed me. It was a generally untidy film, with bits of the
narrative left dangling all over the place. I'm sure the greater
point of racism is the one that Lee was leaning on, but if you
want to put across a message you need to make sure it's
in a coherent context.
- November 5
- Most of the day spent abusing hardware. At work, so you know,
all seekrit and stuff.
- November 4
- Merged some of the smaller changes in BBDB back into the XEmacs CVS tree. I'm somewhat
surprised that my CVS access still works since I've not touched
it in years.
- November 3
- Finally got rid of the 2.4 kernel on my work machine; it's
been unused for months now, and it hardly seems worth keeping it
on board.
- November 2
- Wrote the beginnings of a script to pull the content out of this
diary with datestamps intact, much derived from the gadget that
generates RSS for the diary. Which I also fixed some problems
with, one of which was REALLY REALLY DUMB. Anyway. The theory
behind the extraction is that I can do something more sane with
it, like fix all my broken HTML in one swell foop, and generate
more useful things like the various <link rel...> stuff that
shows up in the headers.
- November 1
- Hmm, just noticed that Expansys have a neat little
"email me when this product's price changes" thing on
their site.
Digging through some abandoned lisp code I find: (if
(get-process "server")
(error
"Dougal, I told you NOT to run
this!"))
previous month | current month | next month