Thought dump
Posted by Chuck Vose Sat, 14 Mar 2009 13:54:00 GMT
Stepping off the plane in gloomy Pudong airport I was assaulted by feelings of strangeness mingled with familiarity. My biggest concern, typical for any computer scientist, was that I might be unable to access the Internet during my stay in China. Maybe the firewall was too restrictive or maybe Ethernet is implemented in a different way, that I would regret not bringing my cable crimper. Maybe everything I could access would be in Chinese and I would be unable to integrate without help from locals. Stepping off the plane I immediately recognized the familiar and comfortable signs for Wifi, cat5 jacks in the walls, and many, many laowai using the Internet in the terminal. Now that that was sorted I only had to convince a Chinese taxi driver to drive me to my apartment an hour away in a town that I had never been to where few people speak languages I can recognize; easy in comparison I think.
In a few days I will celebrate my two month anniversary of being in China and I’m proud to say that I can now order food by myself. Naturally, only food that I’ve had often and know the name of (I can’t read the menus) and only at a few restaurants (where they tolerate my pointing at other people’s food). But while I’ve lost some weight from not eating well and not eating any vegetables, which are a luxury here, I’ve not spent any less time on the Internet than I would normally. When I set out I had my concerns about the “Golden Shield” or the Great Chinese Firewall, but it turns out to be pretty easy to circumvent with a proxy. But while I had my concerns I was also very curious to find out how much Chinese people know about their own informational prison, whether they know how to circumvent the firewall and if they do, and how it’s affected their use of the Internet in general. But when it comes down to it China is basically the same when it comes to tech so my general experiences in China end up being much more interesting.
When you learn a new language what do you always start with? Probably something like, “Hello, my name is Chen Se.” Really, a hello world program for natural languages. But do you know the first thing you need to learn to say when you get into a foreign country is really not a greeting, probably the first is more like, “I speak no Chinese but I am very hungry, please bring me something to eat, I really don’t care what.” We rarely consider our needs when they’re being met, I have no idea how to say, “I need air!” in Chinese, the need has always been met, but I know a hundred ways to ask for particular foods and drinks yet I barely know how to converse. Friendship and companionship is so much farther down the list of needs compared to food, water and air that I’ve only begun to scratch the surface of that language.
When you begin to program most people make a “Hello World” program which exposes us to the essential grammar of a language, but like learning “my name is…” it is completely useless to the programmer. This leads me to believe that formal languages like natural languages must also have a way of learning a new language in an intensive way. If I ever learn spanish I will smack my teacher if he tries to teach us “my name is…” I don’t care, I want to learn, “What is that food? Waiter, please bring me this, it looks tasty”. What is the equivalent for a programming language? Is computing Fibonacci recursively closer to what’s needed or are there particular exercises that are necessary for a particular language in order to learn quickly? In Ruby I think monkey-patching String to print out all strings backwards would be a good “Hello World”. Naturally, some languages just shouldn’t be used so there is no “Hello World” program that will help someone program well in that language (cough, PHP). Maybe this is just a case of premature optimization, that “Hello World” has its place and things like Project Euler are there to take us farther.
In my Student Originated Software class we asked what it was that separated natural languages and formal languages, our answer was that ambiguities were the separation. However now that I’ve studied natural language more I’ve come to realize that even if a natural language was specified with EBNF it would still have the spoken component which formal languages do not typically have. For all my training in learning languages, I have learned at least seven programming languages, I am completely incapable of remembering how to say things. My vocabulary is excellent, my handwriting has been praised many times, in fact, anything having to do with the visual representation of the language has been a strong point but the spoken part is consistently difficult. I was unaware that the spoken language section of the brain was different from the written language part, my assumption that study of formal languages would make the study of natural languages easier has only been partly correct. What would be interesting would be to study Chinese Sign Language and see if that’s easier or if we have another language area of the brain for physical representations of language.
This makes me want to create a spoken programming language or a manual language but I’m not sure what these would look like.
As I write this last journal entry the Internet has crashed again. I can no longer communicate with America and I find myself wondering whether the Internet actually crashed or if google was just blocked, you always have to check multiple sites when in China because google has no more political clout here than anyone else; in this way it is a very equal-opportunity country. My understanding of the Firewall is that the border routers, the last routers before the end-user, have filtering software which searches through requests and responses before delivering them for illegal words. If a border router finds something it dislikes it will sever the connection and the user is presented with a generic network connection error. Further connections will be blocked for a few minutes however if the border router finds the bad text again from that website it will block for (a few minutes)^2, each time doubling the amount of time the border router blocks the entire site.
CCCP has been pretty brilliant about their scheme. A big warning page about illegal searching would be intrusive and scary, would scare a lot of people off the Internet entirely and sow discord. As it is now institutions that publish politically sensitive things just appear to be unreliable, which would make me question the sites ability to present accurate information also. As it is a blacklist system there are always holes and ways around the firewall, but they are a pain in the ass and for most things there are other news agencies and websites that may present the information in a way less objectionable to the border routers; this allows CCCP to make certain websites preferred. In addition China has been know to change the DNS of major ISPs so that their preferred sites are represented. For several months, when Google and China were fighting, all requests to google.com pointed directly to baidu.cn the search engine that the CCCP likes best.
The CCCP is masterful at minor manipulations which change people’s opinions, under Mao the second most powerful and prolific organization was the department of propaganda. While this department is significantly less powerful now the knowledge remains and students who graduate from college with art degrees are well versed in the psychology of propaganda. In the US I believe we call this Advertising or Marketing but the differences are not large.
Curiously, in my survey of foreign students 77% have known about the Chinese Firewall while only 13% knew how to get around the Firewall with a Proxy. Among the four Chinese people I was comfortable talking to half have known about the Firewall and one quarter have known how to get around it. I believe that the number of people who know about the Firewall is significantly lower in China because all information about the Firewall has been blocked (including my blog) and because it affects US sites much more than Chinese sites.
But do we know much more in America? I find myself questioning the American government much more here than I did at home. In many ways China is exactly like America, we both have a lot of corruption, we both have egregious human-rights violations, we both have the death penalty, but China is more blatant about these things. If Chinese people don’t know about the Firewall, because the CCCP is so good at what it does, does it make sense that the American govt. is any different? How do we know that there isn’t a Great Firewall around America? We had behind the excuse of the free-market but China’s market is much, much more free than America’s so I have to wonder whether our freedoms are being restricted without us realizing it. And if we do realize it are we really capable of doing much more than the Chinese citizens? We can demonstrate, something the Chinese people can’t do, but this seems to be effective at removing small players from politics when something really tragic happens like the WTO protests. The WTO still exists, the only thing that happened was a lot of Americas got gassed and hurt and one mayor lost his job.
When I stepped off the plane I stepped into a country remarkably similar to America. The Internet is the same except slightly more annoying in some regards, the animals we eat are mostly the same except they may have some more bones, and the government is still intrusive. My journey to China has taught me many things, but mostly it has shown me a little more about myself, my country, and my government that I hadn’t seen before. Only when you learn a powerful programming language do you finally understand how impotent your previous languages were in comparison and vice versa. It’s the comparison that is enlightening, not the new language. Visiting China has given me perspective on America, has shown me the things that I love and dislike and has made me question the motives of the US Government, whether they have our interests in mind and whether we are even capable of influencing policy. It has been enlightening.
