Tao of the MachineProgramming, Python, my projects, card games, books, music, Zoids, bettas, manga, cool stuff, and whatever comes to mind.
Last 10 archives
:: About me
:: Oasis Digital
Tao Teh Ching translations
Tao Teh Ching translations. What a mess. All of them are different, to the point where the verses have entirely different meanings. Which one is the "correct" translation? (Of course, the answer is that none of these translations capture the essence of Tao adequately.)
Some examples of translations of the first line:
The problem with Taoism is, that all can be correct, or none. In fact, they are probably all correct and incorrect at the same time. Hmm, quantum-religion, anyone?
Inspecting referrer logs...
I need a UPS...
(Uninterruptible Power Supply, that is, not the overcharging packet delivery company.)
The power went off while we were away, and when I restarted the computer and tried to check my mail, I could not connect to
So, I renamed the database files, restarted the proxy, and everything works again. Except that I have to retrain spambayes from scratch again. :-(
Since power outage is a common problem here, I wonder if it's possible to make spambayes more robust. Something like writing a backup file every now and then, and trying it if the "current" file appears to be corrupt. Or maybe this isn't a job for spambayes, but something that needs to be solved with a cron job (or something similar; I'm not on Unix).
Textile 2 beta
Textile 2 beta is available.
Tja. I don't really use it anymore, but if a Python version comes out, I'll probably stick it in Kaa and Firedrop.
Nifty: I like the nested lists. Eventually, Sextile will have to support something like this too.
Not so nifty: All this syntax kind of clutters the format, IMHO. The result sometimes looks quite Perlish, with all those
On IRC, nobody knows you're not a dog
Where to download the manga (and anime) I mention in my weblog? First of all, there's the links page. Some groups release their stuff on IRC, though. For newbies, here's a quick guide on how to download from there.
(I'm assuming that you at least know the basics of IRC: logging on to a server, setting a nickname, joining a channel, etc. If not, see this tutorial.)
1. Get a decent IRC client. For Windows, I recommend mIRC.
2. Connect to a server where manga groups dwell, for example:
3. Do a
4. Read the rules first:
so you don't piss off the moderators. On most IRC channels, moderators are *very* quick to kick and ban obnoxious users, or just anyone who puts a foot wrong. Don't expect the manga channels to be different.
5. Get a list of users that have file servers:
You will now see a (possibly long) list with entries like this:
This means that user Lizard_Axe has a file server, that is currently used by 0 users (out of a possible 3). He's sending 0 files (out of a possible 2) and 0 files are queued. (Usually, these values with not be 0.)
To connect to the file server, use the triggers. These are usually
6. File servers emulate a console screen, and common commands like
Most of these screens close after a few minutes, so you'll have to be quick, or reconnect. Also, many users require you to stay in the channel, or they will cancel your download.
7. Some channels allow the
Dutch bloggersDutch bloggers by zip code. If I still lived in the Netherlands, I would be in 64.
Getting spambayes to work on Windows
I never installed spambayes before, mostly because I was incorrectly assuming that you'd need certain email clients, and that there was no integration for my current email program (Pegasus Mail).
Fortunately, I was wrong. The Pegasus/spambayes combo is happily filtering out unsolicited emails as we speak. And I didn't need a special plugin. If you haven't installed spambayes yet for similar reasons, or are unsure whether you can/should, then this article may be of help to you.
Note: spambayes is still in alpha, and it's possible that you encounter bugs. In fact, I stumbled upon a nasty bug in version 1.0a3, a parser error that made the proxy choke, and therefore stopped Pegasus from getting new mails. This may be fixed in version 1.0a4, changelog sez:
So, make sure you have the latest versions of spambayes and mimelib (aka the
In spite of any glitches, the package is quite promising... so far, it caught 100% of spam, with only a little training.
OK, the titles are not getting any more original...
1. I am currently tinkering with an experimental program. May or may not work; development is not going very fast. More later... maybe.
2. Some ultra-short manga reviews.
3. If I wasn't sure before that bettas had their own personality, how about this. Today I fed my fish some so-called bloodworms. (These come freeze-dried in a container, I don't want to mess around with live worms.) Most bettas liked it, except for Shaggy, the green crowntail. He nibbled at his food, then swam away and sat on the bottom of the tank... I swear, it looked like he was pouting! I dropped some pellets in the tank (the regular food), and he snagged them up real quick.
4. Apparently MySQLdb doesn't support the
sql = "insert table (foo, bar) values (?, ?)" cursor.execute(sql, ('blah', 42))
Instead, you have to use:
sql = "insert table (foo, bar) values (%s, %s)"
And a quote...
I am not a jack-of-all-trades. I am an explorer.
Programming adventure games, anno 2003
Let's say that I want to write an adventure game. (By this I mean a text adventure, or interactive fiction.) In Python, or whatever; doesn't really matter.
This type of program is quite interesting, because modern ideas about good programming practice don't really apply to it. I can see at least two issues:
Problem 1: Incremental development. Sure, you can "do the simplest thing that possibly works", and add new features from there, incrementally. Works for many programs of all kinds. The problem is, that you cannot *release* the adventure until all parts are in place, unless your players are willing to put up with missing features. It sounds like an interesting idea: "version 1.2 now has 4 new quests", but somehow I don't think this would work. Playing the same game again just because it has a few extras?
So, I don't think "release early & often" will work here.
Problem 2: How to test it? Indeed, how *do* you test an adventure game? Can it be tested efficiently?
There's a difference between testing the basic stuff (does command X work?) vs testing "everything". The latter seems impossible. There are countless, maybe infinite situations; how can you possibly test them all? Even if we restrict the tests to every possible command with every possible object/person, that will be a hell of a job to test.
But, let's say we're going to try it anyway. How would one approach this? Maybe we need some kind of automation mechanism. Set up an environment... player in room X with objects Y and Z, creatures C and D, and objects E, F and G in inventory, execute command, test if it has the desired result.
A testable system like this might be useful. I'm not sure what the current state of the art is in the IF world; do systems/languages like Inform support testing? Or are IF authors still on their own (and dependent on playtesters) when it comes to verifying their games? I'll have to find out.