Saturday, January 31, 2004

It's a beautiful day. We opened the windows to the apartment earlier, and I can hear the sounds of the wind rustling the branches outside. I plan to go walking with Winnie in about an hour when she arrives in El Cerrito. For the moment, though, I need to stay near the phone -- so it seems like a good time to catch up on some writing.

I already spent some time outside today. My bike is in working order again at last, and I took a ride around the block to try it out. Traffic aside, it was grand to be out riding again. Before the bike ride, I walked to the post office to drop of some mail, and from there to Barnes and Noble for a morning cup of coffee and some browsing. I deliberately left my glasses at home, a tactic which I find usually keeps me from becoming so engrossed in browsing as I otherwise might. Glasses or not, though, I was distracted today. I have two new books in my collection: The Pig Who Sang to the Moon by Jeffrey Masson, and The Value of Science, a collection of three books by the famous French mathematician Henri Poincaré.

Sadly, Poincaré is not as well-known outside mathematics as he deserves to be. He was a giant in mathematics, a physicist of no mean skill, and an author of several popular science articles for the general public. The article cited above (from an excellent site on the history of mathematics) ends with the following quote from Poincaré's funeral, which I think is quite well-put:

[M Poincaré was] a mathematician, geometer, philosopher, and man of letters, who was a kind of poet of the infinite, a kind of bard of science.

We need more such figures today (and not just in Georgia).

My proudest accomplishment of the week is, alas, probably an insignificant one. On Thursday night, I finished writing (rewriting, actually) a small program to print mathematical documents typeset by Kahan for an Epson FX80 printer using a custom font. My program generates Postscript code, which I then usually feed through ps2pdf to obtain a PDF document. Unlike previous versions, this code correctly handles all of the documents which I've received from Kahan over the past couple years, including switching back and forth between fonts. And if the code ever does encounter a special character that I forgot about, it will fail gracefully -- an error message describing the unknown character will be sent to the console, and a placeholder will go into the document.

It may not be the most marvelous thing I've ever done, but it was a lot of fun to write.

If I had any doubts that the spring semester is well and truly underway, they would be quashed after a glance at the seminar schedule this week. The matrix computations seminar began this Thursday with a special seminar -- Gene Golub spoke about the solution of real positive nonsymmetric linear systems -- and there was a guest from Japan who spoke on Friday about some of the work done at Chuo University on combining measured data with finite element models in order to more accurately predict microsystem behavior. I attended both those meetings, but I missed both the presentation by MEMSCAP representatives (MEMSCAP runs several standard MEMS fabrication processes) and the presentations for Sensor Nets Day. The seminar calendar is full of other presentations, too -- they might be less relevant to me, but some sound interesting nonetheless.

One of those interesting presentations is coming soon, but remains to be scheduled. My fluids professor is hosting a visitor this semester who is, among other things, an expert in creeping flows and lubrication theory. We've been talking for the last two weeks about creeping flows. Creeping flows are flows in which viscous effects dominate inertial effects. Think about trying to move a marble through cold honey, by way of example -- unless the marble is fired into the honey at high speeds or something similarly implausible, you can neglect the inertial forces (the ma term in F = ma). Since inertial forces scale with volume, it's usually possible to neglect inertia when dealing with very small objects like single-celled animals or microsystems. Since I spend a lot of time thinking about micron-scale machines, creeping flows are particularly interesting to me. Lubrication theory deals with creeping flows in narrowly confined channels -- like the layer of air between a transparency and a projector, the layer of air that supports an air hockey puck, or even a layer of drying paint. A lot of the flows in MEMS involve creeping flows in a thin film of fluid, so lubrication theory is pretty relevant to me, too. So I'm looking forward to this presentation, even though I don't know when it is.

Of course, the fact that it is relevant to my research is an excuse, if a true excuse. The real reason that I'm going is because I think the topic is intrinsically interesting, and because it sounds as though the presenter is one of the grand old statesmen of fluid mechanics -- and such gentlemen often have an entertaining presentation style.

Of course, going to lectures costs time and attention. After the presentation on Friday by our guest from Japan, I and some of my colleagues presented on MEMS simulation, design, measurement, and model verification in which we've been involved. I'd heard most of the presentations before, but felt obliged to stay for the sake of politeness. Polite or not, though, my concentration was spent halfway through the second mini-presentation. I'd have probably felt miserable and started pining for a coffee break if I hadn't had my pencil and pad with me. As it is, I doodled my way through some calculations which I think may prove useful. I need to sanity-check them tonight or tomorrow in order to be sure.

