Week's Preview: Busy

The preview for the coming week says that I will be pretty busy. Me and my flatmates, we're moving to a bigger (and nicer I believe) appartment. I'm looking forward to a lot of work, packing, cleaning, carrying, that kind of stuff. The new place is worth it. We get one more room, for the same rent. My own room will be a little smaller. But since I'm next to the living room, I'll just hop over when I want to stretch my feet on the sofa. One reason I wanted to get a bigger appartment is that now friends can stay for a few days when they come to visit here in Athens.

Living in Greece is special in this respect: It's a vacation country. Athens itself might not be the first choice vacation spot, but it improved a lot in the last years, now it's interesting and cool for a city trip. So it happens that friends and familiy come to visit or pass by on the way to their vacation destinations. Now with the extra living room we will be able to provide them with a couch-bed. And some privacy, since the living room can be closed.

Greece on Wireless

Another big Yay! to my boss, I got a new MacBook [1]. Armed with this one and its built in Airport card, I checked the wifi nets both at my old and new place... wow, has Greece changed in respect to the Internet...

Box Moving

I should be putting stuff into cardboard boxen, instead I'm using every opportunity to do something else. Playing around with my new computer definitely counts in that category and is way more fun than preparing for moving to the new apartment. Yesterday evening I found out that the macbook runs the Zwiki unit tests in 17-20 seconds, even on battery and in "Better Battery Life" energy saving mode. Did I mention that the battery life is fantastic, even considering that the battery is new? I haven't yet done anything with the machine that really taxed it. But the test install of Plone [1] is a good indicator: The machine is so fast that Plohn pages load almost at acceptable speed! Now back to stuffing things into cardboard...

1: Yes, Plone sucks and I wouldn't touch it with a stick. The reason is simply that I need this install for Zwiki debugging and testing.

Born to Screw

Tired, that's what I am and moving hasn't finished yet, the tough part comes today. Yesterday I dismantled my bed, which is a huge metal affair that lets me sleep "upstairs". Lots of screws to unscrew. Funny how my years spent in a motorcycle repair shop prepared me for this: I never have to think in which direction to turn a screw, no matter which 3-dimensional position it holds against me. Unless of course I start to think about all this, at that moment I get totally stuck and won't remember which way to turn even if I think about it.

The Writing on the Wall

Even though I've worked in advertising for some years, there are some pieces of advertising that really annoy me. For example the poster for "tap dogs" (a musical? a dance show? whatever...) at a lot of Athens bus stations. I didn't like the poster from the start, and it's there for ages now. Can we have something a little bit more intelligent, or at least a new one once in a while?

On the other hand, while trying to find the shortest path from the new appartment to work this morning, I walked through a street that has an anarchist graffiti about every second or third house. Now, I'm not a houseowner, so I don't know if those would annoy me if they were on *my* house. But that street sure had some interesting thoughts. "We haven't had so much football and cops since the military dictature" - that sure pings my mind. Could it really be? Wouldn't it be logical, with all the student demonstrations lately. There sure is a lot of football lately too.

The Joys of Being Offline... and UTF-8 mutt

One of the less comfortable results of the move to the new appartment is that I currently don't have an Internet connection at home. I could force my way into one of the wifi networks around here, but I won't (and the one that has been completely open has been slightly locked down lately).

So I'm back to my trusty Bluetooth/GPRS connection, well known since my island days. It's a nice reminence for the moment. I hope Vivodi won't break their record in waiting time to get us an ADSL connection. Today I had a phone call from them, someone who worked on my application had a question. Still meditating about this being a good or bad sign.

Yesterday I had copied some Zwiki issues to my laptop, and was sitting all the evening on the new sofa, hacking and investigating along. Sadly most of the issues were just old stuff that should have been closed a long time ago, nothing for me to fix. I started with some other, bigger stuff, but sometimes it would be nice to be able to look up something on the web.

Part of my "diet Internet" setup is using mutt for mail. It's *way* more economical for bandwidth, and of course nothing beats a terminal window in userfriendliness (assuming the terminal decides you are its friend). Yesterday at work I had downloaded the tarballs for mutt and... drumroll... ncurses. Mac OS X has ncurses already. But I wanted to try build mutt with ncursesw, that is with "wide-char" support. Whenever I try to build software while offline I invariably miss a library and have to stop till I get a connection to download it another time.

This time everything worked. And it worked very well, my mutt does Greek in UTF-8 everywhere now. Displaying messages properly in the pager, subjects in the message listings... everything as it should. I'll try the same thing on OpenBSD next.

On Mac OS X (10.4) I built ncurses / ncursesw like this: ./configure --enable-widec --prefix=/usr/local and then I went on to build mutt with this incantation: ./configure --with-curses=/usr/local/include/ncursesw --enable-pop --enable-imap --with-ssl. My Terminal.app is set up for UTF-8 (as described in other posts on this filty blog, see "Best Of").

Exceptions, PGP, and Athens by Night and Bike

Yesterday I worked some more on Zwiki, sitting on the new sofa, hacking on the new laptop. Even though I didn't get out much, I enjoyed the good weather in the new, shiny and light apartment. My main target was reducing the "blanked" except-clauses. Catching exceptions in the code is a good thing, but only if we catch the specific exceptions that reasonably might happen. Moving forward on that topic.

