The Death of Phyllis Li

Anecdotes are the opium of popular history. They are the easiest things to add into any historical narrative or description, need few or no connections with the general subject, and are seldom subjected to a hard look by picky reviewers. They are one of the rewards of reading stacks of dusty books, otherwise so often sadly lacking in useful data, and can be conveniently stored on file cards allowing easy retrieval.

Such anecdotes play an essential role in popular accounts of 20th century Chinese history, and are part of the traditional wisdom passed on from one sloppy writer to another, even when they are obvious errors, exaggerations, or lies. It is a hopeless task to try and get rid of all these anecdotes, but tilting at windmills is one of the fun parts of research and scholarship, and it never hurts to add a footnote to such stories, even if no one reads it.

My footnote for today is on an anecdote from Vincent Sheean’s autobiographical account of his career as a free-lance journalist, Personal History (1935). The book describes how Sheean traveled to China in 1927 and managed to interview several important people, including Michael Borodin, Russian advisor to the KMT and Chinese Communist Party, and Soong Ch’ing-ling, the widow of Sun Yat-sen.

Coming at a crucial moment for which Chinese accounts have been hard to come by, Sheean’s book has been cited by serious historians such as C. Martin Wilbur, casual writers such as Helen Foster Snow and Jung Chang, and hacks such as Sterling Seagrave. Unfortunately, the casual writers and hacks used the book with less care than they should have, as this post will show.

To understand Sheean’s anecdote, you have to know something of the historical background. The anecdote concerns Li Ta-chao (Li Dazhao), the co-founder of the Chinese Communist Party. Originally a professor at Peking University, Li was deeply involved in revolutionary activities in Peking from 1921 onward. By December 1926, however, Peking fell under the control of Chang Tso-lin (Zhang Zuolin), a general whose army held large portions of Northern China and who was strongly anti-communist.

The Russian government had earlier been recognized by the northern government and established an embassy in Peking. Beginning in 1924, the Russians had also established an alliance with the government of Sun Yat-sen, whose party, the KMT, had built a foothold in the southern city of Canton. The Russian condition for alliance was that the larger KMT accept individual members of the Communist Party. Sun agreed, and through Canton the Russians poured money, weapons, and advisors into China, in the hope of making China the next victory of Communist revolution.

Sun died in 1925, but his party the Kuomintang (KMT) continued, and in 1926 set out on a Northern Expedition intended to unify all of China, including Peking, under their control. Chang Tso-lin was of course opposed to this, and attempted to capture or kill the KMT and Communist Party activists in Peking. The activists, including Li Ta-chao and his family, took refuge in Russian housing in the Legation Quarter, the section of Peking where all the foreign embassies were located. The quarter enjoyed extraterritorial rights, meaning that it was exempt from Chinese laws and government.

After acquiring evidence that the KMT and Communists were using their refuge in the Quarter for revolutionary activities, the Peking authorities went to the Legation authorities and asked for permission to enter and arrest Chinese citizens in the Russian section of the Quarter. The authorities agreed, and on April 6, 1927, the Peking Police arrested about a hundred people, both Chinese and Russians, including Li Ta-chao, his wife, and two of his daughters. Li was put on trial, and together with 19 other KMT and Communist party members was sentenced to death by garroting (strangulation). They were executed on April 28th.

Sheean’s anecdote concerns “the revolutionary spirit” that Borodin transmitted to the Chinese around him:

There were educated Chinese girls who risked death in the effort to tell the workers and peasants who their real enemies were. One of these girls–we all knew her in Hankow–was disembowelled by Chiang Kai-shek’s soldiers on June 21st in Hangchow for saying that the Nanking war lord did not represent the party or principles of Sun Yat-sen. Her intestines were taken out and wrapped around her body while she was still alive. Girls and boys were beheaded for saying what they believed; men were hung up in wooden cages to die of hunger and thirst or were broken on the rack. Little Phyllis Li, the seventeen-year-old daughter of the hero Li Ta-chao, was tortured by Chang Tso-lin’s men for three days and three nights before they mercifully strangled her, and in the whole time she told them nothing. (Sheean, 227)

From a later discussion (Sheean 241-242), it is clear that this long description of the martyrs to the revolution is a quote from Soong Ch’ing-ling, who told Sheean these particular details on July 1st, 1927.

The development of the anecdote in print is not complex. Sheean first mentioned Phyllis Li’s death in a 1927 article in Asia magazine; the section of his 1935 autobiography quoted above was first printed in the Atlantic Monthly in Dec. 1934. The passage has since been quoted or used numerous times, including books by Helen Foster Snow, Sterling Seagrave, Jung Chang, and Gus Lee. Only Snow and Chang manage to trace the anecdote back to Sheean; Seagrave incorrectly attributes it to Harold Isaacs, and Lee simply inserts it into a dialogue without any citation.

