Last night as I was climbing into bed and trying to set the alarm for tomorrow, I accidently adjusted the clock.

I’m rarely at work before 8am.


I am quite pissed off about researching.

First you basically either have to access IEEE or ACM. Some sections of IEEE are restricted for the Finnish Consortium which paid for access. I don’t know which, and I absolutely HATE being greeted with a user login when I am browsing their pages.

Ok, so I use ACM which works for the most part. Forget citeseer. Citeseer is a joke.

The ACM “Digital Library” search is quite clear. Useful downloads at the bottom are a tad annoying.

Ok now once you’ve found an article, here is where the fun starts. PDF seems to be format of choice. Completely breaking the web experience.

Ok there is an abstract, but usually I want to glance over the whole paper as terminology used in papers can mean anything. For example context aware could mean the characteristics of the device or the environment it’s in or something about you or any combination. WAP nowadays could mean XHTML, and the list goes on.

Now what a miserable experience PDF reading is in my setup. I am using Mozplugger and gv to read the pdfs. Sometime I can read them on screen, but often the fonts are absolutely unreadable!

Ok, I can print for free. So lets do that then. I am browsing about on interesting articles and sending them to my nearest printer, which I had to figure out was “ps8”. After sending several papers to the queue and of course closing the heavy article summary and numerous gv mozplugger sessions, I go to the printer. Printer has a paper jam.

Please open top tray.

Please open tray 2. And on and on. OH FFS.

All my papers! My research! Can I switch the queued print jobs to another printer? No…

So right now I am praying that staff have fixed the printer and it processed my print jobs. Update: They did btw, and when I went to collect the papers, I accidently took someone else’s paper and had to go back and return it (waste more time).

Ok, for the meantime I’ll use another printer on the opposite side of the building. This time after sending a print job, I walk all the way over there to check it has come out.

Another problem, journal papers often have strange layout formats that don’t quite fit on A4. So my print out has a third of the bottom of each page missing. OH FFS.

Ok, if everything does go well and I am not interrupted by some collegue while travelling up and down the corridor, I now try find a stapler. I need quite a big industrial one as the small staplers are generally pathetic. So I enter one of the work rooms in the department, find a stapler and press down on the wad of A4 papers I have. No staples. Great.

I’ll look back on these days and laugh.


I now have a Nokia 3100. There is a bit of story to that, which I will elaborate on, in another post.

After reading through several papers such as Virpi Roto‘s work about Navigation, I must post about navigating web pages.

Now seeing Google’s new user interface and noticing dmoz’s directory not listed directly there, it only encourages me to blurt out that everyone simply searches. They do not browse through a zillion categories, especially on the stiff mobile keypad.

For me navigation (tried to get order here) is:

  1. Google
  2. User agent's back and forward buttons
  3. Good URI design and hackability
  4. User agent's PGDN and PGUP
  5. User agent's Bookmarks
  6. User agent's Type ahead find
  7. rss2email's Syndication methods (site feeds, blogs, rss, atom)
  8. User agent's site navigation toolbar using link elements

And these should work just fine on a mobile device too, except perhaps Type Ahead Find ;). Well designed sites make use of access keys which I would probably make use of on a mobile, but wouldn’t bother with on a desktop. Anyway, I hope you can see the stress on the User Agent(UA) for navigation, also known as the XHTML browser.

UAs are the root of all evil, creating a plethora of bad web pages.

The XHTML browser on my Nokia does not bind back and forward to the logical left and right cursors. Back/Forward broken on the user agent level… a new low.

As for knowing where you are, show the URI. This is what my Nokia does very badly. Show me the URI! Marquee it if you have to !

It's my belief atm that a good web service should be designed around excellent URIs.


Try my repo

Right now I have to :

hendry@bilbo:~$ svnadmin recover repo/
Please wait; recovering the repository may take some time...

Recovery completed.
The latest repos revision is 534.
hendry@bilbo:~$ chmod -R 777 repo/

