The Old Blog Archive, 2005-2009

Archive for the 'essayer' Category

Continue the journey where he once dropped

I wrote my first database application at 11. I was in the sixth grade, and the homeroom teacher needed a way to calculate the scores of each student fast. He was himself a computer enthusiast, first among a new generation of young teachers in Taiwan in the mid-1980s. The school had an early PC/XT (the Taiwan-made pirate clone, of course) at his disposal, and he knew one of his students had some gift on making computer work. And that seemed to me, as far as I could recall, how the journey began.

Before the teacher used Lotus 1-2-3. If all you needed was quick statistics, simple averages and sorting, that could be the best tool you needed. But Lotus 1-2-3 was not about bulk data entry and processing. The early day version didn’t have good group features (later features like pivot tables solved the problem), and the early version didn’t go with Chinese characters well.

So I wrote a program with dBase III, then the most popular, generic PC database application, and we had run two semesters of scores with it. I heard the teacher continue using it for another few terms, with only minor modifications.

Then for the next two years I wrote another few database applications, all in dBase III and one eventually compiled with Clipper. I can’t recall every one of them, but the list should include a business contact database, a department expense database, and a clinic patient record database. They all come with a visual user interface, form validation and all. The last of them, the clinic’s database, had been put in use for at least 5 years and had kept about 20,000 unique patient’s records, quite a number for a local clinic.

About 20 years later, during a casual talk, mom mentioned this in passing: “I marveled, why were you able to do the programming?”

Honestly I didn’t know and I don’t know.

Should I say it’s in the blood … I still remember the three dBase III books that dad bought for his reference at work, because they started introducing it in their company, and one thing that dBase III was different from similar PC database applications was the programmability, even if it came with crappy language design that was in the middle of no where and performed badly. But it was programmable, malleable and could be bent to the will (slightly) of a 11-year-old. It was magic, among other magical things like MS BASIC, Turbo C and Turbo Pascal.

Only after 20 years am I now finally able to untangle many of the unhappy consequences because of that–being able to do programming at such an early stage in the mid-80′s Taiwan. I mean, come on–it’s not such a phenomenon now, if we hear now in the late 2000′s that your neighbor’s kid knows programming in Python or Process or Mathematica or even in C (I do admit that knowing C deserves more of my amazement though). It’s not even a thing that you tag with the term “whiz kid” anymore.

But I just don’t think that’s what happened to me or to a few kids that I knew personally during that time.

If you knew programming as a kid in Taiwan in the mid-80′s, what was brought out of you could be determined in either of the three family settings. Say you are from a very good family, and your parents and relatives happen to know other people (e.g. university profs) that know what to do with it. Or you are from a rural family where your parents aren’t college-graduated and they have not a clue what you are doing.

I personally prefer the latter–although never is such thing a choice that, in the mid-80′s Taiwan, it was way better if your parents didn’t know the nature of your doings and you were simply left alone. I find–subjectively and biased though–that most people I knew that belonged to that category did the best. Not necessarily in terms of achievement, but in terms of that they later took the path of becoming a programmer or dropped it as some experience (like being able to play guitar or piano, albeit never professionally) and could smile at it.

The former wasn’t that bad either, but not as good as the latter. Chances are you were thought as a kid good at math and sent to the so-called class for the talented students (we have lots of that kind of thing in Taiwan), or if your parents were business-savvy, your software was packaged and sold. And if your parents were really, really business-savvy (that is, unlike many Taiwanese who blow their easy-come fortune), the money earned from your software would be put in trust, invested other things, and you started a software business world from that modest beginning.

Well, if I do the categorization, I’d say my family belonged to the third kind: somewhere in the middle. My parents didn’t really know what to do with it, but being upward mobile middle-middle-class in the mid-80s, they thought–or they took the advice from their peers–they could do something out of it, to the worst combination.

So here’s the ugly thing. My late father used the database software I wrote to try to help his colleagues or superiors. Actually, other than the business contact program which I willingly did for him, the other two apps were results upon his request. Not that he forced me to do it–I did have developed them with pleasure and fun.

The problem was I was paid naught, except for some perfunctory praises. I don’t think he got paid too, in the form of the due value, other than the imaginary “good karma” in the course of career-wise promotion.