Monday, January 26, 2004

I added command line history and a proper X11 refresh loop to FEAP this morning. It took perhaps an hour of reading last, another half hour this morning, and an hour of coding, testing, and debugging. That was about as I estimated -- which is surprising, as I'm not very good at such estimates. The rest of the day was not as productive. I seem to be prey to a dark and distracted mood, and did a lot of wandering in circles.

I enjoyed the social dance class yesterday. After dancing, we read, and then ate Indian food. It was all quite good.

Sunday, January 25, 2004

I took a walk this afternoon. I'm out of English Breakfast tea, and planned to get some more from Peet's Coffee and Tea on Solano Avenue. It takes me just under half an hour to walk there from my home in El Cerrito at my normal clip. I'm not sure whether it took more or less time today, as I was trying to walk and read at the same time. Eventually, I gave up on that idea as too hazardous; there are just too many dog leashes stretched across the walkway (not to mention too many cars in crosswalks, or parking meters and lamp posts along the sidewalk).

I had a bite to eat and read for a while at the Cactus Taqueria near the top of Solano, then turned around and walked home. I didn't stop at Peet's. I took a different route home than the one I usually follow, and my wanderings took me through the center of Kensington, past the old mission-style chapel. The view from there is beautiful, even on a cloudy day like today. The sky was slate grey with clouds, but I could still see the Bay, the bridges, and Albany Hill.

After I returned home, it occurred to me that if I'd planned to pick up cheese as well as tea, I could have been part of a Wallace and Gromit episode. All I'd need would be a dog. Okay, I'd need some improbable tools and perhaps a herd of sheep, too, but it's the thought that counts. And the tea and cheese counts, too.

I shared a dinner of chili and rice with Patxi and Esther this evening. Esther made cornbread. She replaced the usual vegetable oil with olive oil -- necessity being the mother of invention -- and the result was quite tasty. We also had grated cheese laced with jalapenos for the top. It was delicious. As I was preparing the rice, Esther commented -- not for the first time -- how odd it was that Patxi and I prepare rice in a pot. It seems that many of my friends who eat a lot of rice use a rice cooker, and are a little bemused that we would prepare decent rice without such a gadget. In fact, Patxi and I do have a rice cooker, but it invariably burns the rice, and so we rarely use it.

Otherwise, today was a lazy sort of day. I thought I might do some work, but I was distracted and instead spent the time reading about cascading style sheets and about various GUI toolkits. I also spent some time reading various articles about intellectual property. There was a NY Times Magazine article on current battles over copyright, and I'd recently filled out a member opinion poll for the US ACM policy arm regarding legal protections for data collections. And it all set me to thinking.

The ACM poll results, last I looked, were very telling. About 80 percent of the respondents strongly agreed, and another 10 percent agreed with the ACM's position that current legal protections are adequate. But software developers have depressingly little clout when it comes to the actions of Congress and business. The SCO law suits seem to me more about businesses hiring lawyers to march to war than about any real point of technical merit. Diebold would be in far better shape if only they listened to their programmers before releasing their voting machines. Large companies can afford to engage in patent warfare, and they do so -- but the programmers I know agree almost uniformly that software patents as posed now are just foolish. And so it goes.

The current environment in the US with regards to copyrights and with respect to cryptographic export restrictions means that some software projects are migrating abroad -- and no longer accept input from American programmers. Those who warn of cyber terrorists urge industry and academia to address problems with the current computer security infrastructure, but judgements based on laws like the DMCA discourage researchers from pursuing those same problems. Similarly, various agencies seem to feel it's important to ensure the existence of another generation of researchers competent to analyze physical threats, whether they be biological, nuclear, or whatever; but at the same time, foreign graduate students who come even close to those areas face intimidation and woe, and domestic students... well, it seems that more domestic students want to go into business than into science or engineering.

After all, business is where the money is.

Thursday, January 22, 2004

Happy Year of the Monkey! Gung Hay Fat Choy!

I wrote today.

