LEGO 7090 Crossbow Attack

Toys R Us recently had a sale which brought the prices of the Castle LEGO kits down to almost what you pay at full retail in the US. I took advantage of this sale to procure a few little kits. The first is the 7090 Crossbow Attack.
This kit is the smallest of the new line and is about $8 Canadian or $5.99 US. At the US price it's reasonable for a kit of this size, which comes with 3 minifigs, a ballista, and a skeletal horse. I don't really like the skeletal horse but it's actually much better in person than I expected. Still I find it looks a little odd, but then I've never seen a horse skeleton so maybe they DO look like that.

The ballista is decent-looking but it doesn't fire well. Unlike the Viking heavy artillery, this little artillery piece can barely lob the bolt more than 8 inches. I think it would have been better if the ballista didn't attempt to fire and instead looked better, but anyway its parts are useful and can be incorporated into new creations fairly easily.

Anyway the real reason for buying this set is to build up your army. The set comes with two human soldiers and one undead skeleton, so it's pretty good in that regard. The skeleton is fully armed with the great new scimitar and round skull shield, but the humans are poorly armed. They can be outfitted with the crossbows that are attached to the ballista, and one human has an axe, but there are no shields to be seen. The lack of sheilds and swords is what keeps this set from being perfect.
Overall I rate this set as good, not excellent, but still a nice fun set that (in some countries) is available at a reasonable price.

Mandarin Lessons

I am studying Mandarin. This is an interesting language to learn because it has a long history which is all new to me. My native French and English languages I take for granted, but learning a completely foreign language, from a place like China, makes for a lot of new facts.

For example, I learned that Cantonese is older than Mandarin. This is shown by comparing classical Chinese literature to modern Cantonese and Mandarin. Poetry, for example, probably won't rhyme if read in the wrong dialect, and classical poetry usually sounds best in Cantonese because it rhymes and flows better.

What makes learning Chinese even trickier is that the written words are completely disconnected from the spoken words. In English, if you know how to pronounce "turn" and "key" you can probably figure out "turkey". In Chinese, however, the written words are just symbols, and knowing the shape of a symbol tells you little or nothing about the pronunciation.

There is one class of exceptions: Chinese characters made up of a meaning part and a sound part. A good example is the word for Mom1:

The left half of that symbol is the radical for "Woman" while the right half is the radical for "Horse". The reason for the Horse is because both mom and horse are pronounced 'ma'2. Personally I find it funny that 'Horse' gets its own symbol but 'Mom' does not.

Next time: how using the wrong tone can lead to embarrassment.

1. The word for "Mom" is actually 媽媽, as in 'mama'.
2. The words for horse and mother have different tones, which is how Chinese speakers distinguish them.

Signs you've been online too long

Some people don't know when to quit. As an avid computer user, I've had my share of long online games. A few times in university I recall playing online games until the sun came up. But this guy in China takes the cake. Apparently he played so long he died of exhaustion. I wasn't aware the problem was so serious, so I've put together a handy checklist which you can use to determine if you've been online too long:
  1. The Internet Cafe technician comes by to upgrade Windows on the computer you're using and you don't recognize the year in the version number
  2. You have to change your mailing address to the Internet Cafe's location so that you can continue to receive your credit-card statements
  3. You don't have time to shower but you've had to clean the mouse and keyboard several times since you started playing
  4. Your family stops visiting you or phoning you and only contacts you through MSN Messenger because that's the only way they can reach you
  5. You can't discuss geography or politics with anyone because all your knowledge is out of date due to continental drift.
If you have any of the above symptoms, you've been playing online too long and should take a break immediately. And probably you need a shower.

Only a new C.N. Tower can save the Canadian Dollar

Today the Canadian Dollar reached parity with the US dollar. This is seen as a bad thing because it means Canadian labour is comparatively more expensive because Canada mainly exports to the U.S.. We need to prop up the U.S. dollar so that the Canadian economy isn't harmed. The last time the dollar was at par was in 1976, when the C.N. Tower was built. From that time the Canadian dollar dropped and dropped. What happened to change this situation? Clearly it's the construction of the Burj Dubai, which is now taller than the C.N. Tower. Obviously what we need to restore our dollar is a new, taller tower. I recommend one built of Lego.