Every so often. I blamed it on web crawlers, and now put in an robots exclusion directive.

Please work…

Update: Just tried it the next morning and once again it needed to be recovered. WTF is going on…
Just tried WebSVN. Looks good, but I want to forbid access to certain private modules.


Don’t you just love Sundays?

I can sit on my computer all day undisturbed. I tackled more than half on my dreaded TODO list of today. That’s a lot.

I spent a large amount of time with Mod_Python. Namely after reading an encouraging introduction and blog post.

Anyway, I have given up on it. The publisher example didn’t work. I didn’t get PythonHandler directive. I didn’t understand how to debug the whole thing. Like what was the version of mod_python I was running? I wanted to see lots more examples, and better documentation basically.

Oh ffs, my repo just died again (after switching needlessly from viewcvs to websvn). Berkely DB is quite sensitive, there must be something wrong with my computer… URGH :/

ANYWAY. I have discovered Nevow, and will be working with that instead of mod_python. I didn’t need an API to Apache’s internals. I want to try out high level stuff.

I will get back to you about it. I am going to have some dinner, settle down with some cognac and watch a movie I’ve downloaded.


I have just noticed via Technorati, my good old friend Timothy Twelves has a blog. :)

Me in Helsinki and Tim in Johannesburg

I do plan to visit South Africa for awhile next year…

Oh yeah, this a technical blog thing, so allow me to cast my opinion into this Gmail thing. Yes, excellent marketing.

I certainly will not be using it or recommending it mainly because of the grave privacy issues, described in the recently redesigned The Register. I refuse to use Orkut on this basis too.

So what do I recommend? Some of that home grown… For power users, nothing beats the speed and piece of mind that a bogofilter(spam filter), exim(MTA), vim(editor), offlineimap(archiver), Dovecot(imap server), mairix(searching) and mutt(mail pager) type setup offers.

For family and friends, I have webmail for you. Need an account?


Is used to be client, I’m sure…

Now it’s UA.

Nokia Media queries

I have discovered my:

Nokia3100/1.0 (04.01) Profile/MIDP-1.0 Configuration/CLDC-1.0

Completely ignores media queries, with a Media test suite I knocked up. This is sad, as when this Nokia tries to load the floating style sheet of this blog it does a terrible job of it. It’s better when there isn’t a style sheet attached at all, which kind of defeats the whole XHTML thing in the first place. It’s real UA shame when the UA does not allow you to turn off crappy implementations of CSS.

So what now? You need to write some “middleware” to detect the specific device and not feed it a proper style sheet. That is really the wrong way to engineer device independant (aka Multi-purpose published, Accessible…) web pages.

The real culprit is the UA on this Nokia 3100. :/

On Subversion

At last my viewable online repositry is working.

This bug was bugging for all of this year so far.

It was not until I tried WebSVN and through their helpful mailing list (Thanks Lübbe!) I discovered it was an ugly permission problem. I recorded the solution in my tips and tricks section.

ViewCVS seems to do a better job of handling all the revisions. So I am using it instead of WebSVN.

Permission problems really suck. I have been using a UNIX type environment for quite so time, and this caught me. It’s amazing to think how much time and energy has been wasted with permissions problems. Especially the sort where you have re-login back in again.


I think a lot of the blame lies in the application. For example Subversion was asking me to recover the repo everytime it (svnserve or something) stumbled on a log with incorrect permissions. It really should have been able to produce a useful error message to indicate a permissions related problem.

After all this pain, I still recommend using Subversion over CVS for source control.

I am using Subversion for maintaining a distributed backup of my home directory with a few simple scripts timed to run updates via a cron job on the 3 or so machines I regularly use.

I maintain another “private” repositry for storing things like personal texed letters, private addresses and passwords that you won’t have access to. :)

Saint Petersburg Tips
> I'm excited about my russia trip. You - as an St.Petersburg expert -
> what shouldn't we miss out on? And don't tell me the basics like
> Heremitage. I want insider tips!

