December 2003

Day 10: More ground beef salad

December 1, 2003 - Categories: cookordie

Was pressed for time this morning, so just quickly cooked ground beef. Onions still incomprehensible. Heated them on low, but that was too low (even butter was not heating up nicely). Browned them again on medium. Will probably try really slow cooking over low, but not when class time looms.

Chopped around 6 tomatoes and put them in Ziplock bag. Brought other head of lettuce to school. Had hurried ground beef and warm pita for lunch. Apparently, pita bread warms nicely in microwave. One pita left in freezer.

Washed and crisped some leaves of lettuce for dinner. (Two CookOrDie meals in a day! Wow.) Swapped some lettuce + tomatoes + ground beef with Eric for half a bowl of instant noodles. (He insisted as he felt very guilty about eating my food. Had not eaten instant noodles in ages. Had not missed much.) Eric agrees beef could use more flavor, but thinks it’s a pretty good try nonetheless. Will experiment with salt and pepper tomorrow. Perhaps should go grocery-shopping now; maybe with Dominique, as he has more experience with cooking. <grin>

Tomorrow: perhaps try ground beef omelet, or mix ground beef with corn, or finally figure out secret of caramelized onions?

Set up mailing list

December 1, 2003 - Categories: -Uncategorized

Checking xrefs

December 1, 2003 - Categories: emacs

If copy-on-xref is nil, then only a cross-reference link should show up on the day page.


Testing it again

December 1, 2003 - Categories: emacs


December 2, 2003 - Categories: -Uncategorized

Apparently, it’s called hostap now. The 2.6 patch in hostap-source
applied without a hitch. Now let’s see if it’ll compile…

w00t! Wireless works!

December 2, 2003 - Categories: -Uncategorized

Had to configure the encryption key.

iwconfig wlan0 key xxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xx

Midterms for CS21A

December 2, 2003 - Categories: -Uncategorized

Scheduled for 2003.12.16

– Refactoring
– other stuff

Formulaic song

December 2, 2003 - Categories: -Uncategorized

tla on debian

December 2, 2003 - Categories: -Uncategorized

I needed to use tla add-tag *.el instead of tla add *.el.

w00t! Hacked the ground beef!

December 2, 2003 - Categories: cookordie

Thanks to Dominique’s advice, have figured out how to get nicely spiced ground beef. Had absolutely wonderful bite-sized tacos for lunch. Let Eric and Andrei taste it; they were much impressed.

Finished three tomatoes, a fourth of a head of lettuce, and 1/8th kilo of ground beef. (Actually, 1/10th looks like it’ll suffice.) Hadn’t touched onions at all.

Having hacked the taco / taco salad, must now find other things to do with ingredients in ref. Perhaps can begin with egg?

emacs channel logs

December 2, 2003 - Categories: emacs

More about arch

December 2, 2003 - Categories: emacs

Okay, I’ve finally created and imported planner.el into an arch
repository. It certainly doesn’t seem as handy as RCS, but I guess
it’s supposed to be a Good Thing. That said, arch seems like overkill
for the kind of maintenance I’m doing right now.

E-Mail from Damien Elmes

Why am I trying to learn arch again?

December 2, 2003 - Categories: -Uncategorized

Bank accounts

December 3, 2003 - Categories: -Uncategorized

I was thinking of opening a checking account at Equitable PCI because
the bank branch is closer to Ateneo and having an account there will
make it easy for me to pay the credit card bill. However, Equitable
Card Online Services only works with Microsoft Internet Explorer.
(glare, glare, hiss, hiss)

On the other hand, BPI supports direct deposit, which may make it more
convenient. I like tracking the breakdown, so that means I’ll still
need to claim the pay slips, but I guess that works out too. According
to, I can transfer to non-BPI
accounts, although I need to pre-enroll.

The BPI Direct program looks very intruiging, as the checking account
earns 2.0% per annum – the same rate as savings, more or less.

My confirmation number is 00001200312031035587914.

– Any 2 valid ID’s (Driver’s License, Passport, PRC ID, Credit Card, etc.)
– 2X2 Picture
– Proof of Billing Address

Bleah. Checking account has age requirement.

December 4, 2003 - Categories: -Uncategorized

Apparently, I need to be at least 21 for the checking account. I guess
I’ll just set up electronic bank transfers, then.

E-Mail from Alice V. Garrobo-Realuyo

Leatherette repair

December 4, 2003 - Categories: -Uncategorized

I need to find a way to touch-up the leatherette on my trenchcoat, as
it apparently got stretched beyond its capacity in some areas and
needs fixing. Same with my skirt, too.

That said, the leatherette’s much lighter than a corresponding leather
coat, so I still think it’s a good idea.

Hmmmm. I need to get conference wear.

Spaceants’ blog, emacs-wiki

December 4, 2003 - Categories: emacs

While searching for Google:linux+academe, ran across . Reference to, my OnLove page, and Linux; I _must_ have
written this person before to comment on that…

Open source in colleges

December 4, 2003 - Categories: -Uncategorized

The most successful effort so far has been uPortal, which has produced open-source code for campuswide Web portals at more than 100 American colleges.

– Should check that out…

Day 11: 2003.12.04 (late entry)

December 5, 2003 - Categories: cookordie

Grabbed flour tortillas and made little burritos. Think have gotten hang of it, but can never be quite sure until burritos are reheated tomorrow. Had to plan ahead because will be out at conference until dinner. Abiding by CookOrDie constraints means packing either lunch or dinner, and lunch seems more hackable.

Have surplus tortillas and lettuce. Ended up making vegetable burritos. Put many into freezer. Almost done with head of lettuce.

Must find better way to split food. Not looking forward to eating tortillas every day for next few CookOrDie sessions. Besides, makes for boring story.

Some goodbyes

December 6, 2003 - Categories: -Uncategorized

Something to think about and not reply hastily to.

Savannah’s down

December 6, 2003 - Categories: emacs

So that’s why I haven’t been able to upload my CVS stuff lately. You can still get planner from . All of the files in the CVS repository are available at .

Gerald Generoso’s comment on ComputerScienceEducationResearch — good karma

December 7, 2003 - Categories: -Uncategorized

Numbering on a per-page level

December 7, 2003 - Categories: emacs

I wonder if setting planner-reverse-chronological-notes as a
file-local variable makes sense. I can’t think of a reason to use it,


Testing remember.el

December 7, 2003 - Categories: -Uncategorized

I seem to have broken something recently.

Note guids

December 7, 2003 - Categories: emacs

Notes should probably have GUIDs so that I can do update-notes as
well. However, note updating does not really make sense with
remember-planner-copy-on-xref set to nil…


Testing the hopefully fixed restrictions

December 7, 2003 - Categories: emacs

I was having problems with planner-update-task messing around with my
restrictions. Phooey.


Bluepoint road tour

December 7, 2003 - Categories: -Uncategorized

Last Friday (December 5, 2003), I joined the
Bluepoint Road Tour to talk about
Linux in the academe (SXI). I shared
my experiences with Linux as a student and as a teacher, and I also
showed how it makes sense from the administrator’s point of view. It
was tons of fun, particularly fielding questions during the open
forum! =)

Dominique went out of his way to escort me from
Ateneo to Lyceum – I’d literally have been lost without him. Karma++.
<grin> That made him a little late for his keynote speech
(whoops!), but Magie covered for him by extending
her talk for 15 minutes more. He talked about IBM and Linux.

I finally got to meet Eddie Salonga. I knew
him from BBSing, but hadn’t met him until then. His parents joined us
for dinner at Oody’s in Greenbelt; apparently, his dad is a senator.
(Nice guy; smiles a lot!)

Applying learning style theory to college education

December 7, 2003 - Categories: -Uncategorized

Testing 1 2 3

December 7, 2003 - Categories: emacs

4 5 6 7 8 9


