Gah, the patch I’m working on is growing larger and larger!
At first, I just wanted to remove the default CSS and use the lines gained (remember the 4000 lines limit I set myself) for a simple interface to set up the style sheet for a new wiki. Basically none of the wikis I saw “out in the wild” used the default style sheet, and lots of people complained that the default style sheet looked crappy.
If I want to save the style sheet on a page, however, I will have to know which pages exist at the very beginning of every single script invokation. This makes a whole lot of optimization unnecessary that the old UseModWiki code already included: No file was read unless absolutely necessary – and that included the cache of all pages. So by default, Oddmuse did not know what pages it “had”. This kind of initialization on demand was used for NearLinks, InterLinks, PermanentAnchors, and RSS URL to interwiki moniker translation. I decided that all of it could be dumped. If somebody felt like saving some CPU cycles, let them set the variables that indicated successful initialization.
February 24, 2005, I bought SkypeOut calling worth €10.00. I used a tiny amount of it once for a phone call that failed due to bad quality. Today I wanted to use it again. It was gone.
What the fuck?
Oh, so the money just disappears if I don’t use it? Looks like robbery to me!
When I click on the “Buy Skype Credit” button, this is what I see:
I can’t believe this…
This will finally use the domain name I have had for so long:
I like Writeboard‘s scope (sharing single pages of text on the web, no markup, diff, private or public) and design (small, elegant).
Like very very simple one-page wikis, private or public at your discretion. But I like their FAQ:
Aaaargh! The verdict has been spoken.
They do use formatting rules.
It is interesting to note that both services provide text-editing for free. I really think this kind of thing should push MS Word over the edge. I use MS Word at work practically every day for specifications. The entire concept of Word documents sucks. (Note that MS Word in itself has gotten a lot better than it used to be ten years ago.) The concept sucks because it is unwieldy, complex, bizarre, byzantine, opaque, and confusing. The sad thing is that I often feel that most other people I know who don’t know anything but Word are much worse Word users than I am. And I don’t even like it!
Anyway. Compare Writeboard pricing with Writely:
I like how Writeboard doesn’t promise any new features.
I would like this to be FreeSoftware, and would totally hope that they would succeed by selling services alone.
Just to make sure there’s no misunderstanding. I don’t like it because it is somehow part of the “Web 2.0”. I don’t like it because it somehow uses AJAX (does it?). I like simple design. SimpleSoftwareDesign, actually…
I gave it a try. Check it out. The password is “alex”.
They offer a RSS feed:
I see that the feed is currently invalid: pubDate must be an RFC-822 date 
On the other hand the UTF-8 decoding bug is probably mine. Damn.
Update: Not true! feedvalidator.org reports: Your feed appears to be encoded as "ISO-8859-1", but your server is reporting "UTF-8" 
Update: SynchroEdit is (going to be) both a service and free software!
On my player, I had the following:
Nice article in the Herald Tribune with lots of annecdotal evidence for the ever increasing cost of our current patent regime. The chairman of the International Optical Disc Replicators Association says:
via Tim's Radar
Learn Lisp using an online Lisp interpreter and an online Comic.  Awesome!
via Lemonodor's post on porting the game to Ruby…
Got Apache 2.0.54 running on my iBook with mod_perl 2.0.1 and Perl 5.8.1. At last! Oddmuse revision 1.607 will work in that setup and I documented it on Oddmuse:Using mod_perl.
The code I checked in today was rather large. I am determined to get mod_perl right, finally. And I added a feature whereby users can download CSS files from a server and install them locally. Since I cannot determine (and write) to a document directory on the web server, I store it on a page and link to it from the HTML generated. This will of course invoke the script twice for every request, even if the second call just returns a 304 Not Modified. I used to inline such pages because I felt that saving on number of processes and CPU usage was more important in a shared hosting evironment. These days I no longer agree – specially in a mod_perl environment, this is no longer important. Bandwidth turns out to be the limiting factor (and the cost of bandwidth).
Also note that a lot of tests are broken at the moment.
My Banned Content Network no longer includes the MT Blacklist.
See BannedContentDiscussion for more info about the copying of the banned content lists…
The Invaders was another superb poem I got via the Minstrels mailing list. Thanks, NoufalIbrahim, for recommending it at the time.
The Invaders Coming by night, furtively, one by one They infiltrate according to the Plan, Their orders memorized and their disguise Impenetrable. With the rising sun Our citizens welcome them. Nobody can Think that such charming creatures might be spies. So feeble, so helpless, no one could suspect They come to make this commonwealth their prey; So few, they pose no threat; their cohort grows So imperceptibly that we neglect To notice how it musters day by day And, unalarmed, we watch as they impose Themselves, make friends in all directions, take Impressions of all keys. They gain access To all our secrets; learn to speak our tongue Like natives; profit by each false move we make; Work on our weaknesses; observe and guess The sources of power and study them to be strong. And when it happens, there will be no fuss, No streets running with blood, no barricade. We shall simply wake one morning to discover, As those who ruled this city before us Found by each door a headstone and a spade, That a new generation has taken over. -- A. D. Hope
I really like the Signal vs. Noise blog by 37signals:
689 passed, 1 failed.
Slowly things are stabilizing again! Phew. mod_perl support was moved into another file. I can’t remember the reason why mod_perl support had been part of the main script in the first place. But lazy as I am, I would not have made the move if I had not been stumped with the problem of converting the following use into a require:
use Apache2::Const -compile => qw(OK);
I asked about it on #perl on freenode, pasting five lines of code. Got an unfriendly lecture on using the pastebots for pasting five lines! I wonder how
Tonight we played Time Splitters 2 (yes, the older one), and enjoyed it very much. When we tried it ages ago, we must have missed some essential features of the game.
Later, we played Dead or Alive 2: Ultimate and the nail of my right thumb is now red and blue and hurts as if it had been hit by a hammer.
So, all tests work again, the modules have been adapted, the script works with and without mod_perl, 1.611 is a release candidate! 😊
I bit the bullet and installed it on my sites, too.
Yeah, I moved back from Colloquy to an Emacs-based IRC client: rcirc. Easy to install (one file), easy to hack. ERC turned out to be somwhat unwieldy, mentally. Getting the autoloads right wasted a few minutes every time I had to reinstall it. I do that from time to time as I move to a new developer machine and install Emacs. Having a very simple setup of external packages is a bonus in such situations.
Anyway, rcirc was so hackable that I added two features I missed in no time: Giving nicks unique colors – something I got from a Colloquy theme by Les Orchard of 0xDECAFBAD! I liked it, I wanted it. rcircColoredNicks.
The other feature was
So basically, Colloquy has the features I need and a Cocoa interface, where as rcirc has the features I need and uses Emacs.
Give me Emacs any day!
Hah, new episode on 12 Byzantine Rulers – at last!
Maybe I should reread the corresponding chapters in Gibbon’s Decline and Fall of the Roman Empire.
What I did for most of 2005 was trash email with a quick hand, rarely double-check spam filters, but I never emptied my trash folder. So I should be able to get some interesting numbers at least for the second half of 2005. Now that would be cool.
Hugh Macleode writes the global microbrand rant and mentions something I’d like to achieve: Live decently at 2% of the stress level of urban life. I’m currently at 80% of the stress level during 8 months a year, at perhaps 5% for the remaining four months. And that’s already pretty good, I think. 😊
So how would I do it, what am I good at? I like to work on Oddmuse, hack Oddmuse configurations, write CSS for Oddmuse, and produce websites for other people. I also know that I’m good at SQL and talking to people. What a weird collection of talents. I’m also a pretty fast reader.
I remember that I once had a page where I tried to write an intro page “Internet for Women” where I imagined myself selling wiki setups to middle aged women in their forties and fifties. I tried to think of the ones I knew, they seem to like my style, some of them have a family, some of them have a job, they don’t like to handle computers, they’re still interested in the Web, they don’t chat or email much, etc.
Using a silly title in terms of technical correctness (Internet ≠ Web) and emancipation (as if Women were per se somehow Internet challenged) allowed me to focus on the target audience while writing and rewriting. I abandoned that page and that little idea of mine, by the way. All that remained is my current “beige-red” CSS. 😊
On my player, I deleted Play by Moby, Felt Mountain by Goldfrapp, and Big Calm by Morcheeba. I added the two CDs from Lift Your Skinny Fists Like Antennas To Heaven by God Speed You! Black Emperor.
I spent a long time in the last two days tracking down a double unquoteing issue of named entities such as
&copy; (normally this displays as
©, but recently it got unquoted twice and displayed as ©).
This was introduced by a recent safety feature: The results of a GetParam call are now always HTML-quoted (to prevent HTML/script injection via parameters). This has an effect on saving, because there used to be a feature that HTML-quoted new text, unquoted entities, processed the page, retrieved the text again and saved it without quoting and unquoting.
Today, there’s a slight difference: When retrieving the text again, it is automatically HTML-quoted. I therefore HTML-unquote it again before saving. The problem is that HTML-quoting still unquotes entities. When saving, this text is unquoted again. So entities are unquoted twice due to a “feature” that no longer serves its purpose.
I think 1.615 should have it fixed. I got distracted because some tests failed, but I think that the tests were wrong. Entities are no longer spared quoting. Instead, there’s a defaul text formatting rule now which does the unquoting for named or numbered entities.
Today I spent a long time tracking down the reason why file uploads no longer seemed to work.
This was a due to a wrong encoding type for forms. For file uploads to work, we need “multipart/form-data” instead of “application/x-www-form-urlencoded”. I removed the manual override from Oddmuse in a recent checkin. The reason was that the manual override triggered a bug in newer versions of CGI.pm: The attribute would be listed twice per form element, resulting in invalid XML. Removing the override relies on defaults, however, which again seem to depend on the exact version of CGI.pm in use.
I’m using start_multipart_form instead of start_form, now. I’m sure this is not supported in all versions of CGI.pm, but at least the versions I am confronted with at the moment seem to know it.
I upgraded my desktop from Slackware 10.1 to 10.2. Everything seemed to work – just follow the instructions in the UPGRADE.txt file. But now I discovered that USB is not handled correctly. No more external USB drives. Huh? I’ll have to look into this.
See comments on this page for the story about conflicting kernel modules messing up my USB access.
It took me more than two months to realize that the default X11 setup was wrong, too. See 2005-12-27 Software.
Weil der Abend mit zwei Gästen so schön war…
|1 Tasse Chana-Dhaal (halbierte Kichererbsen)||Die Linsen drei Stunden in Wasser einweichen.|
Das Einweichwasser abgiessen, die Linsen in einen Topf geben, und mit 2 Tassen Wasser auf kleiner Stufe eine halbe Stunde kochen lassen
|Erdnussöl, 1 TL Senfkörner, 1 TL Schwarzkümmel (Kalonji oder auch Zwiebelsamen genannt), 1 getrocknete Chilischote (oder etwas gemahlenen Chili)||Nach etwa 15 min Linsen kochen kann man schon mit dem nächsten Schritt beginnen: Öl erhitzen, Gewürze anbraten.|
|1-2 Tassen Spinat (tiefgekühlt ist kein Problem)||Hitze reduzieren, Spinat hinzufügen, bei Bedarf etwas Wasser beigeben, und mischen.|
|1 TL klein geschnittener frischer Ingwer (oder mehr!), 1 TL gemahlener Koriander, 1 TL gemahlener Kreuzkümmel, 1 TL Salz (oder etwas weniger), je nach Masochismus noch mehr Chilipulver||Gewürze zum Spinat geben, mischen, und ca. 10 min auf schwacher Hitze einkochen.|
|Saft einer halben Zitrone (oder etwas weniger)||Inzwischen sollten die Linsen auch fertig sein, unter den Spinat mischen, Zitronensaft dazu, mischen, anrichten, fertig.|
I did a large search-and-replace operation on Emacs Wiki the other day, and this large group of edits somehow crash the despamming extension. I worked around the problem by limiting despamming by the cronjobs to one day only, but basically the problem remains unsolved.
2005-10-17 Kochen shows that I need to work on the CSS: The logo somehow prevents the table from expanding to the right when printing, and there’s an extra hr at the end of the table.
Internet Explorer sucks so incredibly much when using it for HTML form work (Wikis, Web Mail). If you switch back and forth in the history, your current state is lost. No matter how much time you spent writing it.
Joel Spolsky writes about cubicles vs. private offices. I work offices together with 4 to 6 people, usually. Joel writes:
I think he’s right. I hate interruptions.
Is JakobNielsen right when he recommends Using Link Titles to Help Users Predict Where They Are Going? I’m not sure. I think it would be even better to provide enough context so that relying on link titles is not needed at all.
I just use it for NearLinks; there, I indicate to which site the link will take you.
Die bittere Wahrheit des Papierkrieges! Egal ob Steuern, Niederlassungsbewilligung, Einwohnerkontrolle, Visas – die Logik des Staates unterscheidet sich von der Logik der Datenschnüffler im Dienst von Kommerz und Versicherungen. Dort wird gesammelt und zusammengestellt (Zielgruppen) oder ausgeschlossen (Risiken). Beim Staat funktioniert es anders: Es werden tausend Regeln aufgestellt, damit die danach folgende Beamtenwillkür abgesegnet ist. Zum Glück bin ich bis jetzt noch nie so richtig unter die Räder gekommen.
Meinem Vater ist das aber schon passiert: Nach zwei Jahren Auslandaufenthalt in Thailand meldeten sich zwei Behörden. Die Steuerbehörde behauptete, dass der Mittelpunk des Lebens trotz Abwesenheit die Eigentumswohnung in der Schweiz sei; die Fremdenpolizei behauptete, dass die zweijährige Abwesenheit die zugestandene Frist für seine Niederlassungsbewilligung überschreite, und ihm diese deswegen aberkannt werde.
I fixed the Oddmuse:Local Names Extension today after noticing that it did not work on my site. I noticed that something was not right. Then I wrote two simple test cases which worked, wrote some more, and when they failed, I fixed the code to get the working again. Automated testing rules! While it is often difficult for me to do for new code, it works very well for many bugs I’m discovering later.
I haven’t found a way to write mod_perl tests that don’t involve an entire web server setup and assumptions about URLs etc.
At first I had tried to isolate the local names bug on my local mod_perl instance. This proved to be very difficult. Resetting the code was also difficult. So there were bugs in the code, old code not being updated on the server, etc. It was very tricky to work with. When it all worked in an ordinary CGI environment again, and I did some testing involving the creation of new files using the mod_perl instance, everything started working again. I think having both the CGI version and the mod_perl version use the same database is a bad idea.
http://itunes.stanford.edu/ – includes faculty lectures! Cool.
StefanBucher hat eine kleine Liste von Webseiten aufgestellt, welche beim Schreiben helfen.  Und er hat auf die Word Nerds verlinkt. Und ein Kapitel zur Verwendung von RSS in seinem Online Buch geschrieben. 
The CD is based on Morphix which is based on Knoppix.
The creator of the CD gets it:
I like this part. But it got me thinking. What’s so hard about setting up a public WiFi? Is it hard to set up? Certainly the ZoneCD doesn’t require much:
It seems to be easy to setup in “open mode”, ie. no logins, no filtering, etc. I’m not sure what “closed mode” requires – fancy setup, or access to their “control server”. Perhaps I’m misunderstanding. I’m in favor of Open WLAN, so all I think we need are more people offering access points.
That should be easy to setup using a self-sufficient access point. I’m very happy with my Apple Airport Express for up to five people. And they have a bigger one, the Apple Airport Extreme for up to fifty people.
So what would ZoneCD give you beyond that? Control! I think that’s the point:
I prefer Trusted!
|Title||Time||Speaker||Lecture||Rating||Squandered Victory: The American Occupation and the Bungled Effort to Bring Democracy to Iraq||1:34:16||Larry Diamond, ‘74, MC ‘78, PhD ‘80||Regional Speaker Event (Denver)||★★★★||Perception, Decisions, and Reward: Toward a Neurobiology of Decision Making||235||William T. Newsome||Bio-X: Talks in English||Popular Constitutionalism and Judicial Review||1:15:13||Larry Kramer||Regional Speaker Event (Monterey)||The United States and the World||58:28||Philip Zelikow||Freeman Spogli Institute for International Studies||U.S. Foreign Policy: The Road Ahead||53:29||Samuel R. Berger||Freeman Spogli Institute for International Studies||Looking Ahead: A New Nuclear Arms Race||1:24:38||Scott Sagan, Christopher Chyba, Hans Blix||Freeman Spogli Institute for International Studies||★★★★||Gurus, Hired Guns, & Warm Bodies||1:29:27||Steve Barley||Management Science & Engineering||Presidential Politics and U.S. Foreign Policy||1:53:50||Coit Blacker, Larry Diamond, Judith Goldstein, William Perry, George Shultz||Reunion Homecoming 2004||★★★|
Copying the MP3 files from iTunes proved to be impossible. iTunes insisted on copying the M4A files instead. This program truly is teh suks!
That’s how innocent geeks like me end up writing command lines like the following:
This assumes that you converted all your M4A files to MP3 and want to copy them all to the current directory. This works for me because the Standford files are the only M4A files I have.
OSX also sucks when used for removable drives such as MP3 players, because deleting files will just move them to a hidden directory on the same device, so you’re forced to empty the trash if you do that. And emptying the trash will empty the trash for all devices. Teh suxs – I’m telling ya’!
I found out how to delete the M4A files: After converting the files, they are still listed in your Stanford music store folder, but in your library, each title is listed twice. With no indication of which file is the MP3 file and which file is the M4A file, I took some random samples and decided that the second file is the one I want to delete. Manually mark these, and delete them, moving the files to the trash, then double-check there (sort by date and try to find your files in the messy list).
The longer I work with the system, the more I am convinced that this is not what I consider to be usable software. All tasks except sorting, playing, streaming, and downloading tricky and convoluted, involving a lot of manual clicking, double-checking and experimenting. Yuck!
I noticed that the MP3 files I listened to seem to end about a dozen minutes early. I’ll have to listen to the discussions at the end on iTunes and check that the M4A files are complete.
I generally believe in writing text instead of simple scoring. Therefore:
We had a day or two without Internet access at home. I started reading a new book! 😊
I am very much enjoying The Last Light of The Sun by Guy Gavriel Kay. But you know I like the guy, helped finish the Silmarillion and all that. 😊
Via StefanBucher’s delicious bookmarks:
I wonder how many users ever click on About, BlogRoll, CSS, New, and Calendar.
Today I brought OddWiki back up, upgraded modules, fiddled with the setup and now users can have a CSS file per namespace.
I also improved the maintenance script such as to mark wikis for deletion that have not been touched in 180 days.
Somehow talk turned to Chinese Astrology and some people being proud of being a Tiger instead of a Buffalo:
Now: Who is who??