20 years later, I have a better idea how much the app probably valued. A PC/XT clone, with 640 KB of RAM and a 20 MB hard disk drive, could cost at today’s equivalent of USD 3,000-4,000, a handsome sum. In the mid-80s the doctors were among the most affluent and most technologically savvy class in Taiwan, and they were indeed among the first to introduce personal computers into their clinics. A well-made database application, I was told only later, could be easily sold at USD 5,000-7,000 alone (again, at today’s value) and there was a demand for such packages–because there weren’t many during that time. This all excluding service (though then a rarely-heard concept), upgrading, maintenance and all.

I did have mentioned this to my dad when he was still alive, and later to mom when she mentioned all this in passing.

I can actually understand why we arrived where we were. Dad conceded that running a software business out of it wasn’t on his mind at all. He was, after all, trying to secure a job and working upwards–even if that meant he had to please his superior with what he had at hands. For example, I still remembered that I was brought to fix one of his boss’s computer at 11pm, reinstalling Windows 3.0 with early-day Excel and DOS-boxed Lotus 1-2-3 and all. I don’t think I was duly appreciated, and neither was my dad.

And mom said, “Son, really, we didn’t know what to do. And you never knew what you’d become even if you had your business plan running. I meant, it was in the 80s, and many whiz kids who earned their fortune did not end up well. Many of them even became lost because of the early fortune and the talent. Ours was not a culture that knew how to treat the precocious gifts well. We’re still learning, son.”

She’s right.

With hindsight, I wasn’t really troubled by all those under-appreciations that had to do with my database app. It was only after when I got into high school was I then told that writing database app was about big money (at least relatively big to a high school kid–you usually didn’t get a good bargaining because people thought it was written by a kid) and this or that senior of ours had made some money out of it. But database app written in dBase III or Clipper or FoxBase (later FoxPro) was despised by peers, because real high school kid learned C++ (then a novelty) and chewed on OOP jargons and boasted their male prowess in assembly language, among many other things (like sports, at which I am eternally awkward).

And then there were other teenage teethings and the troubled youth that I had. Some of them was still caused by the fact that I knew programming, because many teachers thought I should be good at math but I flunked high school math every semester.

I still did quite lot coding, first in C and later in C++, did come up with a few utilities, some half-baked full apps, even a never-finished interpreter of BASIC language with OO add-on’s.

But I was told, sometimes insinuated, that I was simply and totally unfit for computer science even if that was what I wanted to study at first, then even dad opposed vehemently too the idea of doing CS because he associated the study of computer with the drudgery of PC clone sales and probably (this I gathered only years after) the worthless programming–tinkering–that his son had done for his thankless superiors.

And in-between I had read some algorithm and data structure textbooks, read about system software programming and operating systems, computer graphics and software engineering, even some introduction to compiler implementation in C, some by myself, some with the help from a kind senior or teacher. I must have had glimpses of most parts of sophomore or even junior CS classes, but probably didn’t know when I read them, and throughout wished I had attended a vocational school (which my parents looked down upon, but I really fantasized countless times), because then I could have become more craftsman-like without the need to pass the math, which I flunked, six semesters straight, and being told that as a general high-school student, I was not fit for something I was simply able to do.

I finally gave up programming in 1995 after having finished my first year at college–I then majored in geography–and having passed calculus with passable grades (which healed my trauma about high school math). I did find some new passion in human languages and applied for transfer to do foreign langs. Probably once again without much bitterness just as I didn’t think too much about those database apps. But I did have thought that probably I would never do programming again. I did have closed the books, literally, by throwing or giving away every computer textbook that I had possessed before I was 18.

Thirteen years later, and after having run for the first one year my own software company with client projects and our own products humming, and as we have a modest beginning, and as I didn’t thought much about the efforts in doing the actual coding work and as mom mentioned in passing her surprise at how I came back, continuing the journey from where I dropped, and I thought, that dad would be proud, and that I have found something back, after all those years on the long and winding road.

Lately

Have been experiencing some ennui, fatigue, languor that I haven’t experienced for a long while. Perhaps the more energetic and productive the previous stage was, the stronger and the lower the other phase of the wave becomes.

Lately the fetish has been Twitter.

Gradually understood the notion of “being lost”. You don’t have to be disoriented to be lost. One can still be lost when he or she is there. It’s a inner-state, inter-state, and intra-state thing.