Went out with Diane =)

December 7, 2003 - Categories: -Uncategorized

Hot chocolate at Seattle’s Best – excellent chocolate, much better
than Starbucks. Watched fireworks, too.

Perfect date, ‘cept (a) she’s my girl friend, so it’s not _that_ kind
of a date, and (b) she kept thinking about a certain someone almost
all the time. <laugh> Still, good to spend time with her.

Tutorial: Writing a new Emacs mode

December 7, 2003 - Categories: emacs


December 7, 2003 - Categories: -Uncategorized

Two-minute mysteries

December 7, 2003 - Categories: -Uncategorized
an archive of the sort of thing you’re looking for,
“The 2-minute mystery writing club” I didn’t browse through the ones
listed; they’re written by school children, but that doesn’t really
mean anything about the quality…
Same organization as the above, but these seem to be from anybody who
wants to submit.
Don’t know what the group behind this page is about, but give it a

E-Mail from Barbara Bailey

Problems with lphdisk

December 8, 2003 - Categories: -Uncategorized

lphdisk does not seem to recognize my hibernation partition. Here is
the output of fdisk -l /dev/hda:

Disk /dev/hda: 20.0 GB, 20003880960 bytes
255 heads, 63 sectors/track, 2432 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/hda1   *           1         574     4610623+   b  W95 FAT32
/dev/hda2            1149        2432    10313730    f  W95 Ext'd (LBA)
/dev/hda3             575        1148     4610655   83  Linux
/dev/hda5            1149        1858     5703043+  83  Linux
/dev/hda6            1859        1895      297171   a0  IBM Thinkpad hibernation/dev/hda7            1896        2432     4313421   83  Linux

Partition table entries are not in disk order

and the output of lphdisk:

Warning: Cannot determine physical RAM.
Reccomended partition size is unknown.
Warning: /proc/partitions does not match partition table.
Error: Unable to find partition of type A0.


December 8, 2003 - Categories: -Uncategorized

The normal arrangement is HRD goes into a contract with the
instructor, but since it’s a short course, we’ll just send the fee to
Mr. B, and they’ll pay without the usual accounting requirements.
Should we continue to avail of your services and for larger
engagements… Check into consultantship. Possibly also JITSE


17-19. External training for one of the clients. UNIX fundamentals
right now. Participants ared. Can keep copyright for exercises. Memo
of agreement

– audience

Mid-career, some do not have programming background, some will
transfer into the MIS department of P. Fast pickup.

What do their managers want from the training? No feedback yet.

– Expectations
– Sample exercise
– Kind of work
– 3 days
– write-up of course
– evaluation form

P 3,500 per man/day

Fortuitious events

December 8, 2003 - Categories: -Uncategorized

Found my keys in pocket of khaki jacket. Extremely fortunate as
discovered upon entering Ateneo that no classes meant buildings were
closed and needed department key to get my phone charger and

Burrito attempt flop.

December 8, 2003 - Categories: cookordie

Writing off attempt to make burritos, as lettuce makes burrito soggy.
Must figure out how to do it properly. In meantime, will probably
start exploring egg-based dishes.

Resolve to never prepare more than a day’s worth of food at time, as
had to throw away stocked-up burrito stuff upon discovering was not
partial to the taste and texture. Toasting did not improve it.

CS21B meeting

December 9, 2003 - Categories: -Uncategorized

– Listeners: canvas vs applet

– Selecting: isSelected, highlighting

– Deleting shapes

– Changing colors

– Dragging / moving: mousePressed, mouseDragged, mouseReleased.

Optimal: relative position

– Creation: fixed-size fixed-location, fixed-size variable location.

How do you remember which shape to create?

– Simple resizing of selected object. Resize button. mouseDragged must

distinguish between moving and resizing

– Create and drag to resize: Use temporary shape of some sort or add

to vector and automatically go into resizing

– Lines: How to check if point is in line. Moving / redirecting.

Tricky: avoid divide by zero. Make sure it works for horizontal and
vertical lines. Tolerance, fuzziness.

Miniproject: Should shape include the resize

– inheritance mechanism (super, super constructors, rules for default constructors)

– More encapsulation, composition, and design (eval and filled oval, composite shapes, using points for person instead of coordinates), relative position, resizing persons, act, shapes with mouse listeners – pointing person)

Next year: Objects using each other. strategy pattern for operation on all, inner classes

Due first week

Mark Punzalan is a Microsoft Student Ambassador now

December 9, 2003 - Categories: -Uncategorized

Hi Sacha,

In case you didn’t know, I’ve been drafted into Microsoft’s Student
Ambassador program. We’re planning to go to different schools to give
different talks/seminars on .NET.

Could you give me some contacts from UA&P? Maybe JM Ibañez or Chipi. We
need to talk to them and some student orgs.



Awwwwww. He really is a convert…

E-Mail from Mark C. Punzalan

Blind computing

December 9, 2003 - Categories: -Uncategorized

Text of my e-mail to Bong Copuyoc:

Dear Bong,

I’m glad to hear that you’re working on an article focusing on
assistive technology! I started looking into it because I wanted to be
able to use my computer while walking around. Although the
head-mounted display looked really cool, it was heavy and conspicuous.
Fortunately, free and open-source tools such as the Festival Lite
speech synthesizer and the Emacspeak audio desktop made it easy for me
to glue together a system that let me browse, read mail, and do all
sorts of things without looking at my computer.

I’ve Cc:’d Richard Burgos, the IBM guy who told me about their
wonderful Computer Eyes workshop. They gave me an opportunity to help
out before, and I can tell you that it is an amazing experience.
However, the JAWS screen reader costs a lot (USD 895). Richard – IBM
has helped people with disabilities for far longer than I have;
perhaps you can spare time from your Christmas preparations to help
this journalist out? =)