I've been thinking recently about mathematical writing. It's a tricky business. Ideally, mathematical writing should simultaneously be concise, precise, elegant, lucid, and correct. Each goal is difficult in its own right. Further, there is tension in these goals; sometimes it is easier to be lucid by writing (at least initially) an imprecise or slightly incorrect statement which conveys the idea of a proof, then filling in corrections later. The conventions used by most authors are a compromise. It is hard to write proofs which are precise and correct without sounding stilted, because ordinary speech patterns are often too vague. There is a reason why we write let k be an integer instead of k is an integer; the former sentence defines the type of k, while the latter sentence observes a fact which might be a consequence of something else (e.g. Let k = m + n where m and n are integers. Then k is an integer).

There are other conventions, too, which students of mathematics absorb over time. The phrase for suppose not usually starts a proof by contradiction; the phrase without loss of generality means that the proof treats a special case to which all other cases can be reduced trivially. Even the vague-sounding phrase almost everywhere has a precise meaning: a statement holds a.e. (almost everywhere) if it is true except on a set of zero measure.

I recently read a draft of a paper which severely abused the conventions of mathematical style. It was not a mathematical paper, and I think the author only adopted the style because he thought it sounded impressive. I read the paper slowly, marking as I went, and when I finished I walked to the bathroom and washed my hands and face with hot water until I felt better. I was in the bathroom for several minutes.

My favorite mathematical authors usually write two or three descriptions of their ideas. First, they describe the idea at a high level, often in intuitive language: this quantity describes how close a matrix is to being singular; this theorem describes why we cannot comb a sphere covered with hair without creating a part somewhere. Then there may be a special illustrative case, something to show the idea without the baggage of technical details -- though the technical details may be mentioned so that the reader is alerted to their existence. Finally, there is a theorem and a proof, which should ideally be written using a concise and suggestive notation. If done well, the reader is left pondering the ideas presented, and does not have to battle constant confusion because the author has decided to make n approach zero as an integer epsilon goes to infinity.

I cope gracefully enough with authors who present their intuition clumsily. Similarly, I'm entirely sympathetic to authors who occasionally resort to awkward devices or notation in their proofs. But those who write a vague and imprecise proof sketch and claim they are done irritate me immensely, as do those who write enormous quantities of unmotivated (and often irrelevant) algebra without even attempting to help the reader develop a mental road map first.

Concise, precise, elegant, lucid, and correct -- that's my ideal. I read few papers, mathematical or otherwise, that do well in all categories. I'm still critical of my own ability to be simultaneously concise and lucid, but I leave room for self-forgiveness. And I make progress, however slowly.

If only I could apply the same criteria to political speeches!

  • Currently drinking: Hot water with lime

Tuesday, January 20, 2004

Oh. All I needed to get my code to link under Solaris was to use the -mimpure-text option. Obvious, yes?

I don't really hate computers. And I don't hate Fortran 77, either, my frequent complaints notwithstanding. But that sort of linking problem sometimes makes me drift from a Muppet personality of Gonzo (generally friendly, if a bit confusing) to something more like Miss Piggy (Hi-ya!).

I think it's time for lunch. Maybe I'll play the Swedish Chef for a few minutes.

First day of classes for Spring 2004! The first fluid mechanics lecture is this afternoon; the starting topic for the course seems to be flow at very low Reynolds numbers. Fun stuff.

I bought a bookshelf and an under-bed plastic storage unit at Target on Saturday. I carried it home, assembled it, put books on it, and suddenly found that I could see the spines on most of my books! But there was still some double-stacking, and if I put one more book on my desk I would probably reach critical mass and the whole pile would self-destruct. So after we returned from a dance lesson at Stanford, I asked Winnie if she would drive me to Target for a second set of shelves. She was willing, and getting the shelves home proved much easier with a car. So on Sunday night, I assembled another set of shelves, reshelved the forty books on my desk (I counted) and shelved the remaining double-stacked books. I filled up two of the three shelves in the unit, so I have some room for expansion.

Whee! Books! I found a few that I thought I'd lost or loaned away. Hello, Mythical Man Month! Fancy meeting you here.

Yes, I talk to my books. No, they don't talk back.

I spent the morning of MLK day reading prognostications about a digital Pearl Harbor, stupid patent tricks, and a college kid named Mike Rowe who set up a site called MikeRoweSoft -- and was sued by Microsoft for it. I came away growling. Computer security experts whose sole qualifications are in management of a security-related company, or in dire prognostications, can do an awful lot to improperly alarm a credulous public. Is computer security important? Yes. Do these authors form plausible scenarios, or write about countermeasures that make sense? Well, some of them are probably the same people who think it's vitally important that public restrooms in the BART train stations be unavailable in order to thwart terrorists (who presumably will be so distracted by full bladders that they'll become confused and head home).