Also I made some progress with the PGP seminar I'm preparing for HelMUG. I had started writing up for this two months ago. Now I reread what I had said, decided it's all boring and not up to standard and started anew. I'm done with most of it now, but still have to fill in some blanks. Also need a lot of corrections in the Greek text.

After all that "work" in the evening I went out with libero (of HelMUG fame). We rode on his Vespa across town. Athens by night on a bike is always a special experience. Driving between rows of cars to be the first on the traffic light. In difference to the 1980's we're wearing helmets now. Modern times. We rode to a bar called "Pop", near Ermou / Agios Markos. There we had a drink (or three) and enjoyed the good music. Before going home we picked up a meal at a 24h restaurant near my place. Nice way to end a good day.

Generating Tags for Python Code (including Subfolders)

If you want to create a "tags" file for use with vi / vim (or even emacs [makes sign of cross]), there are a couple of tools out there. ctags(1) comes with most modern OSs, but it doesn't do python. So hint 1: Use the script ptags.py that came with your python distribution [1]. To build tags for all python files in a directory the usage is something like:

ptags.py *.py

Hint 2: If you want to build tags for all python scripts in a folder
hierarchy (say for some project) you can use:

find -X . -name \*.py -print | xargs ptags.py

These of course assume that you moved ptags.py to somewhere in your
shell's $PATH. Hint 3 would be the -X argument to find(1), it's a safety switch that tells find(1) to ignore filenames xargs would choke on.

1: If your system has python but doesn't have ptags.py, download the
matching tarball from python.org, just untar it and find it in the
contents (Tools/scripts/ptags.py).

PGP Talk for HelMUG

Yesterday evening I was with citylop (of HelMUG fame) at the Dasein in Exarheia. We were going through my notes for a PGP Talk which I will be giving for the Hellenic Macintosh Users Group HelMUG. We also signed up for the Dasein's event room. The talk will be on Sunday, April 22nd (13:00 at the Dasein). The official invitation and a signup form are forthcoming. The event will be free - maybe we will let a hat go round in promotion of the user group - but participants will likely have to sign up in advance.

I will hold this talk in Greek. Yes, that's right. The betabug speaks Greek, even though giving a complete talk in that language still scares the hell out of him. You can bet that I will rehearse a couple of times.

Motivation for this is at once that I take a masochistic pleasure in public speaking (preparation is usually so bad that I swear each and every time to never do it again, but giving the talk is really fun). Also we want to get a series of talks going in promotion of HelMUG, to further spread the word that there is a Mac user group in Greece and that it's good for Mac users here to unite and help each other. So someone has to make a start!

Oh, about the talk. It's titled something like "Introduction to PGP - protecting your privacy in email". I'll give a very basic introduction to the why and how to encrypt and sign your mails. It's not going to be a workshop where you install software yourself (maybe another time), but rather an occasion to get a simple introduction to what you can do, even if you're not a tech-head.

Back when Steve and me presented the iMac

While slowly moving my digital stuff to the new MacBook, I came across this old picture of mine. Man, those where the days. Now I'll be giving a talk about PGP for HelMUG (see previous post), back then I presented the new iMac together with Steve Jobs. Next time I'll be sure to wear some flowers in my hair too when I come to San Francisco! (As usual, click on the image for a bigger view.)

A Story of Workarounds and Bugfixes

I like bugfixing. No idea if it's my nickname that's at fault (the
nickname was there before my appetite for bugfixing), but I also seem to
have some success with it. Sometimes it can get a nice twist. Take for
example this problem Zwiki had in rendering
footnotes in RST pages: It looked like we would need a workaround in
the code to make the problem go away, a special case with extra checks,
bells and whistles. I took the plunge into the code and started looking
for where to apply that...

Zwiki 0.59 RC2 is out... test, test!

Over the weekend Simon has released Zwiki 0.59 RC2 over at zwiki.org. It's been a while since there was a Zwiki release, so this one contains a lot of bugfixes. Some of the bugfixes are relevant to making your fight against the spammers and vandals who haunt any "open" wiki a better fight. We also have a few select new features, like "If-modified-since" handling (aka "conditional HTTP GET", or "304") to reduce traffic and server load, and sortable views of the issue tracker.

This is a Release Candidate, so please download and test it. Don't be afraid of testing though: The code is already running on zwiki.org, my own wikis and a few other places, so it's stable enough. We also need all translators to look through RC2. The final 0.59 release is due April 2.

Zope in Greece Meetup

On Thursday I will meet with a couple of people who are also doing Zope stuff in Greece. It will be just an informal meetup, going out for coffee basically, maybe looking at examples of what people are doing. The interesting part is that many of us felt like they are the only one's doing Zope stuff here. So a little getting in touch could be fun.

FloCafe - Starbucks 1:0

Yesterdays Zope meetup showed one interesting result: The outcome of the "wifi battle" of Greece's cafeteria chain FloCafe against the imported Starbucks chain ended with an easy win for FloCafe. Starbucks has been offering wifi Internet access for a long time now, but charging 6 Euro or so per hour is no defense against plain free wifi access at the wifi newcomer FloCafe. Coupled with good old greek hospitality the result is clear...