Robert Jordan

Since I started writing this blog I've been meaning to post about the Wheel of Time. This is a fantasy series written by Robert Jordan, whose real name is James Oliver Rigney Jr. Since 1990 millions of readers have been taken into the world of Rand al'Thor, where only women perform magic because the male magic is tainted, and where young men and women must stand up and take up arms in the eternal struggle of good and evil. Over 11 volumes (plus one prequel novel) and 17 years Robert Jordan has told the tale. His loyal fans await the 12th and final book.

Alas, Robert Jordan has passed away. He struggled over the last few years with amyloidosis with cardiomyopathy, a disease with a median life expectancy of approximately 4 years. Others will no doubt quote some passage from his books, but I will simply say thank you for the stories.

Times and Dates

Today a coworker and I grappled with a weighty issue: Time.

The thing is, time is one of the most complicated concepts humans have invented for themselves, but we've managed to hide the complexity behind artificial facades. For example, all business record the time and date when transactions occur. Businesses want to know how much money was made when, and this information is summarized on a daily, monthly or quarterly basis, but in the computer realm we deal with seconds or milliseconds.

How many milliseconds are there in a month?

It's a trick question, because the length of a month depends on which month it is, and whether this is a leap year or not. People expect to be able to calculate the time between two dates, and also to be able to determine what the date some number of seconds from now. Both of these tasks are extremely annoying because dates and times use convoluted units of measure.
1000 milliseconds in a second->60 seconds in a minute->60 minutes in an hour->24 hours in a day->7 days in a week->28, 29, 30, 31 days in a month->12 months in a year->365 days in a year->almost 52 weeks in a year->almost 4 weeks in a month

Computers typically represent time in milliseconds since some arbitrary point. Linux, Unix and Java use Jan 01 00:00:00 UTC as the reference time. Thus the number 378113400000 represents Fri, 25 Dec 1981 07:30:00 GMT, while the number 378563400000 represents Wed, 30 Dec 1981 12:30:00 GMT. This is useful for determining how much time has passed from one instant to another but makes it difficult to determine what the date is at a particular instance. This difficulty is compounded by the fact that the calendar isn't continuous: during the Gregorian switchover (when most Christian nations switched from the Julian Calendar to the Gregorian Calendar) the date went from Thursday October 4, 1582 to Friday October 15, 1582. Except in countries that didn't switch calendars, including the United Kingdom, which rejected everything the Pope said, and thus they held on to the Julian Calendar until 1752, when Wednesday, September 2, 1752 was followed by Thursday, September 14, 1752 (an 11 day jump, because in the intervening years the Julian Calendar had become further incorrect). It is difficult to accurately represent times in this era, mainly because not everyone agrees on what a specific time should be called.

Then there's time-zones: there's dozens of them and they cause havoc with time. In local terms some days are 25 hours long or 23 hours long when the time changes from or to Daylight Saving Time. Luckily most computer software uses UTC, which doesn't have time-zones. Internally computers represent time in UTC and only convert to local time for display purposes. But there are still issues, because the computer still needs to know the rules for how to convert to local time and sometimes the rules change, necessitating a software update. In some jurisdictions the rules for Daylight Saving Time change every year.

Which brings me to the problem we are facing at my office: for better or worse we have a system where dates and times are recorded in a non-UTC format, which is to say, in the local timezone. This arrangement makes it difficult to examine data and compare it to other systems because the other systems use UTC. Except for the ones that don't, because they use some other timezone. This makes it problematic to look at logs and discuss the order of events because the timestamps all mean different things. It's like England in the 18th century: When an Englishman spoke of the date September 1st 1752, any Frenchmen nearby would have to mentally translate to Sept 13th 1752. However fixing the clocks and time-zone settings on the various systems won't solve the problem of systems that don't speak UTC and can't be made to. For those there is nothing to be done. But as a lesson to future system designers: do everyone a favour and
  1. Synchronize the clocks of your computer gear, and
  2. Always store dates/times in UTC
The maintainers of your system will thank you.