I spent the afternoon and evening becoming equally irritated by linker errors on Solaris. I fixed my interface so it should now actually be portable. But I don't think the thirty pages of linker warnings have anything to do with my code being correct or not; I think they have something to do with the linker receiving the wrong options. I could be wrong, though. The error messages are singularly unhelpful, and the code takes long enough to compile that trial-and-error is trying as it is error-prone.

Sunday, January 18, 2004

Monday -- now technically tomorrow in Pacific Standard Time -- is Martin Luther King day. It's a big deal in Berkeley, even more so than Indigenous People's Day (known as Columbus Day in the rest of the country). It was a big deal when I lived in Maryland, too. Enough of that attitude has transferred that I still take a few minutes every MLK day to listen to the radio when the I have a dream speech plays.

I've thought a lot recently about another dream: men on Mars. Books on Mars are a sci-fi staple, probably because Mars is the only planet in the neighborhood we could plausibly survive on. I've read many books from the Mars sub-genre. I've read Heinlein's Red Planet and Kim Stanley Robinson's Mars trilogy and various others, good and bad. I think the dream of Mars is exciting; and for a nation where ever-fewer students want to study engineering and the sciences, I think that excitement is important.

I also think that an unnerving fraction of the unmanned missions sent to Mars have failed. The current Mars rover is inspiring, and that robot is almost certainly a more appropriate choice than a human at this point. I remember watching the Challenger go up -- and blow up -- in elementary school. I remember how NASA had to struggle to leave the shadow of Challenger, and I wondered if I would watch history repeated with the Columbia. To more than one generation, astronauts are heroes, and the death of such heroes is hard to take. I wonder if we will rush to send the first men to Mars, only to find men lost, hopes dashed, and NASA irreparably damaged.

Mars is a noble goal, and I'm impressed by it. I'm less impressed that the first steps involve taking away funding from other productive projects -- like the Hubble -- and promising insufficient additional funds. If the project is to be undertaken, future administrations will face hard fiscal questions. Of course, those fiscal problems may be minor compared to other future fiscal difficulties resulting from Bush administration policies. I was disturbed to hear Paul O'Neill's quote of Cheney: Reagan proved that deficits don't matter. Carpe diem! I do not think we have the funds to commit to a manned Mars project done right; and a manned Mars project done wrong will reduce funds and prestige available for other space-based science. I also agree with critics who point out that we have some serious messes on our own planet and in our own country that should take precedence over putting men on Mars. I also expect that Bush's move is inspired less by a grand vision of men in space than by a grand vision of Bush in office for another term.

But for all that, I still would like to see men on Mars while I live.

My mixed feelings about Mars mirror a lot of my mixed feelings about politics recently. Should the United States have reacted to September 11 with an examination of it's own security? Of course -- that was an inevitable part of the reaction. Does that mean that we should suspend civil liberties for the prisoners of Guantanomo Bay, or that some bureaucrat should decide that BART train restrooms must be closed until further notice for your security and the security of others. No! Is Afghanistan better off under a regime less repressive than the Taliban, and are Iraq and the rest of the world better off without Saddam Hussein in a position of power? I think so. Did we do well to anger our allies, not only acting unilaterally, but in the process declaring them irrelevant if not outright reviling them? No! Freedom fries indeed. Are we now doing the right thing in trying to help Iraq? Well, perhaps we have some of the details wrong, but I think we're obligated to give what help we can. Does the proclamation that countries who were not militarily involved in Iraq shall not bid on reconstruction projects make the US sound like we have any motivation higher than commerce? Not really, though I believe that we do. Should we explore new technologies for energy production, and study the failures of the current distribution system in the hopes that it can be improved? Yes. Does that mean conservation is irrelevant because profligate energy expenditure is the American way, and the American way of life is a blessed one? Hardly.

I dream of a world where people are morally outraged by sloth and profligacy, and not by the fact that not everyone in the world is Christian. I want to see more people excited by the opportunity to build and explore, to be scientists and engineers, and fewer people who are excited by the profitability of law suits. I dream of ideas shared, not locked up in a safe and guarded by ill-considered patents. And I dream of men on Mars in my lifetime.