My room is a mess and so is the surrounding. Lately I often think about what Moby comments on his Hotel. Namely, hotel is a metaphor to the world we live in. We come and go, but the hotel room will be made again and still anew, as if no one has come before.

Responsibility has its weight and is never weightless even if you’re roaming (mentally) in a lethargic space.

“There is no way out for the time being.” I thought to myself. But hey. Should it be rather: “There is no way out for the time being being”, “There is no way out for the time being being“, “There is no way out for the time being been”, or “There is no way out for the time being been“.

Honestly, I don’t know.

Buddhist sutras, and some bits and pieces

Mom asked sister to read Amitabha Sutra (阿彌陀經) for dad. We had done this a few times since dad passed away. I roughly understood what the sutra was about at the first few readings, so when sister asked what this sutra is talking about, I did a rough explanation.

Some terms, such as arahato samasam buddhasa (阿耨多羅三藐三菩提, in Chinese it means 無上正等正覺, or satori in Japanese), do require some look up. This is when Wikipedia comes in handy. The problem with Buddhism-related entries on the Chinese version of Wikipedia, though, is that not all of them have cross-lingual links to other Wikipedias. Interestingly, this is where a little knowledge of Japanese comes to the rescue. Japan happens to be the farthest place to which Buddhism has spread in Asia, but it is Japanese that acts as the intermediary between the different language traditions.

Amitabha Sutra demonstrates many features found in oral literature: repetition, citation of names, and use of short, rhythmic constructs. The common cited Chinese version is the work of Kumarajiva (鳩摩羅什, 344 CE-413 CE), one of the greatest translators in the history of Chinese literature. Still, according to Yang Mu (楊牧), a Taiwanese poet, Kumarajiva’s translation is a mixture of transliterated Sanskrit and some “not entirely gramatically correct written Chinese”, and this contributes to “the exoticism found in the Chinese translation of Buddhist sutras”. Nonetheless, this “exoticism” has contributed a lot to the Chinese language. Many everyday phrase, notably incredible (不可思議, originally a measure of time) and ksana (剎那), comes from this translation practice. One common misconception, though, is the reading of kalpa (); the original Chinese meaning for this character means disaster and trial, but in Sanskrit it actually means a very, very, very long time.

What Amitabha Sutra teaches is simple. Told by Buddha himself, the sutra is about the paradise in which Amitabha resides and achieves his work. It is beautiful and has singing birds. A theological question concerning whether those birds shouldn’t belong to the paradise “because they are animals” (and animals belong to the Realm of Animal) is answered by Buddha. In order to enter this paradise, Buddha says, one needs to heed his teaching, and cite Amitabha’s name. But there’s no need to worry, because this teaching is good for anyone who “has expressed such willingness, is having such willingness, or will express such willingness” to be born in the paradise of Amitabha, and such teaching also works for anyone who “had lived, is living, or will be born to live”. And the teaching has lasted long enough (over five kalpa, which is longer than what human can imagine) and is also taught by gods of different worlds. Anyone who follows Buddha’s teaching in this sutra will be able to achieve arahato samasam buddhasa.

The reading of Amitabha Sutra and the citation of Amitabha’s name makes the fundamental of the Pure Land School (淨土宗). I have some problem with this practice. But the understanding of the sutra helped me understand why this sutra is read and cited in the ritual for the dead in Taiwan. It also helped me understand why mom would read the sutra for dad. For Buddhists, reading the sutra is among the help one could do for the dead.

There are two interesting things about Amitabha Sutra. Although not manifested, the sutra talks about the effectiveness of Buddha’s teaching, and how the faith in it can help the work of gods permeate both time and space, so much so that it works for anyone, including those who were no more (“who had lived”) and those who are to come (“who will be born to live”). This, in turn, demonstrates what books like Sophie’s World say about the Indo-European religions (and cultures, languages, and as a consequence, mentalities): the sensitivity and sensibility of time, the distinction and division between the past, the present and the future (and the further distinction between imperfect and prefect, and so on), the circularity of space and time, and the hope for salvation.