With the increasing interest in Linux as a low-cost alternative even
for sighted users, maybe you can help convince your readers that Linux
training will benefit sighted and visually impaired users alike. I’m
sure that the Philippine Linux Users’ Group (
and organizations like the Bluepoint Foundation
( would be willing to help out.

You might be interested in the BLinux community
( They have an active mailing list and will
probably answer questions promptly.

Major distributions are beginning to support blind users out of the
box. If I’m not mistaken, you can get a Redhat install CD with speech
support (requires a hardware speech synthesizer). Knoppix comes with
Braille support out of the box.

Smaller distributions also cater to the needs of the visually
impaired. Oralux (, a live-CD distribution
based on Knoppix, has Emacspeak and the Festival Lite speech
synthesizer – allowing you to use practically any computer with a
supported sound card. Brlspeak ( has Braille
and partial speech support and can be installed on an existing FAT
hard disk without repartitioning.

Good luck and have fun!

2003.12.09 – White (M.) / Black (Sacha) – Starbucks

December 9, 2003 - Categories: -Uncategorized
2003.12.09 White (M.) Black (Sacha)
1 e4 e5
2 Bc4 Nf6
3 d3 d5
4 exd5 Nxd5
5 Qh5 Nc6
6 Nc3 Be6
7 Bg5 Nf6
8 o-o-o Nxh5
9 Bxd8 Rxd8
10 d4? Bxc4
11 b3 exd4
12 Nb5? Bxb5
13 c4 Ba3+
14 Kc2 Nb4+
15 Kb1 Bc6
16 Nf3 Be4+
17 Ka1 Nc2+
18 Kb1 Ne3+
19 Ka1 Nxd1
20 Rxd1 d3
21 Re1 Nf6
22 Ng5 o-o
23 Nxe4 Nxe4
24 Rxe4? d2
25 resign

No way to prevent … d1 (Q or R,++).

2003.12.09 – White (Sacha) / Black (M.) – Starbucks

December 9, 2003 - Categories: -Uncategorized
1 e4 e5
2 Bc4 Nf6
3 d3 d5
4 exd5 Nxd5
5 Nc3 Bb5
6 Bd2 Be6
7 Nf3 Nd7?
8 Nxd5 Bxd5
9 Bxb4 e4?
10 Bxd5 exf3
11 Qxf3 Nb6?
12 Qf7++

2003.12.09 – White (M.) / Black (Sacha) – Starbucks

December 9, 2003 - Categories: -Uncategorized
1 e4 e5
2 Nf3 d6
3 d4 Bg5
4 h6 Bh5
5 dxe5 Bxf3
6 gxf3 dxe5
7 Qxd8+ Kd8
8 f4 Nc6
9 fxe5 Nxe5
10 f4 Bb4+?
11 c3 Nc6
12 cxb4 Nxb4
13 Bd2 Nc2+
14 Ke2 Na1
15 Kd3 Ke7
16 Nc3 Rd8+
17 Nd5+ Kd6
18 Bb4+ c5
19 Ba5 b6
20 Bc3 f6
21 Kd2 Ne7
22 Bc4 Kc6
23 Rxa1 b5
24 Kd3? bxc4+
25 Kxc4 Nxd5
26 exd5+ Rxd5
27 b4 Re8
28 b5+ Kd6
29 Rb1 Re4+
30 Kb3 Rd3
31 Rc1 Kd5
32 a4 Rh3
33 Rd1+ Ke6
34 a5 Rb4+
35 Ka3? Rxc3+
36 Ka2 Rxb5
37 Rf1? Rc4
38 f5+ Ke5
39 a6? Ra4++

Breakfast steak, potatoes

December 9, 2003 - Categories: cookordie

Have potatoes down pat – halved marble potatoes in covered container
with pat of butter, cook for three minutes, stir, then cook for two
more minutes. Nice and soft.

Breakfast steak cooked for 1:30 minutes on plate, covered with
microwave wrap. A bit too tough. Seasoning with salt and pepper good,
but feel more taste is needed. May consider marinade – soy sauce?

Have figured out way to revitalize artificial bacon bits – put into
container and microwave for ~ 20 seconds to make them nice and crunchy

Somewhat depressed

December 10, 2003 - Categories: -Uncategorized

I’ve looked at a number of the shell scripting submissions for CS161.
I feel a bit depressed because of the fact that so many people were
unable to complete it on their own…

Why do we teach these things, anyway? I know I’ve found shell
scripting to be incredibly useful. I like being able to write little
programs to make my life easier. Last night, I wrote a shell script
that automatically created HTML files for the applets I needed to
check. Companies spend around PHP 10k per person to train employees in
shell scripting. Shell scripting is one of the best reasons to use
Linux – the ability to combine tools in ways the original authors
might not have thought about.

More than that, I want other students to be prepared to learn whatever
they need – not give up right away when they get stuck. I want them to
be able to struggle with the documentation and triumph, proud that
whatever they learned, they learned on their own. I don’t want them to
always have to rely on someone else. I want them to face their Linux
or UNIX systems with confidence.

How easy it would be to just teach to the interested few. How
comforting it would be to simply address those who are diligent, those
who do the work, those who realize that homework is a perfect
opportunity to determine how much one knows and find out what one
needs help with. But I have to learn how to reach the other students…

All I am is a resource. I can guide their progress, answer their
questions, give them hints, nudge them in the right direction – but I
cannot force them to learn. I will carefully structure exercises so
that they can discover what they need to learn.

How have I failed as a teacher? How can I improve? How much more can I
give? How better can I address people’s needs? Am I doing something

I must continue working on this – for who else will?

Printer works again

December 12, 2003 - Categories: -Uncategorized

Apparently, they made it a printer server. Yay!

Software Elegance

December 12, 2003 - Categories: -Uncategorized

Gerald Generoso says

You might wanna check this out —>>

E-Mail from apache

Game development in Japan

December 12, 2003 - Categories: -Uncategorized

Hee Soo Lee’s thinking of going for game development in Japan. Way cool. =)

E-Mail from Soo Lee

Natural language processing

December 14, 2003 - Categories: -Uncategorized

From Slashdot:

Zhang Le, a Chinese scientist working on Natural Language
Processing has decided to pack the most important language analysis
and processing applications into a single bootable CD: Morphix-NLP.
More than 640 MB of NLP specific software is included and there’s
still a lot of place on the CD which uses a compressed filesystem for
bringing us the best of both worlds.”

Interesting links:

Unix for Poets, Ken Church, Bell Labs
Computational resources for linguistic research


December 14, 2003 - Categories: -Uncategorized

Another John Wiegley creation! Mumble mumble… ;)

Backlog: Beef, beans, and bacon in buns – 2003.12.10

December 15, 2003 - Categories: cookordie

Whoops, hadn’t been writing. Have, however, faithfully adhered to
constraints of CookOrDie. Last Wednesday, threw together quickie lunch
of ground beef, pork and beans, and bacon (real bacon!) in hamburger
buns. Decent meal – reminded me a bit of some meal I’d eaten before
but forgotten.

Preparation was fairly simple.

– Attempted to cook bacon.
– Became disturbed as bacon does not brown after a few minutes of cooking.
– Suspected that constant flipping to check doneness did not contribute to quick cooking of bacon.
– Consoled self by browning 1/8 kg. of ground beef in same pan.
– Opened can of pork and beans impulsively bought day before and dumped contents in aforementioned pan.
– Stirred for a few minutes and poured results into hastily cleaned plastic container.
– Stuffed extra hamburger buns into storage bags and into ref.
– Grabbed remaining hamburger buns and container with meat and beans mixture and headed off to school.

Backlog: Mashed potatoes, beef, and bacon bits – 2003.12.11

December 15, 2003 - Categories: cookordie

Another quickie meal as had class in less than 30 minutes.

– Grab large pink potatoes from supermarket, as convenience justifies expense.
– Also buy 1/8 kg. ground beef.
– Ensure that salt, pepper, and bacon bits containers were firmly closed. Throw them into school bag for very quick lunch in school.
– Hastily wash large plastic container in school.
– Pop washed, pricked, pink potato into container and microwave for 5 minutes.
– Flip pink potato.
– Pack ground beef into small plastic container and place it into microwave along with flipped potato.
– Microwave potato and beef for 2 minutes.
– Pour some bacon bits onto plastic lid. Microwave for 20 seconds to make bacon bits crunchy.
– Pick up ground beef with fork, as fat had rendered in the plastic container. Place ground beef in large container with well-cooked potato.
– Dump bacon bits into large container.
– Tear potato apart with fork and spoon, effectively mashing potato with beef and bacon bits. Sprinkle with lots of pepper and mix thoroughly.
– Look at the clock and start panicking.

Backlog: Potatoes, beef, bacon – real this time – and cheese – 2003.12.12

December 15, 2003 - Categories: cookordie

– Microwave second pink potato for 5 minutes.
– Cook half of second slice of bacon. (Still unable to figure out how to get nice, crispy bacon, and am about to give up and always chuck it into the microwave.)
– Brown ground beef. Add plenty of salt and pepper. (This is starting to sound very familiar.)
– Flip potato and microwave for another 2 minutes.
– Mash potato, beef, and bacon together.
– Add diced cheese to amalgam and mix thoroughly.
– Pop into microwave and set for a few minutes under “Grill” in attempt to brown potato mixture nicely..


December 15, 2003 - Categories: cookordie

Parents very supportive of CookOrDie project. Suspect they find it
funny as youngest daughter makes far-out attempts to become
“independent girl” while still remaining v. close to parents. To wit:
have told them about double-entry accounting (but have been slipping
these days due to rush-rush CookOrDie grocery shopping), CookOrDie
project, and even contemplated SewOrDie project as cannot easily find
clothes to wear – teacher clothes somewhat boring, but most clothes my
size too casual. (That said, find The Black Shop a nice place to
window shop.)

As result of parental support, have now acquired full complement of
pots, pans, and knives. Parents have thankfully kept space and cooking
limitations of CookOrDie project in mind – no huge woks or
for-several-thousand-people pans.

Parents unbelievably keen on youngest daughter learning how to cook.
Parents enlisted help of company cook in teaching how to make rice,
although as had been very busy this weekend, had not actually had
time. However, performed rice experiment earlier with mom with great

Cooked 1/2 cup rice traditional way and 1/2 cup rice microwave way.
Did not actually know correct microwave procedure, so guessed.
Microwave finished first, but had problems with boiling over – suspect
must use deeper casserole. Traditional way documented on rice package
resulted in good rice after 20 minutes, although also resulted in
crunchy part which most Filipinos like but personally am not
particularly fond of.

Also, prepared very first cup of tsokolate. May need strainer, but is
v. nice – although a bit rich. Perhaps water instead of milk is

Contemplating trip

December 15, 2003 - Categories: -Uncategorized

Mom brought up ideas for trip abroad. Find am looking forward to
travelling the world and exchanging ideas. Am thinking of going to
Australia and New Zealand this summer to check out universities, as
many of the universities that do ComputerScienceEducationResearch are
there. Besides, remember AU as more fun than US, and have many friends
to visit. Wonder where Andrew Clausen is
now? Homepage says Victoria; should put
University of Melbourne on tour
map, as would very much like to thank Andrew for helping introduce me
to Linux. (Wonder if he still remembers how to play Speed?)

“Transforming Non-Geeks Into Computer Whizzes”

December 15, 2003 - Categories: -Uncategorized

Ellen Spertus, who runs an interdisciplinary computer science
graduate program at Mills College in Oakland, Calif., is
attempting to break myths about computer geeks in the hopes of
bringing more women—and other persons with non-technical …
Oooh. Ellen Spertus was geek of the year or something like that. =)

E-Mail from [email protected]

Kids’ software for Linux

December 15, 2003 - Categories: -Uncategorized

Group reviews

December 15, 2003 - Categories: -Uncategorized

Watching the students help each other review gives me a warm and fuzzy
feeling. I know they’ll probably think it’s a way for me to get out of
teaching – and who knows, that’ll probably affect my evaluations – but
I think that in their communal meaning-making, they’re learning a lot
more than from my lectures.

What about the primarily visual learners? I’ve had a number of people
ask me for handouts. I should think about doing something in the line
of man perlintro…

Chess with M.

December 15, 2003 - Categories: -Uncategorized
Move W(M) B(S)
1 e4 e5
2 d4 exd4
3 Qxd4 Nc6
4 Qc4 Nf6
5 Bd3 d5
6 Qc3 dxe4
7 Bxe4 Bb4
8 Bd2 Bxc3
9 Nxc3 Nxe4
10 Nxe4 Nd4
11 o-o-o| Bf4
12 Re1 o-o
13 Nf3 Re8
14 Bd3 Re4
15 Nd4 Rxd4
16 Bxd4 Qxd4
17 Rd1 Qxf2
18 Rd2 Qxd2 to make the game interesting
19 Kxd2 g5
20 h4 g5
21 g3 h8
22 Rf1 Bg6
23 Ke3 Kf8
24 Rf4 c6
25 c4 Ke7
26 Rd4 Re8
27 Kf4 Rd8
28 Rxd8 Kxd8
29 Ke5 Kc7
30 b4 Kb6
31 c5 Kb5
32 a3 a5
33 Kd4 axb4
34 axb4 Kxb4
35 resign


December 15, 2003 - Categories: -Uncategorized
Move W (M) B (S)
1 e4 e5
2 Nf3 Nc6
3 Nc3 Bb4
4 Nd5 Ba5
5 c3 Nf6
6 b4 Nxd5
7 exd5 e4
8 dxc6 exf3
9 bxa5 Qe7+
10 Be2 fxe2
11 Qxe2 Qxe7+
12 Kxe2 dxe6
13 Ba3 Be6
14 d4 b6
15 Bb4 Kd7
16 Rhb1 Bc4+
17 Ke3 Rhe8+
18 Kf4 Re2
19 Rd1 Rxf2
20 Kg3 Rxa2
21 Kf4 Rxg2
22 Ke5 Rxh2
23 d5 Re8+
24 Kf4 c5
25 axb6 axb6
26 Kg3 Ree2
27 Kf3 Rd2
28 Ke4 Bxd5+
29 Ke5 cxb4
30 cxb4 f6+
31 Kf5 Be6+
32 Ke4 |Kc6
33 Rab1 Rxd1
34 Rxd1 Rh4+
35 Kd3 Rxb4
36 Rc1+ Kd6
37 Kc3 |Rc4+
38 resign

Backlog: Fish – 2003.12.15

December 16, 2003 - Categories: cookordie

– Find small sections of fish. I haven’t gotten around to eating fish bellies yet, although many people swear by them. I prefer the part
that browns and gets all salty when you cook it.

– Put fish into frying pan with a bit of oil.

– Wait.

This CookOrDie episode was hard because I couldn’t see what I was
cooking! It was early morning, so I hadn’t put my contacts on yet, and
I used chopsticks (yes, while cooking fish – darn difficult to hang on
to the pieces sometimes) to test if the fish felt crunchy. I also
peeked every so often to see if it was browning properly. The
sputtering oil from the fish made me loath to look closer, though.

Still, I think it was worth it. I’m particularly fond of daing na
bangus (milkfish that’s marinated and then fried), and my dad and I
usually fight over who gets to eat the brown parts. Actually, no, we
just try to be first at the fish. I haven’t actually tasted the
results yet due to a bit of a mix-up yesterday. I was supposed to
bring it for lunch but the car couldn’t take me to school. They sent
the containers along later, but now that it’s been out a few hours at
room temperature, I’m a bit wary. All that rice will also be wasted
unless I think of something to do later – and I’ll have to eat it for
lunch, as I’ll be going home today!

Hmmm. Which means I’m in a bit of a spot, as I have a couple of
potatoes earmarked for potato soup (or a reasonable facsimile
thereof). I am a little hesitant about rice and fish as they’d been
out for a while. I think I will have cream of mushroom + potato soup
later… The rice is such a waste, but I guess I can treat it as an


Recipe from [[bbdb://Aadisht][Aadisht Khanna]]

December 16, 2003 - Categories: -Uncategorized

1. Set Capsicum, Minced Meat, Sweet Corn, Cheese
2. Slice off capsicum tops.
3. Scoop out capsicum innards.
4. Stuff Capsicum with (Cheese&&(Minced Meat or Sweet Corn))
5. Microwave.

E-Mail from Aadisht Khanna

More about group reviews

December 16, 2003 - Categories: -Uncategorized

Perhaps setting up this kind of tutoring in-class is a good way to
encourage student interaction and close the gap between students with
extensive background and students who are new to the topic. Besides,
it’ll help the geeks develop communication skills, and sometimes they
learn something too.


Meeting with Dr. Juerg Nievergelt

December 16, 2003 - Categories: -Uncategorized

– Advocates strong mathematical approach in first year
– Upcoming split
– Computational science – common math: numeric and symbolic computation (6 courses?), slots for science specialization

Moving computing into the basics

December 16, 2003 - Categories: -Uncategorized

Mathematics users – elementary mathematics, technicians have more
mathematics. So the mathematics teachers could say all we have to
teach our students is how to look up a formula and apply it. But from
high school on, all of you learned some form of proof, even though not
all of you will go on to be a mathematician. Some concept of what a
proof is. We don’t trust anyone to apply mathematics if he doesn’t
have the concept of a proof. What it means for a mathematical
statement to be something meaningful. We are all physics users when we
turn on switches and schools have taught the second law of
thermodynamics, even though few of us will actually use it. Basic
ideas. Tremendous disparity between traditional foundations of
technological society – principles of science to everyone – and
computing, which is just hitting the right keys at the right moment.
Example of the overreaction to the Y2K problem.

Once a society depends as much on the technology as we do today on
the computer and information technology, it’s not enough to have a
bunch of specialists. principles should be a matter of general

When computers first popped up in universities some 40 or 50 years
ago, everyone who wanted to use a computer had to learn how to program
and the only question was what language to use. Justification was very
simple. If someone wanted to use a computer for anything, he had to
write his own program. In the 70s and 80s, something very drastic came
up. Visicalc was the first spreadsheet. Fantastic innovation. That was
simply the first of these fantastic app packages that we all use
nowadays. Computer users today simply work with prepackaged
applications done by specialists. If they use tools that other people
make, then there’s no need to teach programming.

If you want to understand the basic ideas that support this
technology… How can I tell a politician or someone about what
computers can or cannot do?

What would be the simplest possible setting where we can teach
programming to high school students – not so that they will all be
programmers, but so that they understand what it means to specify
concretely what they want to do?

Traditional to take the language of the day. Understandable. But if
you take a professional programming language, then you spend the first
months or two studying the manual and the libraries. Too much
information. What is the simplest setting in which I can try these?

Multikara is so cute! synchronization and stuff…

Main idea: finite state machines are easiest way to learn how to program

Hey, more thoughts on kara

December 16, 2003 - Categories: -Uncategorized

Finite state machines are perfect for pen and paper, because students
can check it manually – and they can enlist their classmates for help!

Perl training

December 16, 2003 - Categories: -Uncategorized


– Day 1 morning: What is Perl? Lay of the land
– Day 1 afternoon: Basic syntax, Perl for extracting data
– Day 2 morning: Regular expressions, perl as glue – using Perl to connect two programs
– Day 2 afternoon: Perl as glue – using Perl to connect two programs
– Day 3 afternoon: CPAN

Why use Perl?

– quickly extract information from a lot of data
– write programs that connect two existing programs together
– take advantage of very rich libraries

Script ideas

– extracting top phone callers
– summarizing surveys

More stuff from visiting professor

December 16, 2003 - Categories: -Uncategorized

How do you pronounce your name, Dr. Nievergelt? (Neevergelt)

– Let me see if I understand your teaching approach. You develop

passive systems that students can explore in order to learn
important computer science concepts like finite state automata and
synchronization. Your role as a teacher, then, is to create and
update these tools, come up with exercises that draw out ideas,
guide students’ discussion of solutions, and help them synthesize
general principles. Did I miss anything?

Lecture also an animation device.

– How did you get started with this approach? It seems very different

from the way most teachers teach computer science – that is, a
lecture on general principles and then assigned problems from the
book to practice application.

Very positive feedback. Examples have a clear connection to
applications. For finite state machines, control of traffic lights,
how would you synchronize the traffic lights… automatically, if you
do it systematically, you start by specifying the total state space.
What are the states of these many lights that can occur. Make the map
of the state space, and this is a state that you don’t want to get
into, so that state has to be outside, and you begin to relate the
states to each other. So a static specification of all the possible
states that a system can be in is the first stem, and only later the

Not faithful reflection. Simplify, simplify, and then hope that the
simplified version still shows some aspects.

– I collect exercises for my students, but sometimes I have a hard

time thinking up ideas and examples. When I talk to other students,
it seems that most teachers use passive lectures. What do you do to
think of these things?

Dream up examples for exams. Sometimes run into them in books or if
you hear them. Collection of transparencies. Systematically collect
them. Just collect them on transparencies. Select them as appropriate.
Lots of work.

– What other alternative approaches are used by teachers at schools

you’ve been to?

Not noticed much because is personal style. (Also, doesn’t seem to
have swapped exercises with others…)

– How long have you been teaching? Any advice for someone starting out?

Suggests getting MS first.

Thank you very much for your time. I’ve learned about another way to
approach computer science education research – developing systems to
support student learning by making an environment they can explore. I
firmly believe tat concrete examples help students learn, and I hope
to collect many examples and exercises for the introductory courses –
to help students learn principles and to challenge them to do well. I
agree that too much emphasis has been placed on applications, and I’d
like to help train college and high school teachers to teach computing
concepts, not just how to use applications. I don’t know much about
computational science, but I know that Dr. Rodrigo and Dr. Dayrit are
working on that. Again, thank you very much for your time. =)

educational technology


Intimidation factor is well known. No general recommendation, every
teacher has to deal with that. Darwinistic approach. No entrance exam.
They have an attrition rate of 40% at ETH. Can take an elitist

Concrete, specific examples. UNderstand the intuitive examples first
and then find the general principles. Algorithms and data structures
but with examples. Like things that are intellectually challenging.

Two-finger typist! <impish grin>

Useful Perl resources

December 16, 2003 - Categories: -Uncategorized

Cultural differences between UNIX and Windows

December 16, 2003 - Categories: -Uncategorized

Oooh, cool way to split

December 16, 2003 - Categories: -Uncategorized
use Text::ParseWords;
@new = quotewords(",", 0, $text);

Perl for Windows administration

December 16, 2003 - Categories: -Uncategorized
- Keith_M: One that I use quite often is Win32::AdminMisc by Dave Roth.
- Keith_M: Win32API::Net
- Keith_M: Win32::Lanman

Stuff at [[../learn/perl/training/day1]] so far

December 17, 2003 - Categories: -Uncategorized

Oh no, it’s 12:05 and I haven’t even started on Real Text Processing…


Perl focus

December 17, 2003 - Categories: -Uncategorized

– Reading source code, testing, adapting software to their own needs
– 4 programmers

Project ideas

December 17, 2003 - Categories: -Uncategorized

Rating system – they’ve got this already

Extracting all the mail addresses from the programs

December 17, 2003 - Categories: -Uncategorized
grep -ri 'mail' * -A 10 -B 10 | less

This displays enough context information around the data so that I can
grab it easily.

Extracting the trainees’ files and packaging them

December 17, 2003 - Categories: -Uncategorized

Shell scripting to the rescue!

# Zip their work up
for DIR in *; do ( cd $DIR; zip * ); done

# Realize that I have to get rid of the archives temporarily because
# I might want to insert all the files into a buffer, so back it up first
tar zcvf archive.tar.gz $(find -name \*.zip)

# Remove all the zip files
find -name \*.zip -exec rm {} \;

Elisp code to insert all

December 17, 2003 - Categories: emacs

Data is of the form

(defun sacha/perl-training/suck-data-in ()
  "Insert BBDB records for all the Perl trainees."
  (goto-char (point-min))
  (while (re-search-forward "^\\([[:digit:]]+\\)" nil t)
    (let ((data (split-string (buffer-substring-no-properties (line-beginning-position) (line-end-position)) "|"))
            (bbdb-create-internal (elt data 1) ; Name
                                  "PLDT" ; Company
                                  (elt data 2) ; E-mail
                                  (concat "Perl training 2003.12.17 - 2003.12.19; " (elt data 3)))
            (list (concat "pldt" (elt data 0)))))))

Revised sacha/perl-training/suck-data-in

December 17, 2003 - Categories: emacs
(defun sacha/perl-training/suck-data-in ()
  "Insert BBDB records for all the Perl trainees."
  (goto-char (point-min))
  (while (re-search-forward "^\\([[:digit:]]+\\)" nil t)
    (let ((data (split-string (buffer-substring-no-properties (line-beginning-position) (line-end-position)) "|"))
      (setq record
            (bbdb-create-internal (elt data 1) ; Name
                                  "PLDT" ; Company
                                  (elt data 2) ; E-mail
                                  (concat "Perl training 2003.12.17 - 2003.12.19; " (elt data 3))))
      (bbdb-record-set-aka record (list (concat "pldt" (elt data 0))))
      (bbdb-change-record record nil))))

Thoughts on training

December 18, 2003 - Categories: -Uncategorized

Yesterday was my first day of corporate training. It was surprisingly
draining. On my feet almost the entire day, facing the same crowd,
waiting for their questions… After the training, I was so zoned out!
Fortunately, it was just a short walk to Powerbooks in Greenbelt. To
top it all off, I discovered a chocolate bar quite near there!

The trainees are remarkably independent, preferring to work on the
exercises on their own or in small, informal groups instead of
listening to me explain the solution. My role is more of a
facilitator. I point them to the documentation. I also walk back and
forth looking for people who are stuck at a problem or are faced with
a trivial bug they can’t find and fix, and I give them small hints.

For this group, it seems very important to gain mastery of the basics
first – so we’ll stick with the promised coverage and we’ll have
plenty of exercises. That works out for them because they’ll have time
to gain confidence. That works out for the training company as well
because they’ll have an opportunity to do Advanced Perl Scripting.

It was a very good thing that I’m used to this style of teaching –
embedding lessons in exercises that build on each other and involve
several concepts. If I expected to lecture, I’d have been dead on the
first day! With that in mind, I had a lot of fun preparing more
exercises for them. I worked until one in the morning. A phonebook at
my side, I came up with all sorts of phone-related exercises. I hope
they take it well; they might just be sick and tired of anything that
looks like work after all!

I met Dominique yesterday and we swapped notes on training. From what
little I know of it, I rather like corporate training. It gives me a
chance to spread the good news of UNIX. ;) That said, I like school
teaching, too. Maybe I can do part-time teaching and part-time
training in the future.

Proxy problems

December 18, 2003 - Categories: -Uncategorized

Fujitsu’s not letting my MSI download. I should have grabbed it at
home. Tomorrow, then – just to show them that it _can_ be done… =)

The class is practically running itself

December 18, 2003 - Categories: emacs

It’s amazing. The class is practically running itself. The time I put
into making those exercises was definitely worth it. They’re off
solving them or making up their own exercises. With documentation,
time to explore the system, and the freedom to make mistakes and ask
questions, the trainees learn almost entirely on their own.

When they do have questions, they tend to ask each other first before
asking me. I handle the questions they can’t figure out from the text
and clarify things that are fuzzy.

It’s really amazing. I hope they’ll leave the training confident that
they can learn whatever else they need to – considering they learned
Perl nearly on their own! Because I’m more into getting lots of people
do Perl, I’m not worried about long-term profitability. After all,
what training center would do well if they kept encouraging students
to learn independently?

That said, it was a lot of work preparing the exercises, and I can’t
count the number of times quick thinking and familiarity with UNIX
made things easier. For example,

wget -r -nc --no-parent --proxy-user=secret --proxy-pass=secret

and judicious use of ncftp’s mput command (skipping the
already-uploaded files) allowed me to easily make Perl’s documentation
available even though the server didn’t have anything but perl(1).
Better than manpages, actually, as these were hyperlinked! =)

tar zcvf day2.tar.gz /usr/local/training/home/

will allow me to pack up all their work so that I can use my Emacs
keyboard macro to send it to their listed e-mail addresses. (I should
get around to making that a defun…)

Thomas Gehrlein wants planner annotation from notes

December 18, 2003 - Categories: emacs

So I guess people use that feature after all… =)