I also dream of warm socks, breakdancing koala bears, and writing equations with a weird stick of chalk that keeps changing colors. I suppose the dreams that come from REM sleep have as much place in life as the dreams that come from inspired sentiment. And right now, I think I ought to check in on those koalas.

Friday, January 16, 2004

The thing that has always disturbed me about O_DIRECT is that the whole interface is just stupid, and was probably designed by a deranged monkey on some serious mind-controlling substances.
-- Linus

I spent Wednesday of this week writing documentation for my Matlab-FEAP interface and pondering my software toolkit. The documentation is generated automatically in part; there is a script to build the table of contents, another script to generate the list of function references from my Matlab comments, and yet another script that generates all the graphics. The scripts are a few lines each, written in AWK and Matlab and shell.

When programming, I write a few these little scripts each day. They do things like produce header files for me, or rewrite function calls to change the order of arguments, or change a naming convention I've decided I don't like. Most of them fit on 5-10 lines, usually in AWK. Perhaps I should learn to be more comfortable with Perl, but it is hard to beat AWK for clean one-liners. I write Matlab scripts, AWK scripts, and shell scripts, as well as Makefiles and the odd macro in M4 or the C preprocessor. All this, of course, is in addition to the code I write in compiled languages: predominantly C, C++, and Fortran.

I've thought a lot recently about my choices of languages and tools. My Linux environment is very programmer friendly. That's one of the reasons I switched to Linux -- eight years ago, now. With Linux, I had access to free compilers, build tools, version control systems, and so forth, in a flexible environment very similar to the one we used for coursework. And the situation has improved a lot since then. The Fedora installation has caused me no troubles, and I've had the opportunity to trade time spent mucking with details I don't care about -- such as the syntax of yet another configuration file in the /etc subdirectory -- with tasks that I care about and enjoy.

Still, there is a long way to go. I still spend too much time trying to build numerical software, often in the face of utter frustration. The make tool, which is the de facto standard of software building today, was invented early in the life cycle of UNIX. Autoconf, a powerful and cryptic tool for configuration detection and setup, is written in M4, a preprocessor which first saw use as a preprocessor for Fortran. Every compiler takes different flags, or has different quirks in library support, and every tool is documented in a different format: TeX or troff or HTML or DocBook, or any or all of the above. Building software under Windows is sometimes like starting from scratch; while Windows supports a make program of its own, Windows make is a somewhat different beast from its UNIX sibling. I have powerful debugging tools like Valgrind under Linux -- but they don't work when I need to develop Matlab extensions, or when I need to debug my code under Windows. And, with a timing that seems to depend on the phase of the moon and the alignment of the planets, sometimes everything breaks. Would-be authors of portable code are reduced to the lowest common denominator they can bear -- and sometimes that denominator is technology from the 1970s with a thick layer of GUI painted in peeling layers on top.

All this has motivated my continued use and exploration of scripting languages. I use Matlab for much of my day-to-day numerical work; as a language, it leaves some things to be desired, but it is adequate for many applications -- and it's hard to beat when it comes to numerical linear algebra. I use Lua to script SUGAR, the MEMS simulator I work on. Lua is fast and small, but it is also very flexible, and I've spent a lot of time gloating over things I can do with it. Recently, I've increasingly been looking at Python, which is increasingly popular among scientists at the labs (who use it for steering their codes), system administrators, and web developers. It has a simple high-level syntax, it's compiled, and it has a big library. If I want to run my codes remotely and interact with them via a web interface, it will be a lot easier for me to write the interface in Python with compiled hooks into code that I provide as a dynamically loaded library.

I want to spend time on the problems I want to spend time on. I don't want to spend (much) time writing hash tables in C, fighting with broken build systems, or figuring out how to port my code to platforms that don't obey a relevant standard. I don't want to type ten lines of code to beat a behaviour out of Java that I could get out of ten characters of LISP. I don't want to reinvent wheels. I don't want to spend more time than I must in debugging. I do want to spend time thinking about software design and algorithmic strategies, and about how to efficiently pose and solve computationally difficult scientific and engineering problems. I'm not alone in feeling this way.

The state of the art advances, and I get to work every day with some truly amazing hardware and software systems. And at the same time, we've got a long way to go.

Thursday, January 15, 2004