It’s a trip with Jukka right? Just hang out with him. :)

Ok. City Bar is the place to go for drinks and food whenever in doubt. It’s very close to the Hermitage. The street is Millionaya. Can’t quite recall the number. 101 or something. It’s not terribly well marked. :/

Read Saint Petersburg Times. Get a copy of the paper asap, as it’s better than the website.

Bolshsya Konyushnnaya ul is my favourite pedestrian street. It’s the best place to change money. Also it has some cafes at the of it, just beneath street level, which are great Russian places to eat a soup and drink some Vodka. It might look a little grotty, but they’re cheap and safe.

Make a photocopy of your passport and visa. Keep one at the hostel. You probably need to carry your passport with you, although I never like to. Some places demand the passport when you change money. Not in Konyushnnaya btw, that’s why I like it. Just be super careful with your passport.

There is bar on the same street called the Pregnant Spy, it’s worth visiting. But it’s expensive. Don’t eat there! Just drink something.

A vodka shot should not cost more than one euro. If it does, move on.

Don’t be afraid of Black Taxis (Datchka). Try learn some numbers to negotiate with. Otherwise have a pen and paper handy, as well as a map. You should be able to get pretty much anywhere for 5 EURs. Don’t catch a car marked with Taxi at the top. If you get vibes or their price is stupid, slam the door and move on.

Besides attempting to learn the numbers like 50, make an attempt to read cyrillic letters. It’s quite satisfying to able to identify a Restaurant. Say please and thank you (in Russian) whenever possible. And of course no thank you…

Having a map is damn important. When you do go somewhere, have it clearly marked and don’t rely on anyone else. Try keep to the Nevsky Prospect. It’s the safest place.

Avoid the police. Do not trust them. Don’t ask them for directions and what have you. You’ll waste you time and you’re probably have to pay them a fee as you will be missing something from your papers. If you do have contact with one, try memorise their badge number. If their badge number is not on display, be especially wary.

Cafe Idiot is often billed as a good place to visit. I think the food is terrible. Maybe worth visiting on a Friday night.

Do not goto Mcdonalds. :)

Toilets everywhere are dire. So plan your pit stops.

Eat soup. Drink Vodka. That’s your diet. Vodka kills all the nasties.

The metro at rush hour is to be avoided, at all costs. It is not only uncomfortable, but it’s typically the time you will get robbed as it is so busy and easy for criminals to escape. Carry money on your inside pockets. Split it up in at least two places. Do not carry anything valuable. I wouldn’t even bother with a mobile, but perhaps you might think you will need it in case for first time trips. The Nevsky metro is probably the most populace one for criminals.

I think my favourite metro stop is Sennaya ploschad. It’s not so much the metro station, but it’s a good part of the town. Just off the Nevsky, so a little cheaper. Full of shops worth buying food and alcohol from.

Have a cheap odd (something they will never see in Russia) western watch for negotiating with if you run out of money. :))

Don’t purchase souvenirs from stores. I guess the best place is near the Blood Church, but you need to negotiate HARD with them.

Try dress like a Russian. :) Dress darkly and functional. Nothing too bright or with excessive brands. Wear some comfortable waterproof shoes, which you are quite prepared to be crapped on. Most places are quite smoky, and Russian cigarettes are hardcore compared to Europe, so be prepared for your clothes to be almost destroyed. :)

Of course, epecially if you are a girl, it’s only common sense to keep in company.

Have the address of your Embassy written down, and marked on a map for emergencies.

If you have time KUNSTKAMERA is quite good and across the Neva from the Hermitage.

Don’t forget your student card for the Hermitage!


I am quite interested in this Request Tracker (user: guest pass: guest) from Best practical.

Ok, I don’t think anything can beat the Debian BTS at present. But that is too Debian specific.

If you run an IT support company you need to be the layer / middle man between Debian and your customer.

Some other interesting packages :