Learning about Buddhism is easier than before. Still, some Japanese or some basic knowledge about Sanskrit (some factual, Linguistics 101 things, such as the language has eight cases, or it has a complex but expressive tense system, or just that it shares many features with other Indo-European languages) will help you (in this case, myself) get a bit further. Actually one of my first paid programming jobs, in 1995, was developing a simple search engine for Chinese Buddhism texts collected by Buddhism Research Center of National Taiwan University. It was one of my first “extreme programming” experience (a friend of mine being the driver, while I observed and helped run the chores). The entire program was written in C, and the search was confined to Chinese texts. How the whole thing has evolved.

So these are the bits and pieces. We spent the evening doing these small researches on the web, learned something. Then some Ketil Bjørnstad over AirTunes.

The sense of loss will not go away. At least it will take another while before we would be able to carry on.

But I’m glad to have come to some more understandings, and equally glad to know that those will not be futile.

Travel and Travail

The older you get, the more boring travelling alone becomes. It’s different when you’re younger — whether you’re along or not, travelling can be a gas. But as you age, the fun factor declines. Only the first couple of days are enjoyable. After that, the scenery becomes annoying, and people’s voices start to grate. There’s no escape, for if you close your eyes to block these out, all kinds of unpleasant memories pop up. It gets to be too much trouble to eat in a restaurant, and you find yourself checking your watch over and over as you wait for buses that never seem to arrive. Trying to make yourself understood in a foreign language becomes a total pain.

H. Murakami, “A Folklore for My Generation”, Blind Willow, Sleeping Woman, London: Harvill Secker, 2006 (emphasis mine).

The More One Knows…

About this I have been thinking lately: we are not human RSS readers. It is true that it’s hard to write and talk about anything these days. Anything would require at least some googling (and that does not even constitute a bit of research), and to hold an opinion risks being ignorant, because there’s always some newer, better development that one simply can’t grasp. We have this much horizon and this much capacity of digesting inflows.

My observation is that some people turn into another extreme, feeding themselves on endless feeds and latest gimmicks or technologies, or anything. In front of them it’s hard to hold an opinion, because there’s always another side that they know while you, without that much digestion, don’t. Well it might not be a bad thing though, as they’ll always remind you how ignorant you are. Your opinions and ideas will run thru their most stringent scrutiny, and then be treated as yet another piece of work in the flow.

On the other hand, that scrutiny might stifle even the least silly effort to make a noise. And one might feel that to beat them (or to join them) one also has to turn himself or herself into one that digests.

Well, I have always been the silly that makes noise that might have been heard and said and spoken over and over. Reinventing the wheel while I could join the system and leverage and leapfrog. But if I make a noise because that’s what I feel like to and feel natural to, I guess I won’t give it up to the endless human RSS feeds.

Slowness

Lately I have found that I’m on the slow lane of everything in a fast-paced world. It’s as if my life is running so slowly that it’s become a grande lenteur. I’ve packed and come back to Taipei. There is angst, jitter, doubt, and fear. If it seems that people around have been into something, settled in, on steady progress, together with, my current state of affair (the other meaning is truly unintended) is closer to naught.

I haven’t really written anything, things that just came naturally. Either I stopped listening to them lately, or they stopped coming. I’m not sure which is the case.

Sometimes I try to cheer, not me, the other people. Steadiness is something one can’t feign, and sometimes people find me reliable. But lately I found the foundation upon which I built my house is turning to sand. Maybe it wasn’t a solid rock from the very beginning, but I didn’t know. My awkwardness is starker than ever. I keep falling out of the loop.

This is a very strange feeling. Can be terrible. I’m fine with it so far. The hard part is to say honestly that, “Look, I’m not the one you thought you know.” I tried to shed many things. In the end I still lost my temper, made horrible judgement, wrong decision, unrecoverable mistake. Weakness in personality starts to show its strength in making faux pas. And for “but I thought you had always wanted to be with … ” or “yet didn’t you say or show or express that interest in …”, the answer is yes, but no. Sometimes things came out as A, turned to be B. At least this is what’s happening to me, against me, around me, and inside me.

And I can only be honest about them.

There are dreams and hopes, ideals and convictions. Dreams and hopes are good but they need to be bridged. And bridges are hard to find. There are ends without means. Ideals and convictions are dangerous when they are passionate and blind. They are ends in themselves, and, by their nature, mean in their unforgivingness and relentlessness.

Ars longa, vita brevis. One thing they share in common, they are both difficile.

Montaigne, Classic Chinese Style


From Essays, Book II Chapter 12. The Chinese translation is mine.