I had a marvelous lunch discussion last week this time last week. It took a variety of twists and turns, from tales of lunches in France and travels in China to stories of the history and structure of Oxford University. As we walked back to Soda Hall from the food court where we'd eaten, the topic turned to Byzantine history. As we wrapped up the conversation in the office, Beresford Parlett commented that history seems a great deal more relevant and interesting as you get older. I raised an eyebrow at that; I enjoy reading history, though my chronological memory is too poor for me to ever be more than an amateur. Christof saw my raised eyebrow, laughed, and said Don't worry, we'll count you as old already. Parlett chuckled and mentioned that a friend once gave him a clipping of a New Yorker cartoon, in which a woman is patting her husband on the shoulder and saying to friends: Well, we were all young once -- except for Beresford.

I thought about that as I took BART home yesterday after eating dinner with Winnie and reading from Cooke's America. It was George Santayana who said that those who do not learn from history are doomed to repeat it -- and it is telling that I know so many people who remember that phrase (if not who said it), but remember little of their history studies. Somehow my middle and high school teachers often lost the story of history. I like Cooke's history for the same reasons I liked Barzun's Dawn to Decadence: they are works to be savored, full of opinions, perspectives, and stories written in language that is at once elegant and clear. I enjoy historical stories, fiction and nonfiction alike, and find recently I've spent ever-larger fractions of my free reading time relishing tales of Byzantium and Persia, feudal Japan and Communist China, Egypt and Axum, the character of Emperor Justinian and of Thomas Jefferson.

There can be a chauvinism of youth against history -- with such a brave new world before us, why learn about the old one? Quizzes that involve the number of casualties at the Triangle Shirtwaist Factory fire hardly help the situation. My high school European history teacher had the right idea: he told history as a story, in his droll style, with characters and plots. I did less well on the European history exam than I later did on the American history exam; but I enjoyed the European history class more, and I have retained more of it to the present day.

But since the Romans had no computers and the Greeks no matrix algebra, perhaps I should save my historical musings for a later hour.

  • Currently drinking: Black coffee

Tuesday, January 13, 2004

The Year of the Monkey is approaching, and I have been celebrating by playing the code monkey. I don't think we saw any other code monkeys at the zoo yesterday, unless they were wandering around with small children outside the fences. Perhaps they were hiding behind the endangered wheelbarrows.

I automated the setup of the tunnel I use to access library resources from off campus. I reorganized the sources for my interface between Matlab and FEAP, and finished adding the new functionality I needed to extract the appropriate matrices during thermoelastic simulations. In the process, I found and diagnosed a bug in FEAP in the nonsymmetric mass matrix formation. This evening, I spent some time trying (eventually successfully) to figure out a bug in the memory manager code that I wrote for FEAP.

I also paid bills, talked to Winnie, and visited with a friend from the geotech department. And I missed most of the news, but I did listen with interest to a segment on the News Hour with Jim Lehrer, a panel discussion on the role of Sandra Day O'Connor in the court. I have heard one of the panelists, a law professor at Berkeley, in several other discussions. I think I have yet to agree with any of the positions he has taken.

  • Currently drinking: Hot water with lemon

Sunday, January 11, 2004

I finished installing. I proofread a manuscript sent by a colleague. I added some new functionality to the interface that I maintain between Matlab and FEAP (a Finite Element Analysis Program). And I was hit over the head with a vorpal cudgel of silliness, which kept me working until past my bed time.

Saturday, January 10, 2004

I just finished transitioning to Fedora Core 1. I was using RedHat 7.3 until yesterday. I took the opportunity to clean up my drive, too -- I backed up critical files to CD and did a clean install rather than an upgrade.

I take such joy in these little things.

Tuesday, January 06, 2004

A panda walks into a bar, orders and eats a sandwich, fires a gun into the air, and then walks out. On his way out, he tosses a poorly punctuated wildlife guide to the bemused bartender. The bartender turns to the entry for panda, and reads Panda: Native of China, this creature eats, shoots and leaves.

I was reminded of this joke while reading an article in the NY Times yesterday on a surprising best-seller on punctuation (entitled Eats, Shoots and Leaves). I only realized later that the joke is not only an attack on poor punctuation -- it's an ad homonym attack as well.

Monday, January 05, 2004

