Movable Type via CDMA

Nice talk with Jia and Victor at night. It is late already. I’m now on a Dazhong taxi back home, passing by the Nanpu Bridge. The whole lighting system for the city was turned off already, so it is a little bit dark now.

I brought my laptop and connected to the Internet via China Unicom CDMA. (To get it, you have to purchase the card and subscribe their service.)

I don’t want to open computer and write an entry today. The car is moving and I am typing. So I call this entry:

Movable Type via CDMA. Have good night!

Waited Long for Yuxin Sichuan Dish

Yu Xin Sichuan Dish

3rd Floor, #333, Zhao Shang Ju Square,

North Chengdu Road 成都北路 (at the northwest corner of Weihai 威海路)

Reservation: 021-52980438

Many people in my team recommend it as the No. 1 Sichuan restaurant in Shanghai. I agree that it is a good one, although not sure if it is the best.

Really Long Queue…

When I called at 7:00 PM for reservation, the gentleman said they can give me a ticket with number, since there are many people waiting in line for seats already.

The number I got was 62. At the front of the queue, it is 20. It means, there are 42 groups of peoples are before us – that is easily 100 people waiting.

Around 7:40, we arrived only to find out the number they announce just past 40.

We waited until 8:00 PM to get a seat. At that time, the tail of the queue is 90 already. Their lobby was full of people waiting in queue, just like a railway station at the rush hours.

P.S. Canon 350D

I am pretty convienced that Canon 350D is a good choice for my bigger camera.


Image in coutesy of

I looked at Nikon before I bought My New Camera – Sony DSC-P8, and was Thinking about Sony F828. Now it seems Canon is a better choice. Do you have any suggestions?

Why Fudan University Only Accept Cash

Edwin spent 5 days reading this blog to prepare for his/her jouney to Shanghai for short term language program at Fudan University, but still have some questions to ask. Among them, this one is particularly interesting:

Fudan says I have to pay the tuition (4000rmb) in cash (why cash?) — my question is since i have to change such a large sum of money and walk around with it in my pocket, is it safe? Is it better to exchange money at the airport or would I get a better exchange rate within the city? Do banks take traveller’s checks or should I use cash? — I find this uncomfortable as I never carry that much cash here in my daily life so it’s weird for me…

Haha. I can understand how confusing Edwin is to bring big amount of cash in an unfamiliar environment.

It is Common

Cash is still the most widely accepted payment methods. Credit cards are widely accepted by services with better margin – restaurants, bars, shopping malls, many places still does not accept credit card. Even KFC, McDonald’s and PizzaHut does not accept credit cards in China.

Universities are among the slower mover in terms of commerical usage. I still remember the time when thousands of students carrying cash and waited in line to handin the tuition. This situation was changed in the year 1998 in Shanghai Jiao Tong University, when SJTU joined effort with ICBC (Industry and Commerical Bank of China) to issue debet cards to students.

However, it was wired at that year that when I deposited my 3000 RMB into the card, the university get the money out of my bank account without my approval. I believe this won’t happen today.

For short-term study, it is very common that they only accept cash. There is nothing strong here. So just accept it. :-)

Carrying Cash on the Street?

I don’t think anyone would say it is safe to carry large amount of cash on the street. So won’t I. But carrying cash is the only way to do that, my best suggestion is be careful. 4000 RMB is not that huge in Shanghai – many people take much more than that. It was because Cross Bank Money Transfer was not easy before some tools were put into use.

If you can choose, I suggest you to get the cash from a bank (Bakn of China) near Fudan University. You may ask where you can find the bank after you get to Fudan. To exchange at the airport is another option, but there is no discount to do that.

I have no idea about traveller’s check. It is not a common concept for people here, but I believe banks may accepted, or NOT. Check with your bank first. Citibank are here with a lot of ATM machines. You may ask their branches to get more information.

Wish you a safe trip (with the cash).

P.S. Found my picture in the Esquire magazine 2006.02 issue. It is a group photo occupying two full pages. I am not a fashion fun, and didn’t know what Esquire is. Is it a big brand in U.S? I guess so because many said Esquire is big. The Chinese version is named Shi Shang Xian Sheng (or translated as Fashionable Men).

Credit Cards Offer Discount at Preferred Stores

I hold credit card from the year of 1999. At that time, Credit Cards are not as popular as today. Most of the cards at that time are debut cards. But I never experienced discount offering as often as today.

When I went to the Coffee Bean and Tea Leaf at the Raffles City, I was offered again for 10% off for my China Merchant Bank (CMB) Credit Card. All sales above 50 RMB and paid via CMB card are eligible for the offer.

More banks follow to this kind of discount as their selected stores and merchants. This is good for consumers like me, and meanwhile, it is a clear sign that the competition on the financial service is heated up.

Now, the saving rate for individuals are as low as a little bit more than 2% (for one year), while the mortgage rate is as high as more than 5%. The margin for banks is high enough. The credit card transaction fee is also a very good business.

The discount may be the starting point of the new round of financial market adjustment.

Disclaimer: I don’t have financial knowledge. Just two cents on what I experienced today.

The Last Day of Vacation

Feb 4 is the last day of the 7-day long Spring Festival vacation. Tomorrow, all the business will resume. It is nice to have a pause and a lot of thoughts become clearer than before. As a book put it, the natural is full of working – and rest. The Sun, the moon, the four seasons and the tide of sea – there are almost no single object that keeps running but never pause. So to take a vacation meets the rule of the nature.