Dominique won! =)

December 18, 2003 - Categories: -Uncategorized

Very delicate and dangerous endgame. He outwitted me with a clever maneuver. Way cool!

Chess is catharsis. After tension, relaxation. =)

Blogging contests?

December 19, 2003 - Categories: -Uncategorized

As requested by Marcelle, have checked out blog
competition as he is in running for
Best Philippine Blog – but by very long shot.

Amused as went through some of blogs and find them more of journals –
perfectly valid in context of contest, but not really something fit
into my day. Hmm. What blogs do I read, anyway? Friends’ for catching
up. Slashdot for some news. Occasional
Japanese blog for kanji.

Why do I blog? Mainly to remember, as M-x remember in Emacs is what I
use to store snippets of potentially useful information. Public blog
side-effect of data capture on local hard disk. Not my fault people
find pages like CookOrDie or OnLove funny. Actually, occasionally
write tongue-in-cheek.

Also blog in case Google’s listening. Would like to help capture
knowledge. Sometimes snippets also useful for other people on my site.

In fit of shameless plugging, have nominated own blog purely out of kicks.

Should have probably voted for Marcelle‘s blog
instead, but was feeling mildly piqued as own blog had not been
nominated yet.

So – will shamelessly plug. Want to help shock heck out of
not-quite-techie crowd and make near-incomprehensible, link-filled
wikiblog “Best Philippine Weblog” or whatnot? Make sure your spam
filters are all right, then click on link to vote.