phpgroupware-tts – The phpGroupWare trouble ticket system module
request-tracker1 – Request Tracker, a GPL‘d Trouble Ticket System
request-tracker3 – Extensible trouble-ticket tracking system
rt3-clients – Mail gateway and command-line interface to request-tracker3
rtfm – RT FAQ Manager

There is always Bugzilla, but I hate it’s interface.

Food for thought.


A collegue asked me how you draw a straight line in the GIMP.

Good question.

I never managed to figure it out.

But whilst trying to get away from the freezing server room where I am testing the latest Skolelinux

I found the answer. Now how do I do an arrow?


Last summer my flatmate’s back wheel of his bike was stolen overnight at Kontula Metro. Since he left the country, I took the bike. PAINSTAKINGLY.

Last month I repaired it. It was a bit of bother getting in around let me remind you. It cost 150 EUROS.

And yesterday the FRIKKIN’ Taiwanese frame cracked. IN TWO PLACES. Including that bit in the middle, where the pedals are attached.


Bad taste

Ceramic panther

Can you believe people pay hard earned EUROs for such bad taste?

Ok, what news. Mozilla is giving me such heartache in unstable. These extensions I’ve installed I suspect are the cause of the problem.

I have been mostly working on another gallery system for my pictures. I have been employing test driven development. The test cases are painful. But it’s not as bad as coding the real thing and getting suck I guess. Once the test cases are done, it’s great to knock them from Error to OK one by one. :)

I changed the page system to show several posts on one page. The single page system from before didn’t seem go down well with people. I don’t know. It’s just that I used to have about 300 unique visitors a week, now I have about 200. What gives? :)

I have been doing a lot of School linux stuff. I have lots to report. I will need to put it on the Koululinux pages probably. Although I don’t like the name Koululinux anymore.

OK LASTLY. My sister is selling her Thinkpad. There is something wrong with it. It doesn't boot properly. If you're looking for a little project, bid on these quality components.


Imagine by John Lennon is one of my favourite songs.

The lyrics completely agree with me. Especially on the issue of religion.

My jesus freak flatmate, fresh from a conference in Hungary with a fair few self help books:
christian self help books

Has absolutely shocked me with his new shirt:

Imagine there is no heaven Imagine there is

Oh course I went on a complete verbal assault when I first saw the shirt. Now I’ve calmed down.

What a sick twisted selfish gimmicky stunt. That’s so ignorant. It’s atheist blasphemy. Offensive and appalling.

XHTML browser

This Nokia browser guide just popped through the RSS aggregator.

