Mar 15

Perhaps the kidney stone in the urethra of Nintendo’s supply chain is finally passing, because Wii is now starting to appear in stores. Controllers are readily available, and I managed to put in an order on Toys”R”Us’s web site during one of the 6 minute periods when the console was in stock. So, hopefully in a week or two we’ll be Wii-ing.

Ironically, I finally saw screen shots of a couple of PS3 games that interest me: Ratchet and Clank: Tools of Destruction and LittleBigPlanet. And if Fatal Inertia ends up being disappointing, Sony are working on a real Wipeout for PS3. So I’m fairly optimistic that there will be a good reason to buy a PS3 some time before Christmas.

But right now, I’m much more interested in Zelda, Super Paper Mario, WarioWare, Elebits, Kororinpa, and Prince of Persia: Rival Swords (since I skipped Two Thrones). I also plan to visit some of the GameCube’s back catalog; the cube has been sitting idle since I failed to get component video to work, but the Wii should solve that problem.

Mar 12

Someone has unearthed video footage from 9/11 of BBC news announcing the fall of the WTC7 building, in detail…half an hour before it happened. The reporter announces the fall of the building, adding details like exactly how many floors it has, when it’s still visible in shot.

The BBC say that it’s all just an innocent mistake due to confusion. And that their reporter can’t remember who might have told her that WTC7 had fallen. And that anyway, due to another innocent mistake, they’ve apparently lost all copies of all the video recordings of their 9/11 coverage.

So, nothing suspicious there, then. I mean, 9/11 was only the biggest news event of the past 50-odd years, I expect it was on an unmarked tape and someone just recorded over it with the football or something. Happens all the time.

Mar 11

Today I got to try a demo of Jam Sessions, a new game for the Nintendo DS from Ubisoft. It’s due out in a month or two.

It’s basically a guitar synth. The buttons are used to “finger” different chords, then you pluck a virtual string displayed on the touch screen. You can use a real guitar pick, even.

The sound quality was pretty good. I have Electroplankton, and the sampled sound on that is pretty ropey. This I can imagine being used by geeky techno bands on stage. The keys are all reassignable, and the shoulder button works as a shift, so theoretically at least you should be able to play anything that needs less than 8 chords, which should cover a lot of rock music. You’re not going to be the next Robert Fripp, though.

You can also record your playing, presumably via some sort of onboard sequencer, though I didn’t get to try that. There’s a “karaoke mode”, which I expect was more than a little inspired by Guitar Hero.

Mar 10

I’ve realized that I have a problem. During my formative years I was effectively trained to associate gyms and locker rooms with misery, pain and humiliation. This makes it very difficult to maintain a regular exercise regime.

Oh, sure, there’s biking and walking. Unless it’s summer, when it’s too hot, or winter when it’s dark and wet and sometimes cold, or spring when I’m in allergy hell.

So I find myself thinking about exercise machines. As in, being able to exercise at home without having to deal with locker rooms, and listen to the iPod while doing so. The problem with that scenario is I know that most people who buy exercise machines proceed to let them sit and collect dust, and I’m not entirely convinced I’d do any better.

Mar 09

You know how DST rules for the USA have been changed this year, and every OS needs patches?

You know how Java doesn’t use the OS’s info, so you have to patch all your Java VMs separately?

Well, it turns out that Sun’s “fix” was broken, in that it changed the behavior of the (deprecated) 3-letter time zones EST, MST and HST so that they now no longer reflect daylight saving time at all.

So, chances are you need to check every Java runtime again, and maybe delete 3 files, or run the fix again with a -bc flag.

But hey, you’ve got until 1am on Sunday to fix all your production systems. No big deal, right?

While I’m on the subject of Java’s date/time handling being a confusing mess, let’s talk about a few of the other things wrong with it…

Java.util.Date represents a date/time, i.e. an instant in time.

Java.sql.Time represents a date/time as well. It is a subclass of Java.util.Date, yet you can’t cast a Date to a Time. Instead, you have to get the epoch time in milliseconds from your Date, and use that long value to construct a Time.

To get the epoch time/date from your Date, you use the getTime() method, which gives you a long rather than a Time. Java.util.Calendar also represents a date/time. It also has a getTime() method. However, that getTime() method returns a Date object, not a Time object or a long epoch time.

Next: Calendar numbers months from zero, so January is month 0, February is month 1. This makes it unlike any calendar in human history.

Next: If you read a Time value from a database, you can’t examine it (e.g. check the hour is AM or PM) until you convert it into a Calendar. You can’t do that by simply constructing a Calendar with the Time value. The only way to create a Calendar with a particular time value is to construct an empty Calendar, then call setTime(). And of course, setTime takes a Date, not a Time. So you have to convert your Time to a long, convert the long to a Date, create a Calendar, then call setTime() on the Calendar with the Date as argument.

In fact Date objects are pretty much a useless relic, almost all date and time handling is done with Calendar objects. For example, SimpleDateFormat allows you to convert String objects to and from date/time values. However, it only returns Date objects. So your String gets parsed into fields, which are then converted by Java to a Calendar-like representation, which is then converted to a Date object passed back to you; you then convert the Date object back into fields in a Calendar so you can work with it.

Still, it’s a much more enterprisey way to do things.

Mar 07

The Pube Fairy: The malevolent entity which visits your house from time to time, and distributes pubic hairs in places they can’t possibly have arrived at without outside aid. e.g. the kitchen sink, the toaster, the guest room light switch.