The details of most of Soong’s anecdote are of course impossible to verify. The anonymous martyr in Hangchow doesn’t seem to align with the biographies of any well known figures. I have not found any newspaper reports of such gruesome incidents. Beheading apparently did occur at the time. The New York Times carried a story of street beheadings in Shanghai in Feb. 1927, but the norm of course was shooting. Wooden cages were used to display captured enemies. Fang Chih-min, a prominent Communist in the 1930s, was paraded through the streets of Nanchang in a wooden cage, but following this he was executed, not starved. I don’t know what the word rack is supposed to mean in this context; the western rack was not a common device in China.

The one figure who it is possible to identify is “Phyllis Li.” Although I have not found any other sources for the name Phyllis, the age makes it clear that the girl was Li Hsing-hua (Li Xinghua), Li Ta-chao’s oldest daughter. Li Hsing-hua was born in 1911, thus she was 16 in 1927; the one year discrepancy is due to using the Chinese style of counting age, in which you are one year old (yi-sui) at birth. However, Li Hsing-hua was not strangled in 1927; she died in 1979, at the age of 68. In 1943 she wrote an account of the raid, titled “Remembering 16 Years Ago”, which was later published in a book called “Biographies of Chinese Communist Martyrs.” This is now a very well-known account in China; it is used in the national Chinese language textbook for sixth grade. The essay is a sad tribute to her father’s memory and describes her own experiences during the April 6 raid (she was with Li when he was arrested), but she does not mention being tortured.

Going back to the source of the anecdote, it seems unlikely that Soong Ching-ling actually thought that Li Hsing-hua had been strangled. According to Hsing-hua, she, her sister, and her mother were all released on the 28th, the day of Li’s execution, so while her fate might have been unknown prior to then, her family and friends would have immediately learned of the news. Soong told the story to Sheean two months after this, and Soong’s connections with Peking were good; it seems impossible that she did not know Li’s family had been released.

So why would Soong lie? Soong told the anecdote to both Sheean and Rayna Prohme, an American woman working in Hankow, and Sheean writes that he thought Soong was trying to get Prohme to apply for refuge in the American consulate because of the dangerous situation in the city. This is as good a guess as any.

Sheean seems to have never discovered that the story about Hsing-hua was not true. This is not surprising; he was not an expert on China, read no Chinese, and probably never had occasion to reexamine this particular story, though he did maintain his friendship with Soong up until his death. That Foster-Snow repeats the story (Foster-Snow 140) in 1967 is surprising. Foster-Snow was very familiar with the conditions of the Chinese Communist movement, lived in China for a lengthy period in the 1930s, and continued visiting the country up into the 1980s. One would expect her to be better informed than Sheean. It is even more surprising that Jung Chang’s biography of Soong Ching-ling repeats this anecdote (Chang and Holliday 56) without comment; Chang grew up in China and should have been much more familiar with the story than her account shows.

Sterling Seagrave’s confused account of the anecdote (Seagrave 228, 485n) is typical of his style; Seagrave’s preference is for as gruesome as possible accounts of reactionary atrocities and their truth is secondary for him. Still, it is amusing that he misattributes the anecdote to Harold Isaacs’s book The Tragedy of the Chinese Revolution. Isaacs was an important source for Seagrave’s book, The Soong Dynasty, and the fact that Seagrave attributes Sheean’s anecdote to Isaacs shows how careless his research was. Gus Lee’s book (Lee 280) is supposedly a non-fiction biographical account, but it actually incorporates large amounts of fiction, with details of varying authenticity borrowed from various sources; in this case, he is probably using Seagrave.

The distorted versions of Li Hsing-hua’s experiences, repeated again and again for decades, show the hazards of using hoary anecdotes without checking. It also shows the distance that sometimes exists between western accounts and Chinese reality. In this case, it is literally true that these writers’ mistakes could have been corrected by a Chinese sixth grade student.

References

Chang, Jung, and Jon Halliday. Madame Sun Yat-Sen: Soong Ching-Ling. London: Penguin, 1986.

Lee, Gus. Chasing Hepburn: A Memoir of Shanghai, Hollywood, and a Chinese Family’s Fight for Freedom. New York: Harmony, 2003.

Sheean, Vincent. Personal History. Garden City, NY: Garden City Publishing Co., 1935.

Snow, Helen Foster. Women in Modern China. The Hague: Mouton, 1967.