Should put it in SideBar for more fun.

Mirrored blogs

December 19, 2003 - Categories: emacs

I’m thinking of making it easier for me to blog to my . I should look at the blogging Emacs
modules to see how (or if) they handle offline operation. I think I
can do it like e-mail – queue unsent items in a file, then delete as
sent. If all else fails, I can write it as a normal e-mail module,
then have a Perl script on the other end upload the e-mailed stuff to .

I guess this belongs more to remember.el than planner.el, as I want to
mirror upon remember. =)



December 19, 2003 - Categories: -Uncategorized

Although unconditional prompting requires an extra keystroke, it makes
blogging more consistent (no need to think about if you’re on a date
page or the right wiki page) and it allows you to blog to a different
page with cross-references. If people complain loudly, I guess I’ll
put it back.


Open source for school projects

December 19, 2003 - Categories: -Uncategorized

I think the idea of using open source for class projects as suggested
by is a good thing. The
page also has
[[][Contributing to Open
Source Projects HOWTO]].


December 19, 2003 - Categories: -Uncategorized

The kernel-janitor-discuss archives on seem to be
spam-filled. I’m tempted to work on the balancing-functions task, as
that doesn’t require too much hardware knowledge, but don’t know whom
to check for sync. Besides, I’m working with an ancient list.

