Until the beginning of this year I was a computer science student at
the ANU (Australian National
University) in Canberra, Australia. I finished my degree this year,
though I haven't actually got the piece of paper that confirms that.
I'm now working as a *nix contractor - systems administration, and some development work.
My situation in life recently changed rather massively: I got married,
to a woman I met online (in #crfh on the Nightstar IRC network). Her name is
Sandra, she's from Oregon in the north-west of the US, and she's stuck
with me for life now ;-)
We're still sorting out various visa difficulties (the Department of Immigration here in Australia has problems with documenting exactly what's required for visa applications), but soon we should have it fixed.
I'm a Linux nut (though also a relative newbie - I came along at kernel
2.0.36 (RedHat 5.2), in December 1998). I'm something of a kernel
hacker, too, though currently only in a small way - I'm working on it,
and improving quite quickly, but I wouldn't want to let Al Viro see any
of it yet ;-)
When I'm not dithering or working on my kernel code I write other things, generally in C, though recently in several other languages: firstly Perl, but also Objective Caml, and Python . . .
Perl is evil, twisted, neurotic, and absolutely marvelous . . . It's
like a snapshot of Unix, condensed down to a programming language, which
is what makes it so wonderful, for Unix nuts like myself - it's like
coming home, particularly if you've spent too much time fiddling with
things like Eiffel (which isn't a bad language in itself, just
frustrating for someone used to having the full power of a POSIX system
available to you) . . .
Objective Caml is a variant of the ML family of (pragmatic) functional langauges. It's main claim to fame seems to be it's system of type inference: it infers the most general type of a function from the code itself, rather than having the type specified by you. It takes a bit of getting used to, but it's less of a stretch than you'd think . . .
O'Caml's other claim to fame (aside from all the normal run of the mill functional things) is that it's fast - the native code the compiler produces is comparable to C/C++ in speed. This is partly due to good compiler writers, but mostly due to the fact that the language itself is very well designed to allow for optimisation. Excellent proof that C or C++ isn't the only language out there that's suitable for performance critical stuff . . .
Python, of course, is Perl's nemesis, or rather antithesis: its clean and simple, and is proud of the fact that there's generally only one obvious way to do anything (and more often than not that way is right). I came to it after learning Haskell and O'Caml, which, being functional languages, offer various things like lists, tuples, and other similar data structures that make many problems wonderfully simple. So I felt quite at home when I discovered Python supported lists natively, and that you could handily pack and unpack things into tuples, and even use dictionaries (which are exactly analogous to Perl's hashes, without the '%'). I've come to the conclusion that Perl is for text processing, and Python is for data processing. This distinction probably sounds rather bad for Perl, since text is just data, after all, but I suspect Perl is still more powerful for straight text processing, and probably more convenient; if you want to handle complex data, though, Python will almost certainly stomp all over Perl.
Both have their uses, of course ;-)
C, though, is still, for me, the best language out. That's largely because it's the first language I learnt, of course - that first language shapes how you think about programming, so that nothing afterwards really compares, even if it's technically superior.
But enough of this language rambling . . .
My contracting work is done for a company called Dreamcraft Pty. Ltd. We do
computer systems and security consulting for various people - my
official job description is "Research and Development Programmer",
which basically amounts to hacking on potentially useful "stuff". I
also get to acquire scarily large amounts of arcane knowledge, which
will probably result one day in a host of tentacle beasts spurting
forth through my foramen magnum and devouring the world . . .
Or something like that.
Maybe . . .
I like it (the job, that is - the tentacles are a bit strange ;-) - I
get paid to work on stuff that I'd probably be doing anyway, which is
really nice. And I get interesting problems thrown at me . . .
Being paid to think is fun.
At the moment (as of 2002-10-05) the main project I'm working on is a
network management tool that I call MIBfs: it's essentially a way to
export network management data and controls through a normal *nix
filesystem interface, allowing you to do everything via your favourite
scripting language, without having to write SNMP aware code. As the name
suggests, all you need to know is the MIB and what you want to do with
it . . . Byebye SNMP (hopefully ;-).
Current status is probably two thirds done, though it might be more - its hard to say, when you don't really know what "done" means . . .
I currently spend far far too much time on IRC, generally on the Nightstar network. This is a spinoff of my interest in webcomics - I read a number of webcomics religiously, and a lot more rather less religiously. A number of these comics have their own IRC channels on Nightstar, and I hang out in a couple of them, primarily #crfh and #elflife.
My favourite webcomics are College
Roomies from Hell, Sluggy
Freelance, Clan of the
Cats, Elf Life and Bruno. Well, they're
the ones that I feel like naming right now - I could probably add
another three or four, but I'm too lazy.
I'm really a CRfH fanatic - the rest I could live without, though I'd rather not. CRFH is brilliant - easily the best comic I've seen, ever, anywhere, and one of the best stories I've come accross, too. Wonderful characters, great stores, funny, dramatic, sad, happy, scary, exhilarating . . . I love it. We should all bow before Maritza Campos.
I read Slashdot, of course, Linux Weekly News, Ars Technica and a number of other sites for my general hits of technical news and such like. I read The Age and the Beeb for my general news needs, and I spend far too much time just generally websurfing. Roughly speaking, that's my life . . .
I don't have a diary at all, let alone one on the web. You see, I'm not insane, nor do I do anything that anyone might be interested in, so I don't qualify for that peculiarity on either of the justifiable causes . . . ;-)
That said, I do have some writing that I've done. Primarily, at present, a story that I wrote waaay back when, started in 1994-5, and finished in 1996. It only acquired a title as of about 2001, courtesy of a friend on #crfh - it's now called A Gift of Laughter.
If you want to send me something really private, my pgp public
key id is 0x144A991C, or you can download it here.
Fingerprint: 467C 8996 F252 79B9 433F BCA2 40F9 5F99 144A 991C.
I got married! Woohoo! Lots of pictures, but without a scanner I can't put them up. When I can get hold of one, there'll be a new page linked from here with them all up there.
Having recently got a new laptop, one which only supports ACPI, I've
been hacking madly on some code I found. I wanted a Window Maker dockapp
to track battery usage, and the only one I could find was
Problem is, it didn't work . . .
So, I started hacking on it, and a few months later this is the result. It's rather good, I think, even if I'm saying that myself. I've announced it on the acpi-support list, and I'm going to post my latest release to the linux-laptop list. Hopefully I'll be able to get some good feedback.
Well, I just spent the last eight hours or so learning CSS and how to actually use it for real layout . . . Take a look at this nifty page to see a simple clean structure created with not a single table - it even looks good in lynx!
I just updated this page to use CSS for layout and the like. It hasn't changed the appearance, just made it a tad more "proper" . . . I also updated it to valid HTML 4.01 strict. Why, you ask? Because it's there! ;-)
I also finally got around to updating the content (well, adding stuff, mostly, since I'm too lazy to do a /real/ rewrite). Probably it should be broken up into multiple sections, but hey, that sounds like work . . .
There's a real pics page now - real html, no less! ;-) You get to marvel at my amazing ability to say boring things about bad pictures ;-)
I've put up some pictures of me and my family and (most importantly ;-) my family's cats . . . It's just pictures in a directory at the moment, but I'll clean it up and make it a real pictures thingy one of these days . . .
I've decided to link to my writings page, finally, after getting some nice reviews of the story I've got up there. Enjoy! ;-)
KBB now has a homepage! Whee!!! ;-) Check it out here, and be awed! ;-)
Me and several other moderately insane people have gotten together to create a web based bulletin board, roughly equivalent to the (seemingly ubiquitous) UBB. I say roughly, because UBB sucks, and KBB definitely won't, so the equivalence is in the functionality, not the quality . . . ;-)
There's no KBB homepage yet, but that will probably change one of these days . . .
As you might have guessed, it's called KBB - it stands for Keen Bulletin Board (though some argue it's actually Keenspot Bulletin Board - I think they're wrong, and this is my page, so I can say what I like ;-P ).
It's written in Perl, and designed to run as efficiently as possible, avoiding CGI whenever possible, so that it doesn't need things like mod_perl or a really hefty server. It also doesn't need any DBMS, so you don't have to become a DBA to run a bulletin board . . .
If you want to contribute, just join the list and post away - we could do with some Perl gurus here, because none of us are exactly experts . . . This is almost as much a learning exercise as it is a serious project. Almost . . .
I've started a site about dealing with depression. There's not much there yet, but that will hopefully change reasonably soon . . .
I could come up with some wonderful editorial on subjects like censorship and the whole DeCSS shebang, but you're probably better off looking on sites like slashdot, linuxtoday or even just searching on google for these things - my views aren't particularly well thought out or even entirely consistent . . .