Seagrave, Sterling. The Soong Dynasty. New York: Harper & Row, 1985.

Posted in History, Republican China | Comments Off on The Death of Phyllis Li

Spring semester is here!

Looking forward to seeing my students, hope everyone had a relaxing vacation and your grades were better than you expected…

Posted in School | Comments Off on Spring semester is here!

Merry Christmas!

And a happy New Year!

Posted in Quotidiana | Comments Off on Merry Christmas!

Mechanized Moodle

One of the main things I use Perl for is to manage my grading chores on Chi Nan University’s Moodle system. Moodle is a very useful teaching tool, one I’ve been using for over 10 years.

So if it’s such a great system, why use Perl? I’ve used Perl with Moodle for various reasons over the years, but the main reason I use it now is to download student work to my computer, process it using a variety of fast and dirty methods that are very specific to how I do stuff, and then upload the results, usually comments and grades, back to Moodle for students to review.

The problem with this is Moodle changes, often. Some of these changes are quite significant, requiring you to completely revise your workflow.

The university tries to avoid upgrading Moodle in the middle of the semester for just this reason, but when an upgrade includes important security and bug fixes, the school sometimes bites the bullet and upgrades, and as a result I’m stuck with broken scripts in the middle of the semester, as happened last week.

The way the script broke, however, helped me learn a little bit more about Perl and particularly its extremely useful WWW::Mechanize package, so I’m putting up this note to remind myself of what the deal was and to let the one or two stray readers out there know as well.

The main reason I use WWW::Mechanize is to put up comments/grades for my translation assignments. I generally have 8 to 10 single sentences for one translation assignment, and anywhere from 25 to 40 students, though I have had as many as 60 students in the past, meaning that for one assignment I might have to download 300-600 answers and upload 600-1200 grades and comments.

Why download answers? After all, Moodle has a grading interface for this kind of question. Well, I have my methods, as Holmes said, and they’re fast and efficient for what I do. Downloading is not a big problem, it’s just screen scraping. Uploading grades and comments, however, is a different story. Doing grades and comments on my home computer and then copying them manually to the Moodle interface is enormously time consuming and requires very close attention, or you will put the wrong scores in the wrong boxes, a highly embarrassing mistake.

This workload can negate all the time I save grading and commenting using my home methods, no matter how much more efficient they are than Moodle’s methods. To avoid this gigantic waste of time, I wrote a Perl script.

The script gets the comments from the database table where I put them after grading and commenting, and uses WWW::Mechanize to upload them to the school’s Moodle site; all I have to do is input the assignment number and the rest is…mechanized.

This means I don’t have to consider the time spent uploading to Moodle at all, and can put in all sorts of safety checks to make sure the right grade goes to the right person; these safety checks have meant that I often catch mistakes I might otherwise have missed. Anyway, Mechanize is the main workhorse in the upload process.

The main pain in writing this script was finding the parameters to upload the data through Moodle, but after a lengthy process of hair-pulling and many bad words, I finally got them all down. Unforunately, when Moodle’s grading interface changes even a touch, I’m screwed. Basically, I am screen scraping to get the parameters I need to upload my local data, and I have to put these in a properly formatted html form for Moodle to accept everything. Even minor changes in formatting can break my script, with the result that the data simply doesn’t go in.

This happened with the security upgrade just last week, a very typical example of breakable screen scraping. I ran the script to upload comments and grades for the latest assignment, and the grades went up, but the comments did not. Why? Why?? Why???

To find out, I turned on fiddler, an HTTP debugging proxy, and set mech to go through it as follows:

my $mech = WWW::Mechanize->new();
#$mech->proxy(['http'], 'http://localhost:8888/');

I also set Firefox to use fiddler and filled out the Moodle page there as well, then compared the results of ‘post’ through Perl and through Firefox to see what was going wrong. Here I omit several days of aggravation, pulling out what’s left of my hair, and many more bad words.

The short of the story is that the Moodle format did indeed change. My original script set the parameters for the original Moodle page as follows:

First I get my local data from an mysql table and format it using this loop:

while ( my ($cmt,$mark) = $select->fetchrow_array ) {
push(@CommentsGrades, [ textarea => $cmt ], [ text => $mark ]);
}

Then I use Mechanize to get the page and set the HTML form parameters like this (omitting where I input passwords and do sanity checks):
$mech->get($qpage);
$mech->set_visible(@CommentsGrades);
$mech->submit();

This is how simple Mechanize solutions can look.

