Tuesday, September 2, 2008


My free-from-AT&T (because I am cheap) Sony Ericsson Z310a has Bluetooth comms, so with the help of a third-party iSync plugin, I can synchronize my phone’s contacts and calendar with my computer’s Address Book and iCal.

But I use Google Calendar because it allows me to access my calendar from my laptop or from my computer at work. Up until recently, that meant that using a web browser, because iCal had read-only access. So I would occasionally launch iCal and manually refresh the subscription to my GCal calendar, and I would even less frequently use iSync to push the calendar from iCal onto my phone. But usually I’d just leave Google Calendar up in a browser tab and not even run iCal.

Well a few weeks ago, Google finally added CalDAV support to GCal, which means that I can now use iCal as my calendar program and still have the benefit of viewing my calendar from any computer with WWW access. Great news!

This had the side effect of illuminating the fact that I won’t remember to sync my cell phone as often as I should; I typically only remember to do it once every week or two. Clearly, an automated solution is warranted. Because I am lazy.

Enter launchd.

launchd is OS X’s neato unified replacement for init, rc, inetd, xinetd, at, cron, and pretty much anything else that pertains to the launching of programs in response to the meeting of some sort of criteria (incoming network connection, file modification, file added to directory, time elapse, time of day, &c.). It understands service prerequisites and launches stuff as needed and in parallel, so booting is much faster than it is with Linux’s serial execution of rc.d scripts in alphabetical order of file name (what a hack). Anyway, it’s really great and magical and its only downside is that it continues Apple’s trend of using Property List XML files for everything under the sun.

Luckily, Peter Borg (Swedish, not evil alien) wrote the wonderful Lingon, which provides a simple GUI for me to describe what I want my LaunchAgent to do and generates the appropriate XML behind the scenes (and happily uses intelligible indentation, unlike most automatic code generators). It also knows where to put the resultant file (~/Library/LaunchAgents).

iSync is a scriptable application, so I can execute a command like
osascript -e 'tell application "iSync" to synchronize'

and it will start to (asynchronously) perform a sync. Unfortunately, iSync doesn’t quit when it’s finished. I need to wait for the sync to finish, and then tell it to quit. Something like (all on one line):
osascript -e 'tell application "iSync" to synchronize' >/dev/null && while [[ `osascript -e 'tell application "iSync" to get syncing'` = true ]]; do sleep 1; done && osascript -e 'tell application "iSync" to quit'

(I tried it as one big AppleScript, but the first "get syncing" returned false. There’s a race condition or something. It appears to always work with sequential invocations of osascript.)

A LaunchAgent can invoke any single command-line command (or launch an app), but it can’t do fancy stuff like pipes or shell boolean interpretation. So, something like the incantation above is out of the question. It has to go in a file as an executable shell script.

So, I gave Lingon a unique name for my agent, I pointed it to the location of my script, and I clicked the check box for "At a specific date:" and told it to run every day at midnight. When I saved the file, Lingon told me that I would have to log out and log back in for my new agent to work. But it isn’t true. launchctl to the rescue!
launchctl load path/to/file.plist

Note that if you make a change to the XML, you have to launchctl unload and launchctl load again for launch to notice the change.

Here’s the final XML:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">

For the shell script itself, I decided to write one in scsh (just because; yes, I know the scheme shell is total overkill for a script this short, but how often do you suppose people have Scheme code calling AppleScript?). It looks like this:

#!/opt/local/bin/scsh \
-o threads -e main -s

;; I have to load the threads structure to get the sleep function

;; Get iSync to start syncing
(define (synchronize)
  (run/strings (osascript -e "tell application \"iSync\" to synchronize")))

;; Tell iSync to quit
(define (kill-isync)
  (run (osascript -e "tell application \"iSync\" to quit")))

;; Returns #t if iSync is still syncing
(define (synchronizing?)
  (let ((result (run/strings
                 (osascript -e "tell application \"iSync\" to get syncing"))))
    (string= (car result) "true")))