Gmane is better.

Oh, that’s because it’s now [email protected]

Setting up arch

December 22, 2003 - Categories: emacs

– Set up ID
– Set up branch of emacs-wiki
– Cache revision
– Add files
– Commit
– Set up local mirror for repository
– Sync

Vaio parts

December 22, 2003 - Categories: -Uncategorized

I just don’t know how to open the computer up to install it…

Software archaeology

December 24, 2003 - Categories: -Uncategorized

Should look into software archaeology (blogged on 2003.02.26) again.

Christmas memories

December 27, 2003 - Categories: -Uncategorized

Before I forget, let me go through a backlog of stories.

Dropped by the CompSAt Christmas party and the Trend Micro Christmas
party on 2003.12.13. The Trend party was quite a show with all sorts
of presentations. Also attended the IBM Christmas party on 2003.12.20
and got to meet a few people.

Went to DISCS Christmas party at Dr. Rodrigo’s house on 2003.12.19.
Had tons of fun. Eric and I sang “Staying Alive” for kicks. Because we
did particularly well (97), we went through a few other high and fast
songs. Then Ariel, Christine, Fanny, Eric, and I slept over at Fanny’s
apartment – well, more like passed the night playing Taboo.

Chat with Jerome about friendship

December 27, 2003 - Categories: -Uncategorized


Sorry, encrypted; this is for me to remember, and you probably won’t
want to read this anyway.

Oooh, one of my students is into GTK!

December 27, 2003 - Categories: -Uncategorized

I’m pleasantly surprised to see one of my students exploring GTK by
porting his old class projects from Java to C and C++. This is the
same guy who groks Emacs. <grin> It’s always fun to find a
kindred soul; in fact, I suspect he’ll do far better than I did, as I
never thought of redoing my school projects just for kicks!

