It’s my pleasure to announce that The Hit List for Mac version 1.1.11 and The Hit List for iPhone version 2.1.1 are released. They are both minor updates with the usual bug fixes and small improvements, but if you happen to live in China, these releases will change the way you use The Hit List in a big way: you can now access our Sync Service without having to go through a VPN or proxy server.
If you’d like to know the gory details, please continue reading, but otherwise, that was it. Thank you!
To jump right into the cause of the problem, the Chinese government, using what people call The Great Firewall of China (GFW) blocks access to many Google services. One such service is App Engine, where we host The Hit List Sync Service. As such, access to ‘appspot.com’ servers is blocked, including our own ‘the-hit-list.appspot.com’.
I read some reports about people having better luck connecting to custom domains that point to App Engine’s servers. So I prepared a test build that connects to ‘sync.thehitlistapp.com’ instead and tested it throughly from within China.
Many people don’t realize what it is like to access the Western Internet from China. You don’t realize how much you rely on Google until you can no longer access it, and not just for searching. Gmail? Not a chance. Did somebody post an answer to a question you’d really like the answer to in a Google Group? Too bad. And good luck loading websites that load Google-hosted content like JQuery or Google Fonts or Google Analytics too early in the page-loading sequence!
Anyhow, accessing the new ‘sync.thehitlistapp.com’ address was proving hit and miss. After further investigation, I found that the GFW blocks some of the IP addresses that App Engine uses. If something unacceptable is discovered, the GFW bans its IP address. Later on, if that address happens to be re-used by other App Engine sites—such as our Sync Service—the block will still be in place. Thus, access to our new sync server URL would work for about an hour and then not for the next hour, depending on the IP address that happened to be assigned at the time.
I had hoped that simply using a new URL would be enough, but faced with this extra obstacle, the only thing left to do was to set up our own reverse proxy service. Inside these latest app versions there is code to try connecting through our new reverse proxy service if the real service cannot be reached. The upshot being sync should now work reliably in China.
This was a lot more work than I initially thought was needed, but in the end, I’m happy to say that it’s all done now. The timing worked out great with the Lunar New Year holiday. To our Chinese customers out there, happy New Year of the Sheep, and safe journeys to and from your home town. We hope you’ll use the sync capabilities in great ways in the new year.
— Andy Kim
P.S. Our Mac developer community colleague Craig Hockenberry experienced something odd with the GFW. I personally experienced the same thing—namely, being redirected to random sites, some of a rather “adult” nature!—when trying to access Facebook or Twitter from China. If you’re interested, be sure to read his posts about China and The Grass Mud Horse.