Today, I sent my car (Goudaner) for maintainance. Everything went on well, until at last, the careless driver drove the car to the washing room, but failed to brake. My poor car hit the wall and the head was crashed. How painful it will be if the car has a life. (Who told me, cars with a nick name lasts longer than those without a nick name?) I felt the pain. The FIAT service center promised to replace everything for free and lent me another white Palio Weekend until my car was fixed. OK. That is the best they can do and I can imagine. Of cause they also waived the fee for the maintaince. Well. Tomorrow, we will drive a different car. Although it is almost the same model as my Goudaner, I won’t call it with the nickname I have for my lovely car. This March 15th will be its second year birthday. Poor thing.

Beijing Winter 2006

Ice field of the Summer Palace.


© Jian Shuo Wang. Winter at the Summer Palace.

© Jian Shuo Wang. Winter at the Summer Palace.


© Jian Shuo Wang. Trees at the Summer Palace

Thanks Che Dong for bringing the USB cable to me. That helped me a lot. Otherwise, I couldn’t take pictures at the Beijing Airport today.

P.S. I am happy to have dinner with my friends in Beijing again. Che Dong, Ada, An Ti, Lu Liang, Ming Zhu… (Finally, I found we represented many High-Tech companies: Baidu, Yahoo!, eBay, Microsoft, New York Times, and Bokee…)

I Need a USB Cable

I remembered to bring my camera (SONY P8) with me during my travel but left the cable connection at home. It is a gray USB cable with a standard USB outlet on the one side and a mini USB on the other side. Without the cable, all my 128M pictures still sit in my memory stick in my camera, and I cannot transfer them to my laptop. There are many photos of Beijing that I cannot share now.

God of Fortune Arrived

According to the Chinese tradition, the 5th day of new year is the day the God of Fortune return to everyone’s home.

Last year in Shanghai, fireworks were stronger than the New Year’s Eve to Welcome to the God of Fortune. In Beijing, last night was a quite night with almost no fireworks. That is clearly the difference on culture and tradition between Beijing and Shanghai.

Added Commenter Profile Page to MovableType

If you check the site careful enough, you will see a small icon besides the name of the commenter. It is newly added feature – Commenter Profile:


The link on the icon will lead you to the profile page of the commenter, so you understand what comments he/she has posted before.

Since it is based on display name only, don’t always take it for granted that people with same display name are the same person. If you found your name are too common, choose a more unique name.


Below are the code I used. It is very massy, since I didn’t spent time to make it workable for others. It just fit the needs of this blog. I wrote it as if I were writting a blog entry. When what I try to express is completed, the code is completed. So take whatever you can take from the code, but don’t expect it to work on your MovableType directly. For those who don’t like tech stuff, sorry for posting techie again.


function dirify($s) {

$s = strtolower($s);   ## lower-case.

$s = strip_tags($s);       ## remove HTML tags.

$s = preg_replace('!&[^;\s]+;!','',$s); ## remove HTML entities.

$s = preg_replace('![^\w\s]!','',$s);   ## remove non-word/space chars.

$s = preg_replace('!\s+!','_',$s);       ## change space chars to underscores.

return $s;


$mt_blog_users = "";

$mt_blog_archive = "";

$file = '<Location of mt-config.cgi file>';

$cfg = array();

if ($fp = file($file)) {

foreach ($fp as $line) {

// search through the file

if (!ereg('^\s*\#',$line)) {

// ignore lines starting with the hash symbol

if (preg_match('/^\s*([^ ]+)[ ](.*)(\r|n)?$/', $line, $regs)) {

$key = trim($regs[1]);

$value = trim($regs[2]);

$cfg[$key] = $value;




} else {

die("Unable to open configuration file $file");


$db = mysql_connect($cfg['DBHost'], $cfg['DBUser'],

$cfg['DBPassword']) or die ('I cannot connect to MySQL.');


$query = "SELECT comment_author,

count(comment_author) as comment_count

FROM mt_comment

GROUP BY comment_author

ORDER BY comment_count";

$result = mysql_query($query);

$comment_author_previous = "";

$comment_author_next = "";

while ($row = mysql_fetch_array($result)) {

if($row['comment_author'] == $user) {

$comment_author_previous = $comment_author_previous_temp;


if($comment_author_previous_temp == $user) {

$comment_author_next = $row['comment_author'];


$comment_author_previous_temp = $row['comment_author'];


echo "<small><a href='$mt_blog_users$comment_author_next.htm'>« $comment_author_next</a> |";

echo " <a href=''>Commenters</a> ";

echo "| <a href='$mt_blog_users$comment_author_previous.htm'>$comment_author_previous »</a></small>";

$user or $user = 'Jian Shuo Wang';

$query = "SELECT entry_id, entry_title,

comment_id, comment_url,

entry_excerpt, comment_text,


date_format(entry_created_on, '%Y%m%d') as comment_entry_ymd,

date_format(comment_created_on, '%h%i') as comment_hourmin,


FROM mt_comment, mt_entry

WHERE comment_entry_id = entry_id

AND comment_author = '$user'

ORDER BY comment_id DESC

LIMIT 300";

$comment_url = "";

$comment_count = 0;

$html = "";

$result = mysql_query($query);

while ($row = mysql_fetch_array($result)) {

$comment_entry_id = $row['comment_entry_id'];

$html = $html . "<p>" . (nl2br($row['comment_text'])) .

"<p><small>Posted by $user at <

a href='" .

$row['comment_id'] . ".htm' target=_blank>" .

$row['comment_created_on'] .

"</a> on <a target=_blank href=$mt_blog_archive" .

$row['comment_entry_ymd'] .

"_" . dirify($row['entry_title']) .

".htm#" . $row['comment_hourmin'] .

">" . $row['entry_title'] .


$comment_url or $comment_url = $row['comment_url'];

$comment_count = $comment_count + 1;


echo "<h1>$user</h1><a href='$comment_url' target=_blank>$comment_url</a> ";

echo "Posted <b>$comment_count</b> comment(s)";

echo $html;