Herding cats

December 27, 2003 - Categories: -Uncategorized

Neko batted playfully at the USB drives dangling from my fingers as I
chatted on the phone. A little too playfully, in fact, as she launched
herself into my hand and bit down hard. I half-jokingly threatened to
bite her back, and she persisted in attacking my hand. Quickly
excusing myself from the phone call with the ominous announcement that
someone was going to get a bath today, I chased Neko, scooped her up,
stalked off to the bathroom and dumped her into the sink. She turned
angelic eyes on me, all innocence, but I told her she wasn’t getting
off that easily – and turned the faucet on full blast. (Warm water,
though; I don’t like cold showers and I doubt she would appreciate
them either!) It was difficult dealing with a wriggling, pointy-toed
cat, but I’d had the foresight to close the bathroom door, and I just
chased her and scooped her up every time she tried to escape.

I splashed her with water and shampooed briskly over her loud
complaints, but she was more docile than the books would have had me
believe – no fury of claws, no tantrums or fiery tempers. The bath
over, I rubbed her down with a towel – or tried to, as she kept
escaping my grasp, electing to diffidently wash herself as if the
indignities I’d put her through were completely uncalled for. Her
twitching tail a metronome of annoyance, she smoothed her fur down
into some semblance of order and proceeded to give me the cold

I decided to head back to the Internet room in order to check on my
students’ progress and get some work done. With no desire to leave an
annoyed cat in the darkness of the house, I picked Neko up and brought
her to the room as well. She proceeded to ignore me and calmly
continue licking herself off – that is, until sleepiness got the
better of her. I was pleasantly surprised to see a familiar nose
poking around my computer, glad to feel the dainty feline jump into my
lap, and content to hear the sleepy rumblings of a somnolent, purring

It was not too long ago that Neko was just a kitten who nestled in my
lap while I checked my mail or added to my webpage. She had neither
the skill at jumping nor the confidence she enjoys now, and due to her
small size and lack of strength she could not gracefully jump into
people’s laps. No, she scaled people’s legs, digging in with her claws
and hanging on for dear life. A few instances of this and I learned to
carry a heavy towel with me to the Internet room so that at least no
blood would be drawn; her claws would find purchase in the fabric and
the soft, thick towel would cushion the impact of claws designed to
rend flesh. (Cats are clearly no vegetarians.)

There was no keeping Neko on the ground. She preferred hiding behind
the monitor, playing with the printer cables, gnawing on the edges of
my computer – at least until I could spare a hand to shoo her off.
She’d bound from the shelves to the desk in one fluid motion,
springing from floor to chair to floor again with the enviable agility
of a creature that lives in a fully three-dimensional world. Even we
humans do not enjoy that appreciation of different surfaces. Most of
our lives are spent on the ground, walking around. Dogs are like that
as well. We obey the laws of gravity; cats flout it.

Earlier she chased the mouse pointer as I moved it around the screen.
She was confused by the fact that it could always slip out of her
grasp. Now she sits on my lap, awake but resting, half-lidded
almond-shaped eyes staring sleepily at the bookshelves. I feel her
breathing on my lap. The cat hair sticks to the velvet dress I wear.
It is the end of the day and I do not have to brush cat hair off
before going out. The bell around her neck is silent, and she is a
picture of calm and contemplation. Perhaps we should go to bed before
she remembers that she is a nocturnal animal.

Get-together yesterday

December 30, 2003 - Categories: -Uncategorized


– The sharp staccato clacks of stiletto boots on polished tile
– The animated chatter of friends long not met
– The buzz of a crowded mall even on a Monday afternoon
– The clatter of pins knocked down by a bowling ball inexpertly sent down the lane; more often, though, the steady rolling that accompanies a gutter ball
– The blare of an arcade basketball machine counting down the seconds, the clang of balls bouncing off the rim, the swish of a rimless throw, the indistinct blur of points and misses lost in the intensity of the game
– A quick, friendly “You’re good” mumbled by an onlooker
– The rustling of a crowd gathered around the Dance Maniax game
– The whoosh of the MRT on the commute home


Sweat trails down my forehead as I start my fourth game of arcade
basketball. I’m slowly figuring out a technique: how and when to
breathe, how to spin the ball to dispel the excess force I put in due
to excitement, how to adjust my direction or velocity. The rewarding
swish of several consecutive baskets thrills me. For a confirmed
computer science geek who was never fond of basketball in school, this
is a discovery – I may not have been as bad at hand-eye coordination
as I thought.

Breathe. Ignore form. Ignore time. Nothing exists but this ball and
the basket. I don’t need to impress anyone by jumping or twisting or
pitching the ball with a certain style; I just need to relax, breathe,
and let the ball go. Slow down. Better to have a few balls go in than
have many attempts fail. Learn control. As I become accustomed to the
game I will be able to go faster. Till then, better to learn how to
control the ball.

I go to the arcades for physical exercise. Dance Dance Revolution for
agility: this gives my feet a workout I can’t match elsewhere. Dance
Maniax for fun and for more coordination: buffering future moves.
Basketball is a recent addition, discovered recently when I saw Eric
playing and – competitive streak! – I challenged him.

One of the most euphoric moments I had was right after a particularly
strenuous DDR and basketball session. I was so tired, I found it only
natural to speak slowly and in a low voice – although I shifted into a
childishly high voice from time to time. That was fun. I felt
profoundly relaxed.

Stuff for Kathy

December 30, 2003 - Categories: -Uncategorized

Making of a Flight Attendant 10,000 23-27 Feb 2004
20% of the course should be paid 3 working days before the training

Smarter indexing

December 30, 2003 - Categories: emacs

Check out ../emacs/emacs-wiki/planner-experimental.el‘s advice for
emacs-wiki-generate-index and the new function planner-generate-index
for smarter indexing of day pages. To see the results, check out the


Unanswered mail hack

December 30, 2003 - Categories: -Uncategorized

I’m having a hard time keeping track of mail I’ve already answered.
To better keep track of my mail, I think I will split off my personal
mail into several groups:

– mail.misc
– mail.misc.archive for mail I’ve already answered and for my replies; threads I consider complete
– mail.misc.noanswer for mail I want to archive but don’t need to answer
– mail.misc.all, a virtual group that lets me see and search through all the mail

All personal mail will be dumped into mail.misc.


ANSI manipulation in Perl

December 30, 2003 - Categories: -Uncategorized

You can go to specified (x,y) positions, clear the screen, and output
colors by using modules from CPAN. Under Windows, you can do this by
installing the Win32::Console::ANSI, Term::ANSIColor, and
Term::ANSIScreen modules. For more information about these modules, check out

To learn more about CPAN and how to install modules, check out


Dominique’s moblog

December 30, 2003 - Categories: -Uncategorized

Dominique looks like he’s having tons of fun
with his moblog. Envy! Nice to have quick pictures like that.

Took the MBTI again – still an INTJ

December 30, 2003 - Categories: -Uncategorized

Your Type is INTJ

Strength of the preferences %

Introverted Intuitive Thinking Judging
11 78 11 11

– slightly expressed introvert
– very expressed intuitive personality
– slightly expressed thinking personality
– slightly expressed judging personality