;; Waits for iSync to finish and then tells it to quit
;; (polling once per second)
(define (kill-isync-when-done)
  (sleep 1000)
  (if (synchronizing?)

;; Start a sync and then kill iSync when it's done.
(define (main prog+args)

Of course, I could also have just defined a single function:

(define (main prog+args)
  (run/strings (osascript -e "tell app \"iSync\" to synchronize"))
  (let loop ()
    (sleep 1000)
    (if (string= (car (run/strings (osascript -e "tell app \"iSync\" to get syncing")))
        (run (osascript -e "tell app \"iSync\" to quit")))))

but it seems to me like that reduces script length at the expense of hiding the logical operations that the separate functions illuminate.

Regardless, I now have iSync update my phone every night without me having to do anything. Qapla'.

Monday, April 21, 2008

Beware Italians bearing Matzoh

Balducci’s, the expensive hippie grocery store “Food Lover’s Market™” where I go for lunch sometimes—like today—and where Bob and I had breakfast at JFK on the way to Hong Kong, had Passover Brownies for sale today. They didn’t have flour as an ingredient (duh?), so I suspect that they are similar to the “Warm Flourless Chocolate Waffle” available at Mike’s “American” Grill (which is very good, although they don’t warn you that the ice cream has caramel on it).

Anyway, on my way out I noticed that they had a whole Passover Holiday Menu (PDF) (“A memorable Seder dinner starts with our menu.”), so I picked one up to see what else they had. You can buy Matzoh Balls, Gefilte Fish, Passover Fruit Cheesecake, and Spinach “Matzsagna”. It all sounds very festive and convenient for Jewish families who aren’t so into cooking.

But then I noticed this in small print at the bottom of the last page of the menu:
NOTE: Many items on this menu are prepared in facilties [sic] that may process peanuts, nuts, shellfish, or other potential allergens. While all of our food is fabulous, it is not kosher.


Very strange. I’m so glad I don’t have to worry about this sort of thing. Chag Pesach Kasher v’Same’ach, everybody.

Monday, April 7, 2008


Today, by order of the Chief Judge of the Circuit Court of the City of Alexandria, Virginia, I was summoned to serve as a petit juror. (The term has to do with the number of jurors being typically smaller than in a grand jury; it is not, in fact, an affront to my stature.)

The summons said to arrive at 8:30, so I left my apartment slightly before 8:00 to give myself time to find parking. It turned out that there were spots available in the underground garage below the courthouse, so I was there and checked in by 8:20. It was a very pleasant waiting room, with a Dvořák waltz coming from the radio (which was tuned to WETA).

The man who checked us in, Travis Sweitzer, was very gracioso. He went out of his way to make everyone feel at ease and welcome and wanted, and he really seemed to enjoy his work. He sort of looked like a thinner, more fit Jimmy Kimmel, but with a goatee and infinitely less annoying.

Once everyone had arrived (three or four showed up right at 8:30, one a little after 8:40 (slacker!)), we watched a video about the Virginia justice system. I learned that in Virginia, you are not required to serve as a juror more than once every three years (so I'm good until 2011). I also learned that a jury is not always a group of 12. That's only for criminal trials for felony offences. Trials for misdemeanor crimes have 7-person juries, and juries for civil cases have 5-7 members, depending upon the magnitude (in dollars) of the lawsuit.

There were seventeen of us there, so clearly we wouldn't all be needed. The process by which the lawyers eliminate potential jurors is called voir dire, which is a French phrase meaning, "I think this juror would side with the other guy, so he must go".

Having watched the orientation video, we were now ready to serve as jurors. There was some time remaining before we were to go to the courtroom, so Travis called us up to get our $30 expense reimbursement (which he stressed was a reimbursement and not earned income - that means it's not taxable, w00t).

Armed with three Hamiltons each, it was now time to enter the courtroom. It really wasn't very impressive; sort of what I would expect if Matlock had been made with the budget of Wayne's World (before Rob Lowe got involved). In place of the elegant varnish and hard flooring of the courtrooms of Law & Order, we had white and blue paint and carpet, and plastic seats.

The judge was a nice lady from Fairfax, presumably filling in for the vacant third judgeship. She introduced the lawyers (one for the plaintiff, two for the defendant) and told us about the case. It was a personal injury civil suit. This one Chinese lady (wearing yellow with wavy hair) was accusing another Chinese lady (short hair, dressed in orange; made her look like a convict - bad choice) of assaulting her in the parking lot of a grocery store in Falls Church back in 2004 and causing her to break her ankle.

2004! Justice sure is swift, huh. I guess it's okay; Justice is supposed to be blind, and blind people are usually slow since they have to be careful not to run into stuff. Except for Rutger Hauer. He's like Daredevil but cool.

Anyway, then we got to the voir dire part. The plaintiff's attorney asked us (not in so many words) whether we were predisposed to think of him as an ambulance chaser, and if we would be able to award compensation for expected future pain and suffering. Two of us expressed reservations about that, saying it seemed like it would be difficult to predict the future. I asked what discount rate we would be asked to apply, but said I'd try my best to decide in accordance with the law. Another guy said he felt that in general there are too many frivolous lawsuits in America, but didn't specifically feel that way about this case (yet?).

The main defense attorney asked some stuff, too, and paid particular attention to the two jury candidates who had broken their ankles in the past (one goofing around as a kid, the other in Vietnam). They both assured him that their past experience would not bias them in favor of their fellow broken-ankle comrade. I guess they don't have Anklestrong anklets.

After the questioning, the lawyers marked down who the wanted eliminated, the clerk tallied the list, and… my name was on it. Along with most of the other people who had spoken up during voir dire. I think both of the broken ankle guys got to stay, though. So at that point Travis led ten of us out of the courtroom and wished us farewell. It was almost 11:00.

I used my $30 to pay the $6 parking fee and then I was out of there. I have no idea who won the case.

Tuesday, April 1, 2008

Bob and Jamie's Adventures in Hong Kong, Day 7

Sunday morning we checked out of our hotel. The concierge offered to hail a taxi for us, and made sure the driver knew where we wanted to go (Hong Kong Station, to catch the Airport Express).

We only had to wait a couple minutes before the train was on its way toward the airport. On the way, we passed by Tung Chung and saw the waterfront where we'd walked around as well as the Ngong Ping cable car. It was a lot more meaningful to me this time (I'd seen them going the other way the first day, too), since now I knew what the buildings were and where the cable car went.

When we got to the airport, we got our boarding passes and checked our bags (we had already checked in online back at the hotel), and then went to our third Burger King (which Bob says was the first one established of the four) for breakfast. Then we stopped by the Disney store so he could buy his cousin a toy and proceeded to our gate.

Before long it was time to board, and I fell asleep almost right away. I woke up for the meals and made it through a couple movies, but I slept far more on the return flight than I had on the flight there. This time we must have been riding in the jet stream, because rather than fly north over the Pole, we took a more easterly route over Japan and along the coast of Alaska.

When we were descending into New York, I marveled at the blue sky and all the houses in Queens and Nassau County; you just don't see anything like that in Hong Kong, which is predominantly smog-grey skies and apartment buildings. I was glad to be back in America.

We got through Customs without incident, rechecked our bags with American Airlines, and got through security with time to spare before our final flights back to Boston and Washington, so we grabbed lunch at the Brooklyn Deli (there was an ad saying "we'll make you a sandwich you won't refuse") and ate it by the gate. Before too long, it was time for me to board (10 minutes before Bob), so we parted ways and I found my seat on the plane. I started to read a book, but as soon as we'd taken off, I fell asleep again and didn't wake up again until we were flying over Great Falls on our final approach into National.

When the plane stopped at the gate, I could see the Jefferson Memorial from my window, and directly behind it, the Washington Monument.

Home at last.

Saturday, March 29, 2008

Bob and Jamie's Adventures in Hong Kong, Day 6

Well, it turns out we hadn't quite done everything there is to do in Hong Kong. After our final Délifrance breakfast of the trip, we rode the MTR to Tsuen Wan and visited the Sam Tung Uk Museum, a restored Hakka walled village. Our primary motivation, of course, was that Chow Yun-Fat is of Hakka descent.

We spent a good bit of the day there learning about rice cultivation and the traditional Hakka lifestyle and about how much Tsuen Wan has changed in the past 60 years. After World War II came refugees escaping the Communists, factories replacing farms, and all sorts of frantic industrialization and modernization. Meanwhile these old skool Hakka villages kept doing things the old ways until one by one they were relocated by the government. Sam Tung Uk was relocated in 1980 and turned into a museum in the late 80s.

When we were done learning, we went back to Tsim Sha Tsui and the Harbour City mall to have lunch at Oliver's Super Sandwiches. My roast beef wasn't exactly super, it had an inordinate amount of gristle, but the good half did taste good. We then wandered around the mall for a while (read: went back to Hong Kong Records again to look at movies), and then we made our way over to The Peninsula Hotel for afternoon tea.

We stood in line for about an hour, listening to live chamber music being performed on a balcony overlooking the lobby. The trio (a cellist, a violinist, and a clarinetist/flautist) played songs such as "Somewhere Out There" from An American Tale and "Can You Feel The Love Tonight" from The Lion King. So there we were, a couple of Latinos sitting in a hotel in Hong Kong founded by Jewish Indians enjoying an English tradition while listening to music from American cartoons.

It was awesome.

Most of the sandwiches and pastries were really good, although I wouldn't have chosen the salmon (Bob ate it). For dessert, they brought us tiramisu, except made with green tea in place of espresso. The tea itself was good, too, and they brought us more hot water when we ran out (Free refills, score!).

After tea time, we went back to Central to visit the IFC mall, housed in the tallest building in Hong Kong. The only record store there was Sam the Record Man, a small establishment with a bunch of really rare (and therefore really expensive) vinyl albums and CDs from Japan, including a sizable Beatles collection. We looked around a bit and wandered around a couple other stores before taking the Star Ferry back across the harbour to Tsim Sha Tsui.

From there, we went via MTR to Yau Ma Tei, to experience the Temple Street night market. This was, by far, the seediest place we went the whole time we were in Hong Kong; alongside the stands selling cheap souvenirs, bootleg movies and knock-off iPods and clothes (such as "Caluin Klein" boxer shorts) were a surprising number of shops offering sex toys and pr0n. Nevertheless, it was sort of a nice change from the sterile high-end malls with their Versaces and Louis Vuittons and guards who wouldn't let us sit on the floor even though there were no benches to be seen (that happened at Harbour City).

For our final dinner in Hong Kong, Bob and I were originally going to go to the TGI Friday's on Nathan Road (a couple buildings down from the Chungking Mansions) for old times' sake, but when we got there they had already closed. So, we went to the Outback Steakhouse downstairs instead. I bet that Outback gets a lot of business that way. I was happy to discover that they understood that I was capable of drinking more iced tea than would fit in their glass, and offered that holy grail of Hong Kong dining, (say it with me) the Free Refill.

After dinner, we rode the metro back to our hotel and packed our bags. We didn't want to risk oversleeping, so we stayed up until it was time to go to the airport in the morning.

Friday, March 28, 2008

Bob and Jamie's Adventures in Hong Kong Macau, Day 5

Since in the previous four days we'd pretty much done everything that can be done in Hong Kong, yesterday we decided to visit China's other Special Administrative Region, Macau.

It was a Portuguese colony from 1557 until 1999, and it really shows in the architecture and ambiance of the place. It's kind of like what I'd expect to see in a Chinatown in Lisbon, only much bigger and smoggier. Oh, and there are lots of flashy casinos. So, it's like of like what I'd expect to see in a Chinatown in Lisbon, if Lisbon were in Nevada.

Anyway, after breakfast at Délifrance, we went to the ferry terminal at Sheung Wan and got tickets on the 12:30PM ferry to Macau. At 1:25, we were there.

Our first stop was the Fisherman's Wharf, a vaguely Epcot-like theme park with areas representing cities and regions of the world. After wandering through a random Middle Eastern place ("Aladdin's Fort") with an attraction apparently based around a downed American Army helicopter (it's some kind of wargame thing), we passed by ancient Rome (complete with Colosseum) and stopped at Miami, which featured stereotypical pink and light green Art Deco buildings. It was just like the real Miami, but covered with Chinese characters.

Then we crossed the street and went to the Museu de Arte de Macau. A good bit of it was under renovation, but we got to see some interesting photographs and paintings of old Macau, as well as some stupid-looking modern Chinese art.

By this time, we were hungry, so we went next door to the Sands casino and ate lunch at the McDonald's inside. After that, we rode the Sands' free shuttle bus back to the ferry terminal, where we'd be sure to find lots of public buses.

Sure enough, we found one that took us to Avenida de Almeida Ribeiro, about a block away from Largo do Senado. We walked through the square (which was actually a triangle) and up a hill toward the Ruins of St. Paul's. On the way, we passed by half a dozen stores selling various flavors of almond cookie, including Almond Cookie with Pig Fat and, fortunately, plain almond. Those stores also sell many different kinds of jerky, made from beef, "veal of meat", pork, etc., and there are hawkers who chase you down the street trying to get you to try a free sample of their jerky.

After turning a few corners to lose the crazy jerky hawkers, we arrived at As Ruínas de São Paulo, the huge façade of a Catholic cathedral that burned down during a typhoon in the 1800s. While there, some schoolkids came up to us and asked if they could interview me (on film) for their English homework. I consented, and tried to answer the boy's questions, but I couldn't really remember the names of all the places when he asked what I'd seen so far; I hope his teacher doesn't count it against him.

It was hot and muggy out, so we stopped for some Häagen Dazs. While we were eating our ice cream, a police band started to play in front of St. Dominic's Church. After we finished, we walked around the hill to the back side of St. Paul's, where there was another bus stop. Our plan was to take a bus to the Macau Tower; instead, we ended up taking a bus going completely the wrong way, because when we asked the driver whether he was going toward the tower (I asked in English and Bob asked in English and in Mandarin), he said nothing in reply. Fortunately there was a passenger who heard us and told us to get off and which bus to take instead. So, we got off. At the bus stop we saw that our desired bus only came every 75 minutes. :-(

We waited for more than half an hour before deciding it was silly to spend all our time in Macau sitting at a bus stop watching the sun go down. Of course, as soon as we had walked away, the bus showed up and drove past us on its way to the tower. Lame!

We saw a shiny building down the street and started walking toward it, figuring it would be something touristy; instead, it turned out to be an amazingly large elementary school that hosts exhibitions. In front of it is Vasco da Gama Garden, with a big statue of (obviously) famous Portuguese explorer dude Vasco da Gama. Across the street was a hotel, so we hailed a taxi there and had him drive us to Macau Tower (finally!).

At the bottom of the tower they have some stores, and next to one they had a neat big Lego model of the tower. After admiring that, we went up to the top of the real tower. There are two observation decks, an indoor one on the 58th floor, and an outdoor one on the 61st floor. Unfortunately, the outdoor deck still has a bunch of glare-causing glass between you and the world, and it's not air conditioned, so we spent most of our time on the indoor deck. There was a lot of smog in the air, so we couldn't really see too far, but all the hotels had their neon lights going, so we could at least see them.

When we were done observing stuff, we took a taxi back to the Sands and walked across the street to see the Lotus Square. Then we took the Sands' free shuttle bus over to the Venetian Macau (they're owned by the same company), the largest casino in the world.

When we got there, we were hungry, so we went upstairs to the food court. On the way, we saw an indoor replica of St. Mark's Square (it was like something from Disney World, but with cigarettes and gambling everywhere). We chose to eat Hainanese chicken rice at the Rasa Singapura; we gambled that it would taste good, and we lost. :-( The chicken was cold (Bob, who has been to the real Singapore, says it isn't supposed to be), and the soup just tasted like salt water.

After we ate, we walked through the main hall to the front entrance (the shuttle had dropped us off on the back side) to see the casino's larger-than-life-size replicas of various Venetian buildings, including the Campanile di San Marco and the Ponte di Rialto. Thoroughly exhausted by now, we walked back through the casino to the bus stop and took the shuttle back to the ferry terminal, and took the 12:15AM ferry back to Hong Kong.

By the time we got back, the MTR had stopped running, so we had to take a taxi back to the hotel. We got into a taxi at the ferry terminal in Hong Kong, but the taxi driver started yelling at us in Cantonese when we told him where we wanted to go. I guess he was looking for a fare going across the harbour to Kowloon. We had better luck with our next taxi, and soon we were fast asleep in our hotel room.

Thursday, March 27, 2008

Bob and Jamie's Adventures in Hong Kong, Day 4

We tried to get back to Golden Bauhinia Square in time to see the daily flag raising ceremony, but when we got there the Hong Kong and People's Republic of China flags were already at the tops of their flagpoles. So, we looked at the flags and the statue in the daylight and went inside the Convention Centre to see the lobby and escalators featured in New Police Story.

Then we went to Délifrance for breakfast and had "Cheese Omelette & Ham Steak, served with Baguette", which also happened to come with a sliced tomato. While we were having that and a cappuccino, they were playing random French music, and at one point they played Charles Trenet's La Mer (featured in Mr. Bean's Holiday). After we finished eating, we came back to the hotel to get ready for the day.

Our first stop of the day was to the auction place for Bob to pick up his painting (which, after all, was the impetus for this whole trip). We took a taxi back to the hotel to drop it off, and the taxi driver seemed to have trouble finding it because we went in circles for a while (I guess the roads here are even confusing for the professional drivers).

Then we went to Tung Chung to visit the big Buddha statue on Lantau Island at Ngong Ping. Before heading out to the statue, we had lunch at the Citygate Outlets mall at a food court called Food Republic, which had counters serving food of lots of different Asian styles: Shanghainese, Szechuan, Japanese, Korean, Thai, Indian, and more. We had curry chicken from the Indian place.

After lunch we took the Ngong Ping 360 cable car over to see the statue. When we got there, we discovered that there was going to be a kung fu demonstration by Shaolin monks in the little fake touristy village at that end of the cable car line. It was a disappointingly short demonstration (no actual sparring), but still neat to see. Then we went over to see the Big Buddha.

As promised, it was really big. And there were lots of stairs to climb to get to it. Lots of stairs. It probably seemed like even more due to all the pollution in the air. Through the trees we saw a steeple or turret or something; when I asked Bob what it was (since he'd been there before), he said it was (and I quote) "some kind of Buddhist thing". He later clarified that it was the roof of a stupa.

The we walked the Wisdom Path, and saw the Heart Sutra carved in logs mounted vertically (I suppose as a way of taunting them into recalling their previous existence as actual trees). We started hiking a trail which would've eventually taken us to the Shek Pik Reservoir, but we had to turn around to get back to the cable car before it stopped running.

Back in Tung Chung, we walked along the waterfront and back to the mall. Being an outlet mall, it had a lot of discount clothing stores but no record store, so we didn't buy anything. At dinner time we walked across the plaza to Pizza Hut, where we ordered a pitcher of Pepsi. It was so nice not to have to so carefully ration my consumption of my beverage. In fact, it was almost a struggle to drink it all.

Then we went back to the mall for a little bit before riding the MTR back to our hotel. We were both exhausted from all the hiking around the mountains of Lantau, and slept on the subway; fortunately we had to ride that line from one end to the other, so there wasn't a danger of missing our stop.

Wednesday, March 26, 2008

Bob and Jamie's Adventures in Hong Kong, Day 3

This morning again started out with very low visibility, but it mostly cleared up during the day. Our first stop was Wellington Street so Bob could have a photo op next to the street sign (he grew up in Wellington, FL). Then we strolled through the open air markets on Gage Street and Graham Street, which will be featured in The Dark Knight.

Next we walked to the famous Luk Yu Tea House on Stanley Street and ate dim sum (it only took us three days to have a meal of Chinese food in China). I mostly stuck to the very tasty steamed barbecue pork buns, because almost everything else on the menu had shrimp in it. The waiter was a bit overbearing (he pretty much forced us to order some other dishes which I didn't really want; fortunately Bob likes the taste of shrimp) but that didn't keep it from being a really pleasant experience.

Oh yeah, and the waiter also refilled our tea every time he noticed we had taken a sip (the cup could still be half full and he'd fill it back up; I guess he's a pessimist). That's right! We finally found a restaurant in Hong Kong which offers free refills on the drinks! I was very excited about that. So, our experience at the tea house was much better than our experience at the Cuban restaurant. It seems that Hong Kong is better at Cantonese food than it is at Cuban food; go figure.

Next stop, Lan Kwai Fong: a street which is a popular hangout for expatriates. After seeing what was there (bars, mostly), we walked over to Jardine House to catch the bus. We took a double decker bus to HKU, which was kind of a harrowing experience. Bus and taxi drivers in Hong Kong seem to have no problem with careening down hills, turning corners at full speed, and playing chicken with pedestrians and oncoming vehicles.

Anyway, we arrived at Hong Kong University without incident, and got to admire the nice architecture of its main building. It has some neat-o columns and courtyards with goldfish in a fountain. Then we walked over to the art museum (our principle reason for going to the university) which has an exhibit on Nestorian crosses dating from the 13th century. We also got to see an exhibit of photographs taken in central Asia by Sir Aurel Stein, including some from Kashgar, which Bob had visited several years ago.

The museum also had a really neat collection of photographs documenting how Hong Kong has changed over the past hundred years or so, as the shore line has been artificially extended and more and more skyscrapers built. It turns out that once upon a time, the buildings weren't all covered by garish neon lights.

After we had finished seeing the museum, we took the bus back to Admiralty and rode the MTR to Mong Kok, the most densely populated place on Earth. Not surprisingly, the streets were pretty crowded. We walked through Ladies' Market (where you can buy things like clothes and jewelry) and Goldfish Market (where you can buy aquaria and fish and of course dogs) on Tung Choi Street, and then on to Langham Place, a big deconstructivist shopping mall with crazy slanted walls that's 15 stories tall.

I got a couple more Jackie Chan movies at CD Warehouse, and then we ate at the MOS Burger, a Japanese chain which invented the Teriyaki burger in 1973. Bob had one of those, and it had far too much mayo, like the ones we had at BK the other day; I had a MOS Cheeseburger, which was a cheeseburger with a big tomato slice and what tasted like sloppy joe mix. I paid extra for a large drink, since we were back in the realm of no free refills. We went back upstairs to the 80M Bus Model Shop so that Bob could get a model Cathay Pacific 747-400 with Pratt & Whitney engines, fulfilling a lifelong goal of having a toy model airplane.

At this point we remembered that we wanted to do the Star Ferry Harbour Tour tonight, so we took the MTR back to Tsim Sha Tsui. Since we had time, we went to the Harbour City mall to check out Hong Kong Records (the other major record store which we had not been to yet). I didn't find anything (all the interesting DVDs were Region 3), but Bob found a Zhang Ziyi movie and I think a Jackie Chan movie. It was almost time for the tour, so we made our way to the ticket booth at the dock, only to discover that they stopped selling tickets ten minutes before the tour is to depart. Blast!

There was going to be another tour leaving an hour later, so we decided to try for that one, resolving to return to the dock sooner this time. In the mean time, we went back to the mall and went to a Starbuck's inside of the LCX department store, which is itself like a mall, with restaurants inside of it (including a California Pizza Kitchen) and separate cash registers at each name brand's apparently autonomous area. While we consumed our beverages, we watched a cruise ship put to sea (Ocean Terminal is both a section of the mall and an actual pier). Then it was back to the Star Ferry dock for the tour.

This time we arrived in time to purchase tickets, and so we spent the next hour cruising around Victoria Harbour. We had vouchers for free refreshments (for having a coupon and presenting our boarding passes from our Cathay Pacific flight), so we got banana bread and canned Nescafé; we saved these for after the cruise so that we could stay outside admiring the view rather than have to sit at a table in the cabin. Back in Tsim Sha Tsui, we partook of our bread and fake coffee on a promenade in front of the Clock Tower and Cultural Centre. Then we took the Star Ferry back to Wan Chai.

Rather than head straight for the hotel, we took the scenic route around the harbor side of the Convention Centre, stopping to see the big statue in Golden Bauhinia Square, a gift to HK from the PRC on the occasion of the handover. Bob predicted that there would be mainlanders there taking pictures of it (the gaudy statue is apparently a source of national pride for them), and he was right. There were four or five Chinese women posing and taking each other's pictures with it.

I waited for them to move and got a picture of the statue, and then we continued around to the west side of the Convention Centre, admiring the view of Admiralty and Central. Then we came back to the hotel. And then I wrote this. And just now I wrote that last sentence. Next I wrote the sentence preceding this one. Finally, I decided that after writing one more sentence I would stop and go to sleep.

Tuesday, March 25, 2008

Bob and Jamie's Adventures in Hong Kong, Day 2

This morning it was smoggy and had a forecast of rain, so we weren't inspired to do as much as yesterday (which was a beautiful day). In particular, if we'd gone to The Peak today, we wouldn't have been able to see all that much. Fortunately, we didn't end up experiencing anything more than the slightest drizzle late in the evening, but I took my umbrella with me today just in case.

First we went back to the Havana Cuban restaurant in SoHo to have lunch. We really wanted to try their Cuban sandwiches, but all they were serving (other than appetizers) was a set lunch. So we chose to have the set lunch.

The set lunch consisted of a choice between tomato soup with sour cream or a weird cole slaw with apples and nuts for the appetizer; creamy chicken with rice and mixed vegetables, or steak with some weird sauce, or some kind of pork dish (I think) for the main course; a chocolate crème brûlée for dessert; and iced tea or soda to drink. My memory is fuzzy on the main courses because Bob and I both chose the chicken as being the most Cuban-sounding from the menu.

For the appetizer, Bob chose the soup and I chose the cole slaw (because I generally choose the non-soup option). Despite the really strange description and ingredients, it didn't taste bad; it mostly tasted like cabbage and carrots in some kind of mustardy sauce. I didn't taste any apple at all, and the almonds (or whatever they were) were mostly hidden by the flavor of the sauce. Bob finished his soup, so I would imagine he found it to be palatable. Either way, neither appetizer was particularly Cuban.

Next up was the main course. The rice was regular no-flavor-added Chinese-style steamed white rice, and the mixed vegetables consisted of peas, carrots, and corn. The creamy chicken ended up being cream of mushroom soup with chunks of chicken in it. Hurray. :-/ I picked out most of the big pieces of chicken, careful to avoid the hateful mushrooms infesting my dish, and I couldn't help but ponder how non-Cuban this meal was.

Last came the dessert: Kahlúa Chocolate Crème Brûlée. This was by far the best part of the meal (Bob went so far as to say that it was "quite good, although not Cuban"). It kind of just tasted like chocolate, with a texture between that of mousse and pudding. On the top of the puddingy part there was a layer of hard solidified something, which made my teeth stick together when I chewed on it; I must penalize it for that. On the other hand, it came with pieces of strawberry on the side (blueberries, too, which I left alone), so overall I would say that I liked it.

All in all, the food was okay, but the portions were small (kind of like at the Taco Bell in Demolition Man) and it was definitely Not Cuban. There was nary a bean to be found.

After lunch, we went downhill to Hollywood Road and walked along it toward Sheung Wan. We stopped in at the Man Mo Temple, which is a famous tourist attraction that happens to be a place of worship administered by a hospital (which strikes me as backwards).

It's a neat looking building which predates Britain's possession of Hong Kong. Inside there are lots and lots of burning incense coils hanging from the ceiling which constantly drop ashes onto the floor (or the heads of people walking underneath) and fill the room with a thick aromatic smoke. There are also idols to the gods Man and Mo (Literature and War), to whom visitors had left such offerings as a bowl of oranges or a half-eaten bag of peanuts. After we left the temple we descended Ladder Street and made our way to the Sheung Wan subway stop.

We took the MTR to Admiralty and visited Elim Christian Bookstore in the Lippo Centre. Here I got the typical souvenir of Hong Kong, a Korean-English New Testament. Bob found a Chinese-English hymnal and a Greek-Chinese-English New Testament. With our backpacks laden with wares, we decided to stop back at the hotel to unload, lest they get rained on later in the day (and to save our backs from unnecessary suffering).

After resting in our hotel room for a bit, Bob and I went back to Sheung Wan for dinner. We intended to go to a local Chinese fast food restaurant called MX, but they were closed so we went to Pizza Hut instead. Pizza Hut in Hong Kong is more upscale than it is in America, and much more inventive with its pizza offerings; it's a lot like California Pizza Kitchen. About half of the pizzas are made with thousand island dressing instead of tomato sauce. With that in mind Bob and I ordered a regular old pan pizza with pepperoni and green peppers (and tomato sauce). It was quite good, even though once again we couldn't get free refills of our Pepsi. Next time we should order a pitcher rather than individual glasses.

After dinner, we rode the metro to Kowloon Station and visited Elements, a new shopping mall. As usual, the different shops keep different hours, so when the HMV closed the ice skating rink was still open. Elements seemed like a really nice mall, but it was nearly devoid of people due to its out-of-the-way location in west Kowloon.

When we left the mall, we tried to walk over to the harbor (on the other side of a group of condos and the construction site of what will be the new tallest building in Hong Kong), but we were thwarted by cops. First we tried to walk between one condo and the construction site, and a cop came up to us and said that the area was closed.

Then we tried to circumnavigate the group of condos, but the ways were gated. There was a delivery access road leading behind one, but we spotted a cop sitting in a chair who surely would have blocked us if we'd started to walk toward him. So, other than fleeting glances, we didn't get to enjoy much of the view from west Kowloon.

Feeling slightly dejected, we rode the MTR back to the hotel, where we performed our American Coke vs. Hong Kong Coke taste test. American Coke, of course, uses high fructose corn syrup in place of Hong Kong's table sugar. I found the American Coke to be slightly less sweet and more acidic than its Hong Kong counterpart, but the differences weren't nearly as noticeable as the ones between the Kit Kats. They were more subtle and it was hard to figure out what exactly was different about one from the other. I left both bottles unfinished, so there will surely be a second round of experimentation later. Bob was there, too.

Monday, March 24, 2008

Bob and Jamie's Adventures in Hong Kong, Day 1

First we went to an ATM in Causeway Bay, which actually had money, as opposed to the one we tried before, which was in Wan Chai.

Then we went to the world famous Times Square, which is actually a big shopping mall, despite what Dick Clark wants you to believe.

We tried to find the Pizza Hut on Sharp Street East (we saw a billboard), but when we actually got to Sharp Street East, there was no Pizza Hut to be found. With heavy hearts, we wandered around aimlessly until we encountered a KFC and had dark meat chicken in our spicy chicken sandwiches (they're big on dark meat here). We also had seasoned waffle fries, which were really good. But no free refills on the Pepsi. :-( And no Mountain Dew. :-(

Still thirsty, we stopped by an incredibly tiny Circle-K the size of a newsstand and got replacement beverages, and walked to HMV: The Music & Movie Master.

They really are the music master, at least, because I found there (after years of no search results in America) the soundtrack to Bill & Ted's Bogus Journey. Hurray! Now I can listen to The Reaper Rap whenever I want. Legally.

I also picked up a copy of the HK version of Infernal Affairs, which, unlike its American counterpart, doesn't have Random Scantily-Clad Asian Chick on the cover. Instead, the cover has a scene that's actually in the movie and relevant to the plot.

After the record store, we went to Victoria Park, which is like Boston Public Garden but with more concrete. We happened upon a trilingual talking vending machine, which tried to get me to buy a can of Coke in a nice but staticy British accent. Instead I got a bottle of water from the mute machine to the right.

Then we made our way to the reflexology path, which is a sidewalk with lots of pointy rocks that you're supposed to walk on without shoes. It really did make my back feel better for a few minutes, but that might just have been because my feet were complaining more.

Following a brief unfruitful search for the statue of Queen Victoria, we decided to take advantage of the good weather and took the MTR to Central and then the Peak Tram to The Peak. After enjoying the scenery for a good while (I'll show some pictures later), we visited the second of Hong Kong's four Burger Kings (the second for us to visit; I don't know in which order they were established). Once again, there was too much mayo on my burger.

When it was time to leave, we saw the really long line for the tram and chose to go back down the mountain via minibus instead. The minibus only takes 16 people, and Bob was actually #17, but thankfully the driver didn't make him get off. We careened down the mountain at a good 50kph (the minibus had a big LCD speedometer above the driver's head) and got off back in Central.

We rode the escalator up to SoHo and found (but didn't patronize) a Cuban restaurant called Havana. We went back to the MTR station and traveled to Kowloon Tong and visited the Festival Walk mall. Unfortunately, the HK Records was closed already (each store closes whenever it wants), so instead we went to the Page One bookstore. The we rode the MTR back to Hong Kong Island. We stopped at 7-Eleven and purchased Kit Kats and Cokes for our taste test experiments, and came back to the hotel.

Back at the hotel, we compared American Hershey's Kit Kat (which we had brought with us) to Hong Kong Nestle's Kit Kat. The HK one had "cocoa butter replacer" instead of cocoa butter, and the American one had more milk. The American one had a strong taste of Hershey's milk chocolate with the crunchiness of the wafers. The Hong Kong version, meanwhile, had a more chocolaty but less intense flavor, such that I was able to distinguish the taste of the wafer along with the chocolate. It would be interesting to taste a Kit Kat which had real cocoa butter like the American version but otherwise followed the Hong Kong ingredients. Perhaps that's what I'd find in the UK.

Tomorrow we'll compare American and Hong Kong varieties of Coca Cola.

Sunday, March 23, 2008

Bob and Jamie's Adventures in Hong Kong, Day 0

Saturday, 8:00AM EDT:
There's a Balducci's in Terminal 7 of JFK! And, just like the one in Alexandria, the food is good but costs far more than it should. My English muffin breakfast sandwich (egg, cheese, and bacon) and Snapple green tea cost $10.

Saturday, 10:35AM EDT:
This plane (a Cathay Pacific Boeing 777) has regular American-style AC outlets at every seat! If only there were a little more legroom.

Saturday, 4:07PM EDT:
We just passed over Greenland(!) Who would've thought that Greenland, of all places, was on the way from New York to Hong Kong? Clearly, Mercator Projection maps have heavily skewed my perception of Earth geometry and geography.

I'm glad my children will grow up in a world with tools like Google Earth. Dead tree globes are, of course, also great (I especially like the ones with brown oceans... that old skool age of exploration style); I had one (with blue oceans... don't worry, Mom, I liked it ;-)). But with the spindle running through the poles holding it in place on the stand, it's still difficult to get a good feel for what Earth looks like from arbitrary orientations.

Actually, my first computer way back in 1995 (a Macintosh Performa 637CD - 68k power!) came with a 3D atlas CD-ROM from Electronic Arts (IIRC it was cleverly titled "EA 3D Atlas") which was very much a progenitor of Google Earth. In fact, it had some things GE doesn't have, like maps showing political borders or rainfall statistics rather than satellite imagery (it had that too, though not to the level where I could zoom in and see my back yard).

But its downfall for me was that it was slower than Google Earth on dialup - probably a consequence of running it on a computer with no FPU and only 1MB of VRAM. So, I never devoted the requisite hours to discovering that a Great Circle connecting New York to Hong Kong passes over Greenland.

My loss.

Saturday, 7:46PM EDT:
We're flying south over northern Russia now, pretty much due north of Chengdu, China. We came over a peninsula which sticks up into the Arctic Ocean. Noril'sk is to starboard, Jakutsk is (further) to port. Krasnojarsk is coming up on the right, and Chita will be on the left. This plane tracker in the TVs is pretty cool. 6:14 to go.

Sunday, 2:00PM HKT (Sunday, 2:00AM EDT):
We're there!

Monday, 12:00AM HKT (Sunday, 12:00PM EDT):
After getting our luggage and going through Customs, we went to one of the four Burger Kings in Hong Kong (three of which are in the airport). I had a teriyaki burger, which tasted really… different. It had too much mayonnaise, I thought.

Then we took the Airport Express (which is an amazingly silent-running train… they should teach the MBTA about track and train maintenance) to our hotel. After checking in and verifying that there were two beds in the room, we marveled at the view of the harbor as well as the gigantic neon advertisement for ING which is about 25 feet away from our window on the roof of the (shorter) building next door.

We left the hotel at about 5:45PM HKT and took the tram to Central and made our way to St. John's Cathedral (an Anglican church) where we participated in choral Evensong with The Cornell University Chorus and Glee Club. Their performance was very good, but Bob and I were both really tired and jet-lagged from our flight so we didn't really get a whole lot out of the service spiritually. Sorry, Jesus. The first hymn was "Jesus Christ is risen today, Alleluia", and it was just like the Mr. Bean sketch: as we were trying to find it in the hymnal, I didn't know the words so I just kind of hummed along (so did the guy next to me) until they got to the part where they sing the word "alleluia". It's not the same hymn that Rowan tries to sing, but it's very similar.

After the church service we took the ferry across the harbor to Kowloon. We walked along the waterfront and saw the Avenue of the Stars, which is Hong Kong's answer to the Hollywood Walk of Fame. We found stars for Jackie Chan, Bruce Lee, John Woo, and Chow Yun Fat (among others). Then we decided to stop at the ATM, but it was temporarily out of cash. :-( So, I don't have much money right now. Hopefully we'll find one tomorrow (today, as I post this) that's more accommodating. Anyway, then we came back to the hotel.

Saturday, February 2, 2008

A MacBook Pro Full of… Not Much, Yet

This is my first post using my spiffy new MacBook Pro. It's got a 2.6 GHz Core 2 Duo CPU, 4 GB RAM, and a 200 GB hard drive - quite the improvement over my aging PowerBook G4 (800 MHz G4, 1 GB RAM, 80 GB disk) which I've had for almost 5.5 years.

Alas, I will no longer be able to run OS 9 applications (not that I did that very often). I will also miss having Univers Condensed Oblique keycaps. At least my command keys still have Apple logos on them.

Anyway, so far I've installed Emacs.app, Tunnelblick, and ext2fsx, as well as Ubuntu 7.10 on a 10 GB partition… and that's about it. Oh! And a texinfo version of SICP, complete with ASCII art figures.

For backing up with Time Machine, I got a 1 TB LaCie Big Disk Extreme+ (I liked the name). It came formatted as HFS+ and it lets me use my shiny new FireWire 800 port.

Hurray for new toys. :-)