The Lego Mindstorms NXT we ordered off eBay arrived today, and I had to wait until 3:30 when Duncan got off school so we could play with it.
It was advertised as "almost a complete set", and not very many of the parts were missing - the bag containing the blue 3M connector pegs (#4514553) was missing, along with the light sensor (#9844). Fortunately I had enough of the pegs to make the humanoid robot work, and the light sensor was unnecessary for that particular configuration. I am going to look into buying one or two light sensors because I'm interested in messing around with a line-following robot.
We played with an Android app to control the NXT via Bluetooth, and Duncan had an absolute ball with it (it worked flawlessly by the way) but unfortunately Bluetooth absolutely shreds the batteries in the NXT brick.
So it was time to look into programming it. The disc that came with our set (which is NXT 1.0) is utterly useless on anything higher than Windows XP - errors trying to install, and when I finally got the NXT software installed it wouldn't run ("unable to open resource files"). I tried the EV3 software, and it sort-of works but the compiled files wouldn't run on my NXT, and it didn't support the ultrasonic sensor (among other things).
Finally I found a blog post detailing essentially the problems I had, and it included a link to the NXT 2.0 software, which does work on Windows 8.1. That worked perfectly, and I was able to update the firmware and upload a working program to the robot.
Unfortunately I got it working right around Duncan's bed time - so he'll have to play with it tomorrow before school.