You feel at ease in a crowd NO (I get somewhat claustrophobic)
You rapidly get involved in social life at a new workplace YES
You spend your leisure time actively socializing with a group of people, attending parties, shopping, etc. YES (holding parties, even, but it is a rather small group of friends. No, we don’t go shopping.)
Direct-contact group discussions stimulate you and give you energy YES
The more people you speak to, the better you feel YES (Particularly if I answer their questions)
You are usually the first to react to a sudden event: the telephone ringing or unexpected question YES
It is easy for you to communicate in social situations YES (If in a geek context)
You enjoy having a wide circle of acquaintances YES (Again, geek context)
You enjoy being at the center of events in which other people are directly involved YES (hehehehe)
You get pleasure from solitary walks YES (Nice and calming)
After prolonged socializing you feel you need to get away and be alone YES (Unless it’s a geek thing)
You prefer to spend your leisure time alone, within a narrow circle of friends or relaxing in a tranquil family atmosphere YES (Narrow circle of friends at home)
You are able to cut yourself off from the bustle of everyday life YES
You are more of a listener than a speaker YES
You prefer meeting in small groups to interaction with lots of people YES
You usually place yourself nearer to the side than in the center of the room YES (all the better to quietly hack on the computer)
You prefer to isolate yourself from outside noises YES
You find it difficult to speak loudly YES (and slowly)
As a rule, current preoccupations worry you more than your future plans NO
You tend to rely on your experience rather than on theoretical alternatives NO
You prefer to act immediately rather than speculate about various options YES
Your desk, workbench etc. is usually neat and orderly NO
You have difficulty understanding the notion of “an approximate decision” NO
It’s essential for you to try things with your own hands NO (I’m fine with not doing lots of things)
When solving a problem you would rather follow a familiar approach than seek a new one NO
When considering a situation you pay more attention to the current situation and less to a possible sequence of events NO
You feel more comfortable sticking to conventional ways NO
You easily see the general principle behind specific occurrences YES
You are always looking for opportunities YES
You often spend time thinking of how things could be improved YES
You easily perceive various ways in which events could develop YES
You are more interested in a general idea than in the details of its realization YES
You easily understand new theoretical principles YES
You find it hard to be engaged in an activity that requires your continuous attention NO
You are more inclined to experiment than to follow familiar approaches YES
You are eager to know how things work YES
You find it difficult to talk about your feelings YES
It’s difficult to get you excited or make you lose your temper YES (well, the lose-your-temper part; I get excited easily)
You trust reason rather than feelings YES
You value justice higher than mercy NO
You think that almost everything can be analyzed YES
Objective criticism is always useful in any activity YES
You tend to be unbiased even if this might endanger your good relations with people YES
You try to stand firmly by your principles YES (Emacs! ;) )
You consider the scientific approach to be the best YES
You tend to sympathize with other people YES
You are easily affected by strong emotions NO
You readily help people while asking nothing in return YES
You willingly involve yourself in matters which engage your sympathies YES
You feel involved when watching TV soaps NO
You easily empathize with the concerns of other people YES
Your actions are frequently influenced by emotions YES
You feel that the world is founded on compassion YES
In a debate, you strive to achieve mutual agreement YES
You do your best to complete a task on time YES
It is in your nature to assume responsibility NO
You usually plan your actions in advance YES
You like to keep a check on how things are progressing YES
You take pleasure in putting things in order NO
You are consistent in your habits YES
You are almost never late for your appointments YES
You know how to put every minute of your time to good purpose YES
You like giving instructions YES
You are inclined to rely more on improvisation than on careful planning YES (whoops, used to be NO, but then we tried cooking again)
Deadlines seem to you to be of relative rather than absolute importance YES
You think that everything in the world is relative YES
A thirst for adventure is something close to your heart NO
The process of searching for solution is more important to you than the solution itself YES
You avoid being bound by obligations YES
You often do jobs in a hurry NO
You believe the best decision is one which can be easily changed YES
Strict observance of the established rules is likely to prevent attaining a good outcome YES

Four variations on sukiyaki beef

December 30, 2003 - Categories: -Uncategorized


– Sweetly brown sukiyaki broth
– Soft, bland, a childhood memory: tofu
– A faint buzzing in my head: the sake in the soups and sauces
– Tangy rawness: partially caramelized onions

Martin helped me experiment with 500g of sukiyaki-style beef. In
retrospect, this was a bit too much beef – no choice as it was frozen
solid when we began, so had to defrost the whole thing.

Mostly variations on sauteing beef with onions and adding different
kinds of sauce.

Okay, although suspect too much sake was used as feel vague buzzing in

Migs Paraz gives CompSAt free space

December 30, 2003 - Categories: -Uncategorized

Oooh, that’s really nice of him. =)

E-Mail from Cha Gascon

TLA migration to 04 archive

December 30, 2003 - Categories: emacs
cd ~/notebook/emacs/emacs-wiki/
tla register-archive [email protected] ~/notebook/arch/
tla my-default-archive [email protected]
tla make-archive -l [email protected]
tla tag [email protected]/emacs-wiki--sacha--1.0 emacs-wiki--sacha--1.0
tla cacherev

Here I use -l to make sure my archive is http-gettable, then tag the
old file over to the new one, then cache the old revisions to make
this run faster.

To update to Damien’s tree, just:

tla star-merge [email protected]/emacs-wiki--dev--1.0

Sleepy cat

December 31, 2003 - Categories: -Uncategorized

Groggily the cat stirs, curled up on the ergonomic chair. She licks
herself before settling back into a comfortable position, yellow-green
eyes drowsily watching me before she involuntarily yawns and blinks –
long, slow blinks that get longer and longer until there is just a
ball of black and white fur softly snoring on the gray office chair.
The bell around her neck is silent for once in the day.

I yawn. She wakes up, glances around her and resumes her nap.
Nocturnal predator or not, she is of the opinion that it is way past
her bedtime – and mine as well. After all, it is 5:31 in the morning
on the day before New Year, and no doubt I will pay for this
unexpected wakefulness with sleep or grumpiness later. I will sleep. I
will not face the New Year almost dead with fatigue.

The locked door leading to our quarters could be opened with a call to
my parents courtesy of the phone system installed throughout our house
– even in one of the bathrooms – but with the hour so close to dawn, I
thought I might just wait out the darkness and perhaps even see the
sunrise. A little patience would mean not interrupting my parents’
dreams; precious time they have to rest.

Again I yawn. This time there is no questioning look, simply perked up
ears that turn toward the source of the noise and then disinterestedly

A few hours ago, I played a late game of chess with a friend over IRC.
It was a thrilling game, full of delicate traps and positional play.
The conversation at ChessGames may prove amusing to my readers, who
may also wish to play through the game to see how events developed.
Well-played – I missed a combination and teetered on the brink of
calamity, but fortunately a sequence of unexpected moves brought me
back on solid ground. There is a peculiar thing about me; I shake
violently during matches, shivers wracking my frame. I suspect it is
the adrenalin of a close fight, a fight-or-flight response tightening
me. Yes, chess is a sport like any other; palpitating heart, beads of
sweat and all!

Small talk seems so much easier over pawns and bishops. Chess provides
a natural segue into sports and hobbies. Until then – dreaming driftin in and out…

Refreshing my Linux install

December 31, 2003 - Categories: -Uncategorized

– Download

– Download

– Boot grub with the following commands:

  kernel (hd0,2)/root/root.bin ide0=ata66 initrd=/root/root.bin
  initrd (hd0,2)/root/root.bin

– Gleefully delete the other partitions except for the main XP one (we’ll leave one lying around just in case – it’s only 5G, anyway.)

– Create a 550 MB swap partition as /dev/hda2.

– Create a 5 GB partition for / – this is /dev/hda3.

– Allocate the remaining space for /mnt/data – this is /dev/hda4.

– Carelessly reboot.

– Start panicking.

What are my options?

– Find the hard disk, transplant it to the Vaio, install Linux over

the network, and proceed to have fun.

– Find one of those USB hard disk storage things, transplant the hard

disk into it, then do a debootstrapped install.

– Wait for someone to bring me a USB floppy drive.

– Panic.

Chickened out

December 31, 2003 - Categories: -Uncategorized

So much for thoughts of a hard disk transplant – I shake too much and
am too uncertain about hardware to make this feasible. We’ll just have
to get a USB floppy drive, which is always useful anyway.

In the meantime, I can get my USB working.