The problem this time arose from the fact that the original Moodle page presented the student answer in a textbox, and then used a textarea form to get comments. The new version uses a readonly textarea form to present the student answer, and a second writeable textarea form to get comments. It also added a dropdown option box to let you decide how you want to format your comments (html, plain text or moodle enhanced). It put this between the comment box and the text box for the mark (grade). This confused the issue even more.

The solution for this change was to modify the array with the comments and grade like this:
push(@CommentsGrades,[ textarea => '' ], [ textarea => $cmt ], [ text => $mark ]);

Funky, isn’t it?

It turns out that the set_visible function keeps track of the parameters it sets by parameter type; my array had only one type of textarea variable in it, for comments, but the new moodle had two textarea variables in it, for answer display and comments; this made for confusions and set_visible tried to load comments into the readonly textarea, hence the comments were not accepted. I fixed this by adding a dummy textarea to my array before the comment textarea.

Why were the grades accepted? There is only one type of visible text box, the one for grades, so set_visible correctly inserted the grade value where it belonged.

As for the dropdown option box, you don’t even need to put it in the array (unless you want fancy formatting for your comments, I guess.) The missing option box will not confuse set_visible at all, and this surprised me; I thought a missing parameter like this would have a cascade effect, knocking everything off by one for each parameter, but since I didn’t put in any data marked as option => xxx, set_visible just ignored the option box.

And I learned all this at the cost of only a few thousand hairs, and however long I have to spend in purgatory for all those ‘sbloods! and ‘by the rood!’s.

Posted in Programming, School | Comments Off on Mechanized Moodle

Zotero to Endnote: part II

As I noted before, I use both Zotero and Endnote to do my bibliography work. For works that I have pdfs of, I keep these in a folder on D: drive. I use the same pdfs for both my Zotero and Endnote bibliographies.

Zotero can export to Endnote via the RIS format, so all seems well. Naturally, I want to have the locations of the pdfs included in the export from Zotero. Naturally, I don’t want to have the pdfs included with the export. Just include the location, not the file, right?

Unfortunately, using Zotero out of the box, when you tell it leave off the pdfs and export, it leaves off everything about them; if you tell it to include the pdfs, well, I have over 20 gb of pdfs, and its a long process.

In this post, I described how to modify the RIS export function in Zotero, so that it exports the names and locations of the pdfs, but not the pdfs themselves. This method works, but there is a hitch that I got hit with the other day and I note it here for future reference.

My solution involved a one line edit to Zotero’s RIS.js file. The hitch is that RIS.js is automatically updated whenever Zotero is updated. This naturally wipes out the one line edit. The solution is–check the RIS.js file every time you want to export, to make sure the edit hasn’t been overwritten

I only found this out when I tried to export part of my Zotero library to an .ris file in c:\my docs. But my C: drive is now getting very short of space, thanks to Windows XP (6 gb) and Acrobat (3 gb). No matter, I still have 5 gb of free space.

Export begins, but why so slow? Yikes! It’s copying all my attachments to the C: drive. Can you tell Zotero to cancel? Nope. Can you turn off Firefox? Nope. How much room do all my attachments take up anyway? 6.5 gigabytes! 6.5 gigabytes!! (I sound like Doc Brown in Back to the Future.) Only one thing to do. Turn off computer. No, no, no, bad idea! Well then, just delete the files as they are copied to c drive–one at a time (press delete, enter, 3000 times).

Ha! ha! ha!—he! he! he!—a very good joke indeed—an excellent jest. We shall have many a rich laugh about it at the palazzo—he! he! he!—over our wine—he! he! he!

Posted in Software | Comments Off on Zotero to Endnote: part II

Upgraded

Serious problems with my very old and partially scrungled ubuntu server finally forced me to upgrade both server and wordpress. So far so good; the new server is much more stable, and a couple of functions that were broken on the old wordpress site are now working. Still making the switch, just put the old web pages back.

Main wordpress change that any readers out there will see is in the permalinks, which I have changed to year/month/title links. Tried to get this to work on the old site, and failed repeatedly, to my great frustration. Turns out this was due to the default apache config file on ubuntu, which sets the /var/www directory to AllowOverride None. This not only shuts off mod_rewrite, it tells apache to ignore all .htaccess files. To get mod_rewrite working, you must set this to AllowOverride FileInfo.

Now able to schedule posts on wordpress; this was also broken on the old server.

This kind of stuff is not what I expected to do when I got a degree in literature.

Posted in Site news | Comments Off on Upgraded

perl win32 OLE arcana: 1

An obscure problem encountered while trying to set the cell background color in Excel:

$sheet->Range("q2q6")->Interior->{ColorIndex} =8;

