22 Mar 2001 taj   » (Master)

kjots is a real shame. The idea of having a Palm-like memopad is a good one but so many limitations! I wrote up a short perl script to try and sync up kjots memos with the palm but kjots behaviour and usage of files to store its memos is just weird, so only download from kjots to palm works right now. It's been abandoned for a long time, so I'll try and have a hack at it next week.

Looks like I've been certed master. I'm not sure what to make of it.

KDOC is getting really, really close. From last night it can correctly document the typedef struct { ... } var,... stuff that C programmers are so used to. I'm annoyed that it's taken this long and so much work to make this program worthy of "near completion" status, but in the process I've learned a few things about myself:

  • I appreciate languages that help me write good-looking code.
  • When writing free software, everything seems to me to be a grave bug or missing feature. Funnily enough I have no problem prioritizing these things when I'm at work.
  • I don't like perl as much as I thought I did two years ago.
.. and a bit about perl:
  • Cute features that make life easier when you're writing a short script won't scale. When you start writing a program and a prototype turns up to be roughly 1.5KLOC, it's time to think about whether or not the program is going to grow. If it is, it's time to start refactoring immediately. I don't find this so much of a problem with other languages as I tend to overdesign even the simplest apps. Perl's temptation to throw caution to the wind snuck up on me.
  • In a larger program with large data structures, more often than not you're going to be dealing with references. That's when you find out how strange-looking perl can get.
  • Sooner or later you're going to use the perl profiler, and that's when you learn how much just that one extra function call can cost. When that function call is just hiding some small but dirty code, the decision about what action to take can be a hard one.
I still like perl a lot, but I'm going to think long and hard before I use it to write a program that I expect to grow in a fairly amorphous way. When using C, Java, C++ or even python (at which I'm still mostly a novice), I factor this in without thinking. But somewhere in the perl<->taj interface this natural bond is not being formed.

It's been a good book month. I really enjoyed Yukio Mishima's Confessions of a Mask, Hannibal was a waste of precious time, Iain M Banks' Look to Windward was good in parts (I loved the ideas and descriptions of the dirigible behemothaurs) but it dragged on a bit.

oh and... test cricket is interesting again! Anyone who has been keeping up with the Australia/India series knows what I mean. :)

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!