For my current web log entries, click on the "current events" hyperlink above.
For other archives:
All hyperlinks which lead to a different web site are in this pretty green color
We're home from a very pleasurable visit to extended family. The Brothers Wilcox Annual Game Programming Event 2004 was a success -- maybe if I get a spare hour I'll publish the results here. (Short version: Arcane Arena v0.2 is a turn-based roguelike game written in Twisted Python, allowing any number of networked clients but intended to be used by three simultaneous players. The current UI is in curses. There are not yet any actual game elements that make it unpredictable, challenging, or fun -- the only thing you can do is walk around a room and stub your toe by walking into golden hill dwarfs or into the other players. Irby has enthusiastically submitted this Feature Request: "We can have zombies! Lots of zombies everywhere!".)
Elliot seemed to be widely admired. He no longer cries inconsolably for hours every day, but he still has a noticeably hotter temper than Irby did at this age. Elliot's quick and hot temper is matched by his quick and bright smile which never fails to charm its target.
We loved spending leisurely days visiting with relatives and beloved friends. It made me realize that I don't get enough social stimulation here. I haven't decided what to do about this yet -- maybe we can find a parents-and-children-bicycling-club or something. We live near to a community center which hosts various family-oriented activities. I should walk over there sometime and look at the flyers posted on the bulletin board.
I'm excited about my work, but it is still Top Secret and I can't tell you about it unless you agree to a Non-Disclosure Agreement and you offer to help me test it. Parts of it are open source and all of it is socially beneficial and it is also Cool and (in my opinion) Fun, so it might be the kind of thing to which you like to contribute.
Newflash: I just realized why I've always hated the name "Extreme Programming". It's because to me that always sounded like "Irresponsible Programming". Once I got past my distaste and learned about the actual ideas and practices that go under that rubric, I learned that the practice is actually all about responsibility, in the way that only "pragmatic" methods can be. The name is still a bad one, though, because other people might not get past that hurdle. I think maybe the name "Agile Methods" or "Agile Programming" will replace the name "Extreme Programming".
There are lots of more important things that I should be posting here, including Elliot pictures, but no time for that now. Back to responsibly programming!
It's about time I posted a picture and movie of the smallest O'Whielacronx. Warning: the movie file that you get by clicking on that picture is 10 MB of pure cuteness. If your Internet bandwidth -- or your cuteness tolerance -- can't handle that then just hold off and I'll upload more images sometime. (Mom: on your crappy dial-up 10 MB would take a few days. You'll probably see Elliot in person before you see that movie.)
The first demo of our new product went off acceptably well. It is good to have a demo because it helps focus our minds on what is urgent and important. Fortunately, we'll probably have them frequently in the near future...
It's cold in this workshop. I will get a space heater soon. I'm smiling like that because Amber said something affectionate before snapping the picture. Don't let the sight of that Java book worry you -- I'm still coding in Python. The programming language books there are all vestigial: Java, C#, C++, C. I look forward to using C and C++ again in the future. I do not look forward to using Java or C# again. There is no book for Python on that shelf, because I don't need one.
We've moved into our new house! It's very exciting and stressful. Here's a page of pictures.
This blogentry no paragraph breaks. We've been sick. I guess it is just a cold virus. We're moving into our new house tomorrow! One exciting thing about the new house is that it has a detached, insulated, two-car garage, and we have zero cars. Therefore, I can now be a mad inventor puttering about in my garage. My work is demanding, but fun. I'd forgotten how much I enjoy working for a "start-up". Irby is dressing up as a giraffe for Halloween. Elliot can hold his head up very well, and he loves getting face time with a parent -- he smiles a beautiful smile and he coos vigorously. I've been trying to make a movie of him with my Apple iSight camera, but with limited success. I have a freeware app named "uGrabit" which offers me dozens of different compression codecs, and I don't know which one to use. Whichever one I try, uGrabit has about a 50% chance of crashing or of recording a broken non-playable movie file. Does anyone out there know how to make good baby movies with an iSight?
As you may or may not have noticed, I've been increasingly reticent to write about personal things on this blog. This is due to privacy concerns, especially concerns for my little atomic family, two out of three of whom are too young to decide how much of their privacy they want to permanently give up. My life isn't very compartmentalized -- things that I work on for money or for pleasure are often intimately tied to my values and my experiences. Therefore, this blog has run dry over the past few months.
However, due in part to several very nice encouraging e-mails I've gotten recently, I've decided to resume public, personal blogging. It's important to me to maintain a public presence in my communities, as well as to encourage frequent social contact with friends and acquaintances.
Okay, but right now I'm way too busy to blog except to write this blog entry about blogging. I'm working on a very pleasurable and exciting commercial project of which I can't say any more.
I'm also maintaining private web pages for people that I know personally (even if only virtually or only a little bit). Those private pages are more likely to have details like personal photographs. If you would like access to these personal web pages, e-mail me.
Monopolies are bad. Very bad. And getting worse. Look at the numbers and consider carefully -- how much worse will it get? What will prevent it from getting even worse than that?
The current antitrust regime in the developed world is a kind of "Whack-A-Mole". A monopoly pops up, and a government attempts to put it down. But punishing one company is the same as rewarding all of its competitors. Therefore, suppressing a monopoly just means installing the next monopoly. Policy-makers know this, so instead of punishing the monopolist, the government often takes it over. What's the difference between a state-owned company and a state-regulated monopoly? (I don't mean "There is no difference between...", I mean "Think about the similarities and the differences between...".)
It might be possible to change the rules of the game, so that the basic incentive for monopolization no longer exists. (Namely, The Network Externality.)
Okay, so it might not be possible. But it might! Humans have once before discovered how to change the rules of the game so that basic underlying incentives stopped leading to system-wide destruction and instead led to system-wide creation. Maybe we could do it again. I'm not telling you what the first time was, because it is so ingrained into our culture that you don't realize it is an invention, but instead (a) believe it to be a natural right like freedom of speech, or else (b) believe it to be the cancerous perversion which is responsible for all the world's ills.
Thanks to Anthony Baxter for conversation that prompted this blog entry.
I got some nice spam from some mainstream culture leaders named "P. Diddy" and "50 Cent", exhorting me to "Vote or Die".
I updated reading.html to reflect a couple of things I've recently read. Unfortunately I haven't added notes about the dozens of things that I've read over the last few months...
I updated projects.html to put a new timestamp on the "studying" project. It appears that I haven't updated that page in about a year. Oops!
Did your name just disappear from the list of web logs that I've recently read, above? This isn't because I no longer like you, it's because you haven't updated your on-line diary recently. So if you wish to regain your place in the Blogroll of Fame at the top of this page, better get cracking and produce some updates.
I think I might be having e-mail trouble. I asked two different web sites (citeseer.com and google.com) to send me an e-mail in order to reset my password there. I haven't received e-mails from either of them. If you send me any e-mail, and I don't write back, consider resending, or contacting me some other way.
Hello world! I still exist! I'm lonely! Send me e-mail and I will reward you with CONTENT.
I noticed that the 2004-05-19 entry had accidentally been deleted from this blog, so I put it back. It is of historical import! (To me, not to everyone else.)
One year ago today, I taught Luke and Doug how to play Tactical Magic, and I played Dominions on my Mac laptop. Last week, Doug and I played face-up Titan and I've been playing Dominions 2.
Two years ago today, Irby ate beans. I strongly encourage all Irby fans to click on that link and appreciate this classic sequence.
Okay, okay, there is actually a new baby around here, about three weeks old. He's a good one! If you want to see a picture, e-mail me and ask and I'll give you a secret URL. His name is Elliot. Last night he was in quiet alert state, lying propped up against some pillow, slowly wiggling his hands around and blinking at the wall. When I came into the room and spoke, he turned his head toward the sound! Today he was crying and fussing in his grandmother's arms. Attracted by the sound, I came upstairs and asked if I could hold him. Upon hearing my voice, he quieted. I took him in my arms and he promptly settled down and fell asleep.
There are no new babies around here yet.
I updated http://zooko.com/revision_control_quick_ref.html.
This sounds like it is just a quip, but it is actually deeply true and important. Ned Batchelder writes:
After a small project of mine was converted from Python to C#, I have a new-found admiration for Python's dynamic typing, and other cool features like named arguments in function calls. I have come to believe this about static typing:
Static typing prevents certain kinds of failures. Unfortunately, it also prevents certain kinds of successes.
After a long hiatus, I've updated my reading.html page. I think I'll post new notes to both that page and this one. The way I'll do this is with cut-and-paste. My strategy of "my blogging tool is a text editor" is beginning to show signs of strain...
Yesterday I went for a ride in the car with Amber, Irby and my mother-in-law, Maxo. I suggested that we rent the DVD of "The Fog of War" and watch it soon, as a follow-up to "Farenheit 9/11". Maxo began carefully inquiring about why I disliked that movie so much. I gave some examples of techniques used in the movie that I found objectionable. After repeated querying, Maxo finally asked directly: "Is it that you like Bush, and that's why you are so angry to see him treated unfairly?". "No.", I replied simply. She checked again: "Is it that you support Bush and that's why you don't like this movie which might be bad for his re-election?". "No!", I answered. "Why then are you so worked up about this movie if you don't feel personally attached to it?".
I paused for a moment's reflection and then answered: "I don't know.", I answered.
We arrived at our destination and disembarked. I thought about this question: Why did I care so much?
A few minutes later I found Maxo again and told her:
"I have friends who are liberal, and friends who are conservative. I have family members who are liberal, and family members who are conservative. For the last few years, I have observed all of them becoming more and more angry and irrational, more polarized, more extreme in their political opinions, and more hateful toward one another. I really don't like this! I think it is really bad for my friends. I think that this movie will make my friends more angry and more irrational, both the liberal ones and the conservative ones. That's why I care so much about it."
One year ago I was working for Arbor Networks and planning a Toronto Hackers Meeting that never happened. Amber was working on her Master's degree in computational linguistics. (She hasn't yet finished.) Two years ago we were moving to Toronto from Halifax for Amber to start her Master's degree. Three years ago Irby was doing upstanding monkey practice and getting his first tooth. I was working for Mojo Nation. How time flies!
I wrote a much faster and more featureful version of colorlife.py. Too bad about the dependencies -- Python, Python-GUI, and on Microsoft w32 you also require GTK (or maybe a thorough cygwinification).
Wow, I really hated this movie. I felt dumber after having watched it. I also felt soiled. I mentioned to Amber that I had the urge to watch a real documentary (I want to see "The Fog of War") in order to "get the taste out of my mouth". Hm... "The Fog of War" might be a perfect follow-up...
I should hasten to add that I am more in agreement than in disagreement with the political views behind "Farenheit 9/11". Even though I am sympathetic to the political motivations behind it, I couldn't enjoy it once I realized that the bulk of it consists of sleazy innuendo and manipulation. There were occasionally relevant facts thrown in, and perhaps I would have found it more satisfying if I hadn't already been familiar with most of them.
I'm still mostly off-line but I dialed-up to tell you that I made this pretty toy, colorlife.py for Irby and his cousins to play with. It requires Python-GUI (and Python). It is inspired by a TI 99/4a program named "Color Life". Look in "key_down()" to find out what the controls do. The keys that do things are "eqshjklrgbop", and the space bar and (on my Mac laptop) the arrow keys.
Movers are coming to take our stuff away. I'll be off-line for I don't know how long. It's sad to leave here.
baka sent me this comic strip.
I have a habit of imagining "worst-case scenarios" and violence, and thinking the worst of strangers that I see. This habit has never proven useful until Tuesday night.
That night Amber (who, by the way, is six months pregnant) and I took the subway to American Sign Language class. We sat on the seats next to the rear door of the subway car. In the seats at the rear of the car five black youths were playing a rowdy game. I didn't quite understand the rules, but it involved making an obscene gesture at one of your friends with your tongue, upon which signal he is supposed to punch you.
We pulled our laptop -- a shiny silver 12" Macintosh -- out of our case and Amber held it on her lap. We started watching the instructional video for ASL class, in preparation for the test to be given when we arrived at class.
The young men in the rear seats noticed the laptop without wanting to stare at it. I noticed them noticing, without wanting to stare at them.
Shortly their game lapsed as they conversed among themselves quietly. Amber and I continued to watch the video and to talk about how American Sign Language works.
The next stop was Sherbourne Station -- one of the bad neighborhoods of Toronto. The five youths got up and began to exit the car, looking nonchalant and decidedly less rowdy than they had been earlier. The eyes of the last one flicked to the laptop and away again, to the laptop and away again.
Since I'd been observing all this, I wasn't completely stunned when he leapt forward, slammed both of his hands onto the laptop, jerked it from Amber's lap, and headed for the door.
I dived from my seat, reaching to snag the laptop from the thief's hands. I landed on the floor along with the laptop and the large Tim Horton's coffee that I had been sipping.
When I got to my feet and looked out the door of the car, I could see the thief speedily disappearing up a flight of stairs some distance down the platform.
We took inventory of ourselves, each other, and our possessions. I had bent a fingernail -- against what, I don't know. The strap of the laptop case, which had I had been wearing around my shoulder, had snapped. Amber had a bruise on her arm but was otherwise unharmed, if shaken. I, too, was shaking with adrenaline. I had a couple of bruises on my leg from hitting the floor when I dove. The laptop still works, even though it gained some deep scratches and a dent in the metal case. I'm pretty pleased with the industrial design of this device. (Not so pleased with the performance and with the operating system, by the way.) Also since it is a small 12" model it can better withstand being thrown to the floor.
I later told Amber that I had been able to react so quickly because I saw it coming. She asked why hadn't I acted before the thief did, then! That was a good question. I wouldn't want to confont a possibly innocent person based solely on my suspicions, nor do I want to curtail our behavior out of fear (for example by keeping the laptop hidden in our bag when in public -- others may evaluate these trade-offs differently than I do). But in this case I could have reached over and put one of my hands on the laptop as the the rowdy youths exited. That would probably have averted their attempt entirely, and with minimal disruption to us. I guess from now on if I find myself imagining bad scenarios I'll also try to think of proactive yet minimally disruptive ways to improve the situation.
New Vernor Vinge story, The Cookie Monster! Thanks, Darius.
Dear Santa:
My computer, which I enthusiastically blogged about two years and four months ago , is not quite fast enough to run several Mnet nodes, an audio player, the galeon web browser with a few dozen open tabs, a vmware virtual machine with Windows XP inside of it, and some other big computational jobs like compiles and big greps. (The vmware process is by far the worst of these.)
What I want for Christmas is:
Alternately (or heck, in addition):
Interesting to note that RAM is the most expensive thing in either of these upgrade paths. I chose the cheapest 7200 rpm, 8 MB cache hard drive on KC's site. One could spend a great deal more on commodity RAID storage, like this:
While I'm at it I would like a license for the latest version of vmware, or else a Free Software machine emulator that can run Windows XP not much slower than vmware does.
Also Linux v2.6, but I can take care of that myself.
Locke: Being 3 is an excellent thing. You can wear underwear on your head without it being ironic.
Zooko: Did you say "without it being ironic."?
Locke: Yes.
Irby, age 3, wearing underwear on his head: Ah-HA! Locke is SILLY!
Apropos my recent rant, here's an article about new mind-control technologies. I found this link via Paul Hsieh's blog.
I updated revision_control_quick_ref.html quite a bit, adding some more revision control tools, refactoring the table, and more.
Functional Magnetic Resonance Imaging should excite you. It should also scare you. About ten years ago, scientists were given a tool that is basically a brain scanner. Given a properly designed experiment and some careful analysis, scientists can basically look into a live human brain and see which parts of the brain are doing what when the person is thinking certain thoughts, feeling certain emotions, making certain choices, and so forth. The latest example is that they have identified the part of the brain that lights up when you have an "A-ha!" moment, or an epiphany. This part of the brain doesn't light up when you figure out the solution to a problem in a way that doesn't require a "Eureka!" moment.
Exciting, right? In a few years, we'll be figuring out how to stimulate or how to prevent that part of the brain from lighting up. Or someone will. I hope they share the information with the rest of us.
A much more primitive brain-scanning technology -- called "brain fingerprinting" -- is already used to reliably determine whether a person is familiar or unfamiliar with a photograph, a name, or a phrase, even if that person wishes to withhold the fact that they are familiar with it.
Are you getting a creepy feeling yet?
The implications of this technology are staggering. I don't know where to begin, trying to imagine the uses to which it will be put. Here is just one example: Within a few years, powerful organizations will scan the brains of their members to detect disloyal thoughts and feelings.
I just found out that some of the e-mail sent to me over the last five months, since December 2003, has been redirected to a backup server and stored there. I now have over 2000 messages, more than 99% of which are spam, to sort through. If you sent me an e-mail in this interval and I didn't reply, then most likely I got your e-mail, read it, made a mental note to write a suitable reply later, and haven't gotten around to it yet. Second most likely is that I never got your mail until today. The least likely explanation is that I hate your guts and wish you would go away.
Irby and I were resting on someone's lawn, bicycle laying nearby. "It's a nice warm day, isn't it?", I said. "Yeah," Irby replied "because it's summer!".
I began to sing to him, gently and with love.
Summertime,
and the livin' is easy
grass is green
and the grain is high
Your daddy's rich
and your mama's good-lookin'
so don't you cry
sweet baby, don't you cry
He rested and listened, self-consciously looking away from my gaze.
One of these days
you're gonna rise up singin'
spread your wings
and take to the sky,
but until that day
ain't nothin' can harm you
with your mama and your daddy
standin' by.
Afterward there was a silence for a few moments. Finally he met my gaze again.
"Were you singing a bird song?" he asked in a quiet voice.
"A bird song? What do you mean?" I asked.
"Were you singing to a bird?"
Hey Neju! Check out the latest version of cheatroll.py!
Here's a script to re-roll your character in Dungeon Crawl until it starts with all the skills that you want.
I finished my current paying contract. It hasn't been accepted yet, and there will doubtless be polishing, bugfixing, etc., but it now does the job it is supposed to do.
And my arm hurts! Yesterday I was in persistent pain, even when not moving and not using my arm. Amber gave me a nice massage. Gotta be careful! That's why I write to you terse and underpunctuated replies to your many nice letters. Send more nice letters.
I found Eric Hughes! You can stop telling him that I'm looking for him! But, thank you. I appreciated the thought.
Adam Langley and Bram Cohen did the music codec challenge. I'm beginning to think that the version that has been re-encoded from mp3 to worst-possible-quality-ogg sounds better than the original mp3 version. Maybe this kind of noisy/indie/punk sound benefits from the sounds that the ogg decoder makes up to fill in the gaps in information.
Adam put up a new challenge on his home page.
Bram took up the challenge. I also generated another randomized pair: a2.wav and b2.wav. Please tell which one out of each pair you prefer. (That is actually a different question than the previous challenge of "Which one was the original?". Maybe I don't care which one was the original. Maybe re-encoding your mp3s to low-quality oggs makes them sound better!)
Today is the first day that the "three years ago today" link works.
Arno Washck did the challenge. He is a professional musician. (In fact, he is a Musician of Bremen.) He correctly identified which of the a/b pair was the more lossily encoded, and which of the a2/b2 pair was the more lossily encoded. He didn't say which of the two he preferred to listen to. He said the encoding lossage didn't seem to matter much for music that was so noisy/percussive anyway.
I have determined that I cannot tell the difference between an mp3 and the same mp3 re-encoded to Ogg Vorbis format with the minimal quality level. The original mp3 file (encoded at a constant 128 Kbps) is 1 MB in size. The re-encoded, minimal-quality ogg file (variable bit rate, averaging 48 Kbps) is 371 kilobytes in size. Think you can tell the difference? Tell me which is which: a.wav, b.wav.
I updated Revision Control Quick Ref.
I had a delightful visit to the San Francisco Bay Area, attended CodeCon, and visited with quite a few friends old and new. I have several dear friends in that area whom I had no time to see on this trip. I've resolved to travel more often, and to bring Amber and Irby with me.
We are considering moving to that area or to the hinterland of Boulder, Colorado. Also we're considering staying in Toronto. One of my main hesitations about the San Francisco Bay Area is whether it is a good place to raise children. There aren't many children in my social group there. On the other hand, the number of children has tripled (from one to three) in the last three years. Perhaps this heralds a geek baby boom.
Back home now, and it is chaos as ever. In addition to all of the pre-existing stresses, there is a new one: our landladies are selling the house so we will have to move in a few months.
The Open Source Initiative declined to award the OSI stamp of approval to The Simple Permissive License, even though they agreed that The Simple Permissive License is open source. Their motivation for withholding their stamp of approval is that The Simple Permissive License is legally identical the original MIT license (a.k.a. The Expat License), and they wish to deter the proliferation of open source licenses. The discussion is archived here.
I updated Revision Control Quick Ref and License Quick Ref.
I edited down the MIT/X11/Expat/permissive license to make "The Simple Permissive License":
Permission is hereby granted, free of charge, to any person obtaining a copy of this software to deal in this software without restriction (including the rights to use, modify, distribute, sublicense, and/or sell copies) provided that the above copyright notice and this permission notice is included in all copies or substantial portions of this software.
THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED.
I submitted this license to the Open Source Initiative to get the "OSI" stamp of approval indicating that it is indeed an open source license. Here is the thread of discussion
A little more than two years ago, some scientists from Princeton stuck some people's heads in brain-scanning machines and asked them to make difficult moral choices. Brain Imaging Study Sheds Light On Moral Decision-Making . My own personal interpretation of the results is that when you get emotional about a moral decision, you are less likely to make the right decision and if you do make the right decision it takes you longer to make it.
Other people may disagree about what the morally right and morally wrong decisions were in this study. Please read the press release linked above and tell me what you think!
My pet theory of evolutionary cognition fits nicely with these results. In that theory, it's no accident that your emotions sometimes kick in and override the rational parts of your brain, but the fact that emotions so override in these moral cases is an accident (or an "epiphenomenon"). The reason that emotions have that override capability is to prevent rational selfish behavior from destroying tribes, not to prevent you from making rational choices when you are involved in personal moral conundrums.
In fact, perhaps the real definition of "personal moral conundrums" is "situations in which your 'do-not-be-too-rational-and-destroy-the-tribe' circuit is activating inappropriately and interfering with your ability to make a good decision that doesn't destroy the tribe".
It's just a speculative idea. Calling it a "pet theory" is perhaps giving it too much credit.
UMass Researcher Finds Link Between Lying And Popularity ; "The study found that older adolescents were more adept at deception than the younger ones. Younger or older females were more likely to excel at lying than their male counterparts. Among all ages and genders, those adolescents with the highest level of social competence were the most talented liars."
Heh heh heh. I love it when research uncovers results that are uncomfortable to people. I guess if we want Irby to be popular we'd better start teaching him how to lie effectively!
Irby now flies lego planes around the house. I used to do that a lot when I was his age and older. It really pleases me when Irby turns out to be like me in some way.
All of a sudden Irby can use the mouse! Yesterday for the first time, he tuxpainted all by himself. He kept at it for almost two hours, occasionally selecting the eraser tool (which makes a cute "squeaky-squeaky" sound like a whiteboard erased vigorously wielded) and cleaning the whole surface off and restarting.
I updated my revision_control_quick_ref.html document.
Every week or so the temperature gets up to -7 Celsius. -7 feels pretty warm after a week ranging between -10 and -20. -7 is tobogganing weather.
(-7 Celsius ~= 19 Farenheit, -10 Celsius ~= 14 Farenheit, -20 Celsius ~= -4 Farenheit)
I haven't allocated time to contribute to open source projects in the last few weeks, and I was starting to feel sad about allowing them to bit-rot. [Note for non-hackers: "bitrot" is a mythical but strangely true disease which afflicts source code that is left unattended. It causes previously working source code to stop working. "It's just part of a mature computing environment.".]
Today I feel much better, as I've learned that there are other hackers out there who are taking up the slack on two of my projects. The first is of course my beloved Mnet, an embryonic distributed file system. I haven't allowed myself to touch it for many weeks, in order to concentrate on paying consulting work. I was somewhat depressed because there were significant outstanding bugs that were holding up the release of Mnet v0.6.2. Today I learned that Arno Washck has fixed some of those bugs, and is making progress towards fixing the rest. He may come out with Mnet v0.6.2 in time for CodeCon.
Another project of mine is eio -- a library to make life easier for Java network programmers who need to use scalable asynchronous I/O. That project was originally sponsored by Phil Zimmermann, but since neither he nor I have developed any new Java code in the last year it has lain fallow. Today I agreed with Itamar Shtull-Trauring that he will take over the job of maintaing eio. Itamar is an accomplished hacker who has contributed a lot to the Twisted project as well as contributing occasionally to Mnet. I'm glad that eio will be in his hands.
Oh yeah, I've decided to attend CodeCon! I'm excited. Now I must buy plane tickets, arrange a cheap hotel room, etc..
Happy New Year!
It's cold here. See the Toronto weather report and note especially the wind chill value. Yesterday the wind chill value was -34, which is extreme enough that I could theoretically get frostbite in my fingers while pulling Irby's sled from Mo's to home (about 15 or 20 minutes walk). I didn't get frostbite, perhaps because we stopped in a coffeeshop to warm our fingers and because I duty-cycled my hands -- one in my pocket, the other pulling the sled.
Here are a bunch of things that I haven't done since returning from vacation: * read the weblogs of friends (well, I read a few of them this morning), * read mailing lists, * read news sites (okay, I browsed The Inquirer a couple of times), * work on Mnet, * hang out on the Mnet IRC channel, * work on writing down my cryptography idea, * read scientific papers, * plan a Toronto Hackers Meeting (it's not gonna happen in January), * update this weblog, * visit with friends in person.