returns the following message: OLE (0.1709) ERROR 0X800a03ec METHOD/PROPERTYGET “Range” at blahblah

A search turned up several long discussions that were ultimately totally irrelevant. The problem is that you can’t set color using this kind of range with this method; if you use this method, you have to do it a cell at a time:

foreach my $y (2..6) {
my $range = 'q' . $y;
$sheet->Range($range)->Interior->{ColorIndex} =8;
}

Posted in Programming | Comments Off on perl win32 OLE arcana: 1

Moving references from Zotero to Endnote: Part I

See the updated version of this post

Software to manage research references can be very useful indeed, and I’ve spent a lot of time using it to organize my references. Currently my two main programs are Zotero, an open source project, sponsored by George Mason University, and Endnote, the most widely used commercial program, published by Thomson Reuters.

There are many functions and options available in Endnote that are not available in Zotero, and also vice versa, so I want to be able to move my references back and forth between them. It is still not possible to do this completely, but there are ways to simplify the task.

One of the most annoying problems has been the difficulty of correctly importing pdf file links from Zotero references into Endnote references. Both programs allow you to put links to pdf files into your references, but there is a catch. When I export my Zotero references into .ris export format, I have to choose whether or not to export files. If I choose this, Zotero will physically copy all the linked files to the folder where the .ris export file is saved, copying them as slowly as possible, sometimes taking over half an hour for just a hundred references! What makes this doubly infuriating is that it is completely unnecessary, because I only need the link, not the file. And even after all this, it will still require hand editing to get the links imported into Endnote to conform to my pdf folder structure.

This is an incredibly annoying problem, but it can be easily resolved with just two keystrokes. Go to the “translators” folder of your zotero installation and use a text editor to open the file RIS.js Search for the following line:

att[j].saveFile(att[j].defaultPath);

comment this line out by adding two slashes in front of it:

//att[j].saveFile(att[j].defaultPath);

Now try to export some references. Zotero will still ask whether you want to export files; check the box, and Zotero will write ONLY an .ris file, with a CORRECT link to the location where the pdf files are really stored, eliminating the horribly slow copying, and the error prone hand editing problems that the old method produced. This means Zotero and Endnote can now share the same pdf files and folders, and you can move your references back and forth between the two programs without messing up the links to the files.

Posted in Research methods, Software | Comments Off on Moving references from Zotero to Endnote: Part I

Alice Munro wins Nobel Prize for Literature

Here is the story on BBC.

This was a surprising award; with the possible exception of Isaac Bashevis Singer, this is the first time someone who writes primarily short stories has won the Nobel Prize for literature. Even Singer is debatable; his bibliography lists around 20 novels, its just that a lot of people (like me) have said his short stories are his best work.

But Alice Munro (艾莉絲‧孟若) has written almost nothing but short stories. Her one novel, The Lives of Girls and Women, is basically seven or eight short stories held together by a common narrator and location, and is by no means her most popular or critically acclaimed work. In any case, the Nobel committee’s award specifically cites her as “master of the contemporary short story”, and that’s a description that has never been used before for a Nobel literature laureate.

I predict that this will be a very popular choice, simply because Munro is a very popular writer. She’s my favorite living short story writer, for sure. Unfortunately, the literature translation market being what it is in Taiwan (and China), she is very poorly represented in Chinese at the moment; short story collections are hardly ever translated because they sell so poorly. This is true in English, as Munro has often ruefully observered, and triply true in Taiwan and China. To my knowledge, the only one of Munro’s books available in Chinese is Hateship, Friendship, Courtship, Loveship, Marriage, translated as Ganqing youxi 感情遊戲 by Chang Jang 張讓, and published by China Times Publishing in 2003. Oh, there is also a partial translation of “The Lives of Girls and Women” by Lan Ya-chieh (藍雅婕), done as part of her MA thesis on Munro (Chi Nan University Dept. of Foreign Languages and Literature, 2004); this is currently the only thesis that has been done on Munro in Taiwan.

Posted in Literature, Translation | Comments Off on Alice Munro wins Nobel Prize for Literature

A belated hello to my students for the new semester

Hello to all my students,

It’s the beginning of another really big semester, and I’m late starting, as usual. I’m teaching fewer classes than usual this semester, working on a rather large project, but for the classes I am teaching, I’ve had fun meeting you in the last two weeks. The Moodle software has gone through another version, so I’m still learning the latest kinks, please excuse any delays in postings, etc. If you have any questions, drop me a line via moodle or my school email. And a special hello to the lucky people who won the big lottery and got me as advisor. We’ll get together later this month!

Posted in School | Comments Off on A belated hello to my students for the new semester