I'm listening to All Things Considered on National Public Radio. When I'm around to listen to it, the evening NPR programs are always a high point in my day. At the moment, the major theme in the news seems to be Mars. This morning I heard Kim Stanley Robinson talking about the landing on Mars (he's impressed; his son is not). And this evening, I've heard about the surroundings of the Spirit lander, a plain of small rocks with a nearby depression dubbed Sleepy Hollow. The excitement doesn't end in America, either; as one of the NASA team wisecracked of a European team, Remember how we were jumping up and down, and hugging and crying? It was the same thing, only in German.

Of course, I listen to other stations, too. I found an electronic music program on Saturday night that I hadn't discovered before. And someone in the middle of the dial was playing the Broadway song that goes da da da da in America! -- where da da da da is replaced by words of some sort. I like listening to the BBC, and online stations from Canada and Europe, too. So I decided to get a portable radio -- with shortwave reception as well as FM and AM. It should arrive some time in the next few days; it was on sale from Amazon.

I spent the day listening to the radio and being productive at home. My e-mail inbox is now back to about 30 messages, where there were around 200 before. I've set up an ssh proxy tunnel to my office machine so that I can use the electronic library resources without actually being on campus. I spent time writing, too, but was severely hampered by the fact that I apparently cannot differentiate on a week when there will be a full moon.

Okay. Maybe I just couldn't differentiate today.

I'm actually able to tell when the new moon is because I finally bought calendar's this weekend. They were half price. A calendar of baby animals has been replaced by a calendar of Irish landscapes. I bought a pocket calendar, too; with luck this one will last longer than the one that I got at the beginning of last year. That calendar lasted about a week before it disappeared.

I'm sipping hot water with lime, which goes well with the chill in the air. We've had a few clear, breezy days, and I appreciate the break from the winter rains -- but even if it has been dry, it hasn't been warm. The days are still short, too, so I'm unlikely to forget that it's still winter. But I have my hot mug, and that's all I need right now.

I think I'll go back to work as soon as I'm finished sipping and writing, but perhaps I'll just work for a few hours and then spend some time fiddling with my computer. It has been a while since I upgraded the software on my system, and my temptation to do so is only tempered by the recollection of how much of a time sink upgrades can be. Perhaps I'll spend the time playing with Python, instead. I haven't exactly made a New Year's Resolution to learn a new language, but I've meant to add Python to my toolkit for a while, and now seems like a good time. Or I could try to build nicer configuration scripts for LAPACK and FEAP, if only for my own use.

Or I could continue to work on things that I'm supposed to be working on, I suppose.

Perhaps I'd be better off taking a shorter break and doing something completely unrelated to computing. I have history to read: I'm in the middle of Alistair Cooke's America, and I have The Histories of Herodotus and O'Brian's historical fiction piece Master and Commander in queue.

For the moment, though, I think I will fix myself something to eat, and -- as I've just finished my water and lime -- perhaps I'll have a cup of tea, too.

Friday, January 02, 2004

Neither holy, nor Roman, nor empire.

Thursday, January 01, 2004

Dad is back in the hospital for a day or two. Christmas Eve and New Year's Eve both -- it's like some unfortunate sort of double-header. My fingers are crossed. My legs are crossed, too, but that's just because of the way my legs are stretched out.

I worry, but can do little.

  • Currently drinking: Hot apple tea with lemon


It's wet, wet, wet outside. I like the sound of rain on the roof and wind on the windows, but I'm glad that I'm in here and not out there. I suppose this means that the area waterfalls will be particularly impressive for the next few weeks.

Today, though, seems to be a good day for quiet activities. Indoors activities. Work activities, perhaps.

  • Currently drinking: Black coffee

This poem hangs on the refrigerator at my family home. It seems a good New Year's thought.

People are often unreasonable, illogical and self-centered;
Forgive them anyway.

If you are kind, people may accuse you of selfish, ulterior motives;
Be kind anyway.

If you are successful, you will win some false friends and some true enemies;
Succeed anyway.

If you are honest and frank, people may cheat you;
Be honest and frank anyway.

What you spend years building, someone could destroy overnight;
Build anyway.

If you find serenity and happiness, they may be jealous;
Be happy anyway.

The good you do today, people will often forget tomorrow;
Do good anyway.

Give the world the best you have, and it may never be enough;
Give the world the best you've got anyway.

You see in the final analysis. it is between you and God;
It was never between you and them anyway.

-- Mother Theresa.