There are as 1 billion GSM users (Source: GSM association), as opposed to at least 200 million Internet users (Source: Nielsen//Netratings).

Not every mobile user has an XHTML browser, but it’s probably growing quicker than PCs.

More specs, like the mimetype is quite useful to know what these devices can handle.

hendry@scrooge-15:~/100konic$ identify ‐format %[EXIF:*] pict0725.jpg
pict0725.jpg JPEG 2048x1536+0+0 DirectClass 8-bit 523.4kb 0.000u 0:01

hendry@scrooge-15:~/100konic$ identify -format %[EXIF:*] pict0725.jpg
Make=Konica Corporation
Model=Konica Digital Camera KD-310Z
DateTimeOriginal=2004:03:28 15:34:18
DateTimeDigitized=2004:03:28 15:34:18

I copied with my mouse the ‐format which does not work…


At least I can read that man page. At work, Konsole is garbling them up. FFS.

1G Mobile information appliances

It’s quite harrowing to read history. I have discovered an artifact, where WAP Forum and others debate about how to do the Mobile Web.

WAP Forum decided to create their own protocols, instead of using Internet protocols such as HTTP or the amazing homegrown Mowgli approach to solve narrow and noisy problems associated with wireless networking. That’s history.

There are such juicy quotes:

Unwired Planet:

Q: If existing web standards are hard to support, use e-mail and ascii display.

It’s not enough.

W3C (Henrik Nielsen):

Q: HTTP is not needed on wireless

current HTTP may be not best, but why do you need new protocol?

Q: Don’t you trust gateways?


New Interactive Media over the Mobile Communication Network

Q: How the content provider generate pages?

This is just Compact HTML. Content provider will write text based primitive page.

Q: Is there any SDK or tools to convert existing pages?

No, we provide a guidline.

Q: To support various clients is hard.

Nobody can say that thisi is the best way, The market will decide.

Prof. Martti Tienari:

Q: use HTTP/1.1, it will 5 times speed up.

Mowgli can 2–20 times speed up. It depends on data.

More news

I must say I am pretty addicted to BBC News. The Mobile version is great, it’s the only site I access with my Nokia 3100. Are there any others? A mobile Guardian version would be nice for another Point of View.

News nowdays is just so entertaining. There is just amazing stuff happening out there in the world that makes my brain boil with thoughts, trying to apply logic to it all.

Anyway, the other day I fealt a little in the dark that my media sources didn’t show the Falluja mob. Today, I found it on the Memory Hole. The blog is quite interesting. I find The Agonist quite a good blog for news too.

Ok news, this is Natalian. I am an Natalian. I am from Natal. Kwa-Zulu Natal as it’s now called. So here’s my bitter opinion on the recent South African election. Remember I was disenfranchised.

ANC has done a sterling job staying in power in african democracy style. Probably the best performance in whole ten years they’ve been in power. :) My reasoning is because my home state of Natal, is Zululand. Home of the Zulu “tribe”. The Zulus’ political party is IFP. The Zulu people there wouldn’t vote for the Xhosas’ party, the ANC. Understand that. There are so many deep tribal divisions in Africa, understand that. It wouldn’t make sense that the ANC get more votes in Natal than the IFP. The IFP are taking the ANC to court over the matter. The IFP were probably the strongest opposition party to the ANC in the past. Now the IFP are withdrawing from cabinet.

Born and Raised in South Africa

I know it’s not popular for South Africans to discuss politics. But as a South African, these last election results are depressing. People are voting along racial lines. Fiercely loyal. They’re not thinking.

There is going to be a Freedom Day celebration(10 years!) held by the South African embassy on Monday at Hanasaari. I am going to get pissed on free South African wine to celebrate.

Referral spam

Since this site has been hit with Referral spam, I have taken action by placing a robots.txt in this site’s statistics directory to exclude search engines’ robots (aka web crawlers).

That way search engines should not index spammer’s Referral links, and hence they should not have higher search rankings. If I have time I will name and shame these assholes.

Line mode browser

I was just going through W3 history when I discovered the Line Mode browser.

Am I always thinking how to better design browsers, especially for small MMI like a wristwatch or mobile, and I think how this browser does it, is quite novel. What I hate about browsing on my phone is having to unpredictably jump from one highlighted link to another. It’s part of the libwww0 package on Debian, apt-get it and try it out:

hendry@bilbo:~$ www

Kai Hendry @ Helsinki

Kai Hendry’s Homepage


Contact details

Full Name
Kai Ian Hendry

Porthaninkatu 4 B 38, 00530, Helsinki, Finland.




Office telephone

GPG/PGP Public key
gpg—keyserver—recv-keys 223419784

IRC nick
hendry on freenode, ircnet and draq on quakenet

Jabber5 UID

238(I prefer Jabber peeps)6684

1–5, Top, Up,
Quit, or Help:

With a mobile I can easily enter the number corresponding to link via my numeric keypad. Even double digits are OK, if I enter the numbers in a “remote control” UI way.

I think this is kind of interface I would like to see on my mobile.

Microbrowser blues

On my Nokia 3100 secure http (HTTPS ) does not work.

I get a NO GATEWAY REPLY from my mobile. I went through a million menus to find, Connection Security. I turned that on and got a SECURE CONNECTION NOT AVAILABLE after the Creating GPRS connection dialogue.


(In other news I will be in Poland for a week, so if I am not posting again after that time I’m probably dead)