Diary SiteMap RecentChanges About Contact Calendar

Search:

Matching Pages:

Page Collection for ^2006-10

2006-10-04 The Price of Enforcing Copyright

An interesting article on the O'Reilly Radar talks about an idea LawrenceLessig mentioned: Copyright protection should be short, and renewing it should cost a tiny bit of money. As the author points out, the current YouTube situation is a bit similar: As long as YouTube doesn’t have tons of money, you can’t make money sueing them. Therefore, enforcing your copyright on that site has a tiny non-zero cost: Searching the site and writing all the emails asking them to take down protected material.

I like it. :)

Sounds a bit like passive resistance to me. And I think that’s what we should be doing. I don’t think we all need to break the law to show our displeasure, but making it harder and harder for them to run business their way, ripping us off and sueing us – that’s the way to go.

I guess that’s why I support the development of decentralized and anonymous PeerToPeer filesharing protocols and networks. Not because I want to use them to get at all the wonderful music, movies and books out there, but because I want to make it more difficult for them to prove their point. Don’t buy their CDs to deprive them of their income, force them to hire expensive specialists and lawyers, lead them on to false trails and into dead ends, wasting their money. Until the competitors who get it drive them from the market.

Notice how I carefully avoided defining who “they” are. Not all publishers are evil, not all copyright is bad, and collecting societies are not necessarily corrupt. But many are. ;)

Tags:

Add Comment

2006-10-05 Christian Fundamentalism

TelePolis writes about Christian fanatics [1], based on the movie Jesus Camp.

Take a look at the pictures and videos.

Scary!

Disgusting.

The 2nd video has a short interview sequence that basically says it all: The goal is to produce stupid fanatics just like they do. Which brings me back to my favorite Christa Wolf quote: “What’s the use in fighting a war if you have to take on the traits of your enemies in order to win?”

I mentioned that before, of course. 2004-10-03 USA, 2004-05-14 Israel, 2005-12-08 England Torture, 2004-07-02 Iraq.

Oh and unfortunately, this phenomenon is not only limited to the nation with “the most powerful military in the world” but Europe has its share as well: Jesus Revolution, for example.

Tags:

Add Comment

2006-10-05 Homeland Security Is Watching

I found an article by the New York Times: Software Being Developed to Monitor Opinions of U.S. [1] via TelePolis [2].

Scary!

A consortium of major universities, using Homeland Security Department money, is developing software that would let the government monitor negative opinions of the United States or its leaders in newspapers and other publications overseas.

This one is typical: “The monitoring would not extend to United States news, Mr. Kielman said.” Somehow this adds insult to injury. Just as all the wiretapping excuses. I don’t feel bound by national boundaries. I have friends and family abroad. I haven’t lived in the countries I am citizen of. And thus my stuff never protected by these kind of exceptions. And looking back, I don’t really feel that people without friends and family abroad are necessarily the group of people I’d trust to keep my country safe. On the contrary, I associate such people with nationalism and patriotism. Sentiments I do not appreciate at all.

Patriotism is your conviction that this country is superior to all others because you were born in it. – George Bernard Shaw

Strange how I can’t find a source for this quote. Both the German and the English Wikiquotes page list it as “attributed”. [3] [4]

Tags:

Add Comment

2006-10-05 Peace, Propaganda, and The Promised Land

A good friend of mine pointed me to a copy of Peace, Propaganda & The Promised Land on Google Video. It’s over one hour of analysis.

Nothing new if you keep your eyes open. Remember the excuse of the Nazis and their collaborators after the Second World War? “We did not know!”

Well, these days there is no such excuse.

Maybe you can show this movie somewhere. This is the kind of movie that ought to be shown in school to teach kids media competence.

Tags: RSS

Comments on 2006-10-05 Peace, Propaganda, and The Promised Land

I suppose you’ll be able to give me an opinion since you are in Europe. What is the attitude of the media there? The documentary says that it’s more balanced there. Is that really the case?

NoufalIbrahim 2006-10-06 05:19 UTC


Well, here in Switzerland it really depends on the publication.

Blick is the biggest newspaper in print, and boulevard press. They practically ignore the Near East. I’ve heard that the family owning them (Ringier) is pro-Israel, but without any systematic analysis I must admit that it sounds more like a faint anti-semitic prejudice than analysis. Well, at least for me conflating Jews with support for the Israeli government is an insult to Jews.

Searching for Israel on their site, I see the following:

Rice trifft in Israel ein
One paragraph on the plans of Condoleezza Rice.
Israel: Angriff auf UN-Posten «ein Fehler»
Single paragraph saying that the attack on the UN soldiers in Lebanon was due to a error copying the maps.
Die Wunde der Welt
A column by Frank A. Meyer saying that Israel is acting in self-defense, and that people criticising it are actually contemplating its eradication, and falling for the islamic propaganda, confusing victim and perpetrator.
Libanon will Israel wegen Ölpest verklagen
Single paragraph saying that Lebanon will be demanding compensation for the oil pest.
Leserbriefe vom 7. August 2006
Various letters to the editor, sometimes in reaction to previous letters to the editor. A long one saying that even if Israel were to cease existing, the war would go on between inhuman ideology and the values of the enlightenment. A very short one saying that the murder of more than 20 people selling fruit goes to show that Israel does not fight terror, it causes terror. And another medium length one saying that the millions of refugees in Israel are refugees just like the millions in Lebanon. And another one saying that Israel is not the cause for this war because its enemy does not want peace. And another one saying that Israel’s enemies are surely not sunday school goers (sunday school probably being something for the pious and meek). Another one saying that Israel’s behaviour is a disgrace and we should boycott it.
Blinde Linke
Another column by Frank A. Meyer saying that 3000 people protested against Israel in Bern, but nobody protested against Hisbollah in all this time. The islamic terrorist being called freedom fighters and a host of other items such as Cháves embracing Ahmadinedschad are used to discredit the left. Finally the left is reminded of its ties to totalitarianism and its enthusiasm for Ajatollah Chomeini’s victory in Iran. His conclusion: The left is blind.
Annan kritisiert Israel und Hisbollah
Note on how Annan criticised both parties in the conflict.
Hisbollah gibt nicht auf
Note showing Nasrallah ranting and refusing to hand over Hisbollah’s weapons, and Israel saying that this was equivalent to spitting in the international’s community’s eye.
Brennpunkt Nahost
A dossier on the issues in the Near East.
Annan kritisiert Israel
Annan criticising Israel for violating ceasefire.

Two other newspapers in the German part of Switzerland that are not as widely read as the Blick are the TagesAnzeiger (center-conservative) and the NZZ (conservative).

The NZZ is quite critical of Israel, but not enough to satisfy me. I once wrote a letter to the editor complaining about their sloppy wording regarding a prisoner who had confessed something in an Israeli prison. I wrote that the article did not make clear that torture was being used on a regular basis in Israel, supported by a few links. The editor wrote me back citing another passage from the article saying that she felt it was clear enough as far as she was concerned.

The weekly WOZ I read comes with the MondeDiplomatique once a month. I almost always share their point of view. Their circulation is small and the newspaper is always on the brink of financial ruin. :'(

AlexSchroeder 2006-10-06 09:50 UTC


Fisk in that documentary makes a point. If Israel regularly uses “anti semitism” as a weapon to silence criticism of Israel, they will be equated and in the long run be legitimised. Then, people with a REAL anti-semitic agenda can mask their violent plans as criticism of Israel which is dangerous.

NoufalIbrahim 2006-10-07 05:51 UTC

Add Comment

2006-10-07 Alone At Home

Claudia left for Crete.

I’m going to be alone at home for a week. After more than thirteen years together, she finally moved in with me. Most of our relatives had given up all hope by then. And now I can’t bear the thought of going to sleep all by myself for a few days.

Update: I’m restless. It’s 4:27 in the morning.

I’ve preparing a long playlist – many hours – called “When I Was Young”. I added all the stuff I used to listen to in my early twenties. The Cure, The Sisters of Mercy, Massive Attack, Tricky, PJ Harvey, Radiohead, Portishead, Goldfrapp. I also added some solo projects: Tom Yorke’s latest album, Beth Gibbons & Rustin Man, the band that opened a Cure concert: The Cranes. 524 tracks, 2.56G, worth 1.6 days of non-stop music. I’ll have to put it on a DVD and take it to the office.

Tags:

Add Comment

2006-10-07 Now Reading

I read Eastern Standard Tribe by Cory Doctorow because I liked two of his other books. Also available for download under a CreativeCommons license (attribution + no derivatives).

I liked it, and the question of how you can prove yourself not to be paranoid but justly concerned for your own safety in a mental institution is sure to follow me around some more.

The entire tribe and sleep deprivation thing wasn’t too good, however. After all, I hang out on the EmacsChannel with people from the Americas, Europe, and India; it never sleeps. Our natural variations in circadian cycles seems to make up for the spread in timezones. So that part would have needed some more work.

The semi-automatic identity verification and contract management on IRC Doctorow describes in his book are interesting, however. I think this might be something I didn’t see coming in such a well-integrated form.

I’m also reading Römische Rechtsgeschichte von Wolfgang Kunkel because it’s about ancient history and law – two subjects I’ve been enjoying more and more over the years. If I interpret the foreword correctly the first edition of this book was printed in 1948. Yay!

And I should read Catch 22 by Joseph Heller by the end of the month for the English Book Club. I mooched the book, but it hasn’t arrived yet.

Tags:

Add Comment

2006-10-07 Page Parsing

This is how I’m parsing page data currently:

sub ParseData {
  my $data = shift;
  my %result;
  while ($data =~ /(\S+?): (.*?)(?=\n[^ \t]|\Z)/sg) {
    my ($key, $value) = ($1, $2);
    $value =~ s/\n\t/\n/g;
    $result{$key} = $value;
  }
  return %result;
}

Page data is in something resembling RFC 822 format: An identifier (the key), a colon, a space, some text (the value), newline. If the value itself contains newlines, they are “escaped” by inserting a tab character. Here’s a shortened example:

ip: 68.174.154.124
summary: No, backlinks are useful to humans. BillSeitz likes them right on the page.
diff-major: 1
text: When a normal forward link points from A to B, the backlink is the automatically generated link back from B to A.
	
	On systems where you don't have unidirectional forward links but only bidirectional links, it makes no sense to talk about forward links and back links.
	
	From a theoretical point of view, back links are interesting because without back links, it is possible to get to a page without any forward links pointing away.  The backlink is your only way to get "back" to the hypertext.
languages: en

This page has the keys ip, summary, diff-major, text, and languages. The text value has multiple lines, including two empty lines.

When I run this on a snapshot of CommunityWiki on my laptop:

Alpinobombus:~/Documents/CommunityWiki alex$ time perl time1.pl
Pages: 2544

real    1m7.868s
user    0m55.660s
sys     0m1.410s

Then I rewrote it:

sub ParseData {
  my $data = shift;
  my %result;
  my $end = index($data, ': ');
  my $key = substr($data, 0, $end);
  my $start = $end += 2; # skip ': '
  while ($end = index($data, "\n", $end) + 1) { # include \n
    next if substr($data, $end, 1) eq "\t";     # continue after \n\t
    $result{$key} = substr($data, $start, $end - $start - 1); # strip last \n
    $start = $end;
    $end = index($data, ': ', $start);
    last if $end == -1;
    $key = substr($data, $start, $end - $start);
    $end = $start += 2; # skip ': '
  }
  $result{$key} .= substr($data, $end, -1); # strip last \n
  foreach (keys %result) { $result{$_} =~ s/\n\t/\n/g };
  return %result;
}

Result:

Alpinobombus:~/Documents/CommunityWiki alex$ time perl time3.pl
Pages: 2544

real    0m5.787s
user    0m4.130s
sys     0m1.250s

Wow! More than 10 × faster!

This is significant because the default search for Oddmuse goes through all the files, opening and searching them. At first I thought that opening the files was taking so long. But as it turns out, parsing is taking so long!

Tags:

Add Comment

2006-10-07 Ripping CDs

So I’m ripping some CDs today. The Cure (13), Massive Attack singles collection (11), various Massive Attack & Tricky CDs (8). What a chore! I should just be able to dowload the Massive Attack Discography using BitTorrent. Grrr! Give me the culture tax and let me get the music. Wouldn’t that be nice.

I haven’t listened to my Massive Attack singles collection (90/98) in a long time. As I ripped them, I realized something incredible: I have two copies of disk #6 and no copy of disk #7! And I bought this many years ago. Did I find out at the time? Did I complain? Did I not get the disc exchanged? I’m confused!!

I don’t even know where I go to try and swap this! Again, if downloading were legal, I could just get the missing disc. I can’t even find it on AllOfMP3! Grrr!

Tags:

Add Comment

2006-10-07 Yegge Writes

Steve Yegge has a blog entry about Agile programming. [1] Had one before that, too. It’s a follow-up.

The way he writes, the punch-lines he delivers, … Awesome!

Tags: RSS

Add Comment

2006-10-08 Full Text Index for Oddmuse

I’m wondering whether I should attempt to write full-text index for Oddmuse. Something lean and mean. Sure, it’s reinventing the wheel, and there’s Lucene and other tools, and the current Search::FreeText is not too bad (although I’m overriding lots of stuff, so technically its dependencies are wasted CPU cycles and RAM). Maybe just gut Search::FreeText? Or roll my own? BM25 doesn’t look too difficult to reimplement, if I look at the Search::FreeText source. And put everthing in a Berkley DB file. GNU dbm looks perfect if all I have is one or two indexes: It implements a filesystem-based hash table.

Assume two documents: Document called “Calvin’s Favorite” with content “Weirdoes from another planet” and a document called “Hobbe’s Favorite” with content “Humans from planet Earth”.

First, we assign numbers to documents:

Calvin’s Favorite → 1, Hobbe’s Favorite → 2

Then we tokenize the downcased titles and pages (we want to index titles, too) without using stop words (multilingual stop words?) and create the necessary pointers:

calvin → 1, s→ 1, favorite → 1 & 2, weirdoes → 1, from → 1 & 2, another → 1, planet → 1 & 2, hobbes → 2, humans → 2, earth → 2

Then all I would need is a good implementation of set operations to implement unions (“or”) and intersections (“and”) on the lists returned:

Looking for calvin and earth: 1 ∩ 2 = ∅
Looking for calvin or earth: 1 ∪ 2 = (1, 2)
Looking for hoobes and earth: 2 ∩ 2 = (2)

Maybe I could optimize later and use bitvectors… I wonder where I would read up on this kind of thing…

Anyway, it doesn’t look impossible. I just wonder whether this is going to be time well spent. I could spend time thinking about incremental updates of the database, and so on. Or just use a small database. Gah! :)

There’s a Perl glue library to the C++ implementation of Lucene. There’s a problem, however: “Currently only ISO 8859-1 (Latin-1) characters are supported. Obviously this included all ASCII characters.” [1]

Hm. I wonder what that means, since Oddmuse continues to be encoding agnostic (it’s all bytes as far as I am concerned). Perhaps it’s not a problem after all.

I also found Plucene, a “Perl port of the Lucene search engine”.

I’ve also skimmed to introductory articles for Lucene from ONJava linked to from one of the other pages:

Lucene seems like overkill!

And how to index CJK languages remains an unsolved riddle. I need to talk to a Chinese Oddmuse user!

Tags:

Comments on 2006-10-08 Full Text Index for Oddmuse

My understaning is that the largest full-text databases in the world don’t use RDMSs or SQL. So apparently, if you want to scale up, the best choice is to avoid these technologies.

AaronHawley 2006-10-08 19:35 UTC


I’m relieved to heard that. :)

AlexSchroeder 2006-10-08 19:38 UTC

Add Comment

2006-10-08 Privacy Or Functionality

I’ve installed the Tor client on my laptop (it came bundled with Privoxy and a GUI), and a Firefox plugin to switch it on or off. Surfing with Tor is incredibly sluggish. I don’t think I can do this.

Am I a sell-out?

Tags:

Comments on 2006-10-08 Privacy Or Functionality

“Am I a sell-out?”

Do you want an answer to that or is that a rhetorical question?

NoufalIbrahim 2006-10-09 07:01 UTC


Well, I guess I want to know what you think about it, and the most objective way of doing that would be checking how you handle privacy issues on the web:

  1. Do you surf via an anonymizer? I assume nobody does, but who knows. I guess I still don’t.
  2. Do you use Email services from one of the big corps? I know most of you do. I do.
  3. Do you store your pictures on one of the sites by the big corps? I know most of you do. I have tried them, but I’m still using my own site.
  4. Do you blog on one of the big corp sites? I know some of you do. I don’t.

Stuff like that. ;)

AlexSchroeder 2006-10-09 09:57 UTC


AlexSchroeder 2006-10-11 23:11 UTC

Add Comment

2006-10-08 Strace Oddmuse

Today I ran strace on a command-line invocation of Oddmuse running this site. Then I grepped for all open calls, and grouped files. Here’s what I got:

  • 8 files for locale stuff
  • 8 files for TLS libraries, localtime, and /dev/urandom
  • 37 files for Perl modules
  • 4 files for Oddmuse setup (script, password, wrappers)
  • 11 files for Oddmuse initialization (local names, intermap, near map, page lists for near sites, local page list, permanent anchors, pids, referrers)
  • 24 files for Oddmuse config and modules
  • 13 files for Oddmuse data pages (the front page aggregates several of them, so that’s ok)

Total: 105 files loaded.

So:

  1. Using FCGI would hopefully save us 37 + 24 file loads (more than half)
  2. Just concatenating all the config stuff into one would already save 21 file loads (20%)

I’ll try #2 first.

Tags:

Comments on 2006-10-08 Strace Oddmuse

2 cents: Maybe you could cache the configuration and modules into one file, update of the cache based on modification date, or require the admin to use action=version after an update and update the cache then.

Maybe in another cache, the oddmuse initialization files.

Maybe some perl modules are allways loaded but not used (rss?) and their import could be made conditional?

PierreGaston 2006-10-08 17:10 UTC


Well, what I did for the modules was simple: mkdir -p source; mv *.pl source; cat source/*.pl > concat.pl – so basically all modules are concatenated into one. Installing a new module now means adding the module file and running cat source/*.pl > concat.pl again.

I think most of the Perl stuff under my control is well conditionalized. I think the only thing I could do is get rid of referrer tracking which would prevent LWP::UserAgent from being loaded:

aschroeder@thinkmo:~$ grep "open.*perl" strace.alex.concatenated-modules
open("/usr/share/perl/5.8/CGI.pm", O_RDONLY|O_LARGEFILE) = 4
open("/usr/share/perl/5.8/Carp.pm", O_RDONLY|O_LARGEFILE) = 5
open("/usr/share/perl/5.8/Exporter.pm", O_RDONLY|O_LARGEFILE) = 5
open("/usr/share/perl/5.8/CGI/Util.pm", O_RDONLY|O_LARGEFILE) = 5
open("/usr/share/perl/5.8/strict.pm", O_RDONLY|O_LARGEFILE) = 6
open("/usr/share/perl/5.8/vars.pm", O_RDONLY|O_LARGEFILE) = 6
open("/usr/share/perl/5.8/warnings/register.pm", O_RDONLY|O_LARGEFILE) = 7
open("/usr/share/perl/5.8/warnings.pm", O_RDONLY|O_LARGEFILE) = 7
open("/usr/share/perl/5.8/constant.pm", O_RDONLY|O_LARGEFILE) = 5
open("/usr/share/perl/5.8/overload.pm", O_RDONLY|O_LARGEFILE) = 5
open("/usr/share/perl/5.8/CGI/Carp.pm", O_RDONLY|O_LARGEFILE) = 4
open("/usr/share/perl/5.8/File/Spec.pm", O_RDONLY|O_LARGEFILE) = 5
open("/usr/share/perl/5.8/File/Spec/Unix.pm", O_RDONLY|O_LARGEFILE) = 5
open("/usr/lib/perl/5.8/File/Glob.pm", O_RDONLY|O_LARGEFILE) = 4
open("/usr/lib/perl/5.8/XSLoader.pm", O_RDONLY|O_LARGEFILE) = 5
open("/usr/lib/perl/5.8/auto/File/Glob/Glob.so", O_RDONLY) = 4
open("/usr/share/perl/5.8/Text/ParseWords.pm", O_RDONLY|O_LARGEFILE) = 3
open("/usr/share/perl5/LWP/UserAgent.pm", O_RDONLY|O_LARGEFILE) = 4
open("/usr/share/perl5/HTTP/Request.pm", O_RDONLY|O_LARGEFILE) = 5
open("/usr/share/perl5/HTTP/Message.pm", O_RDONLY|O_LARGEFILE) = 5
open("/usr/share/perl5/HTTP/Headers.pm", O_RDONLY|O_LARGEFILE) = 5
open("/usr/share/perl5/URI.pm", O_RDONLY|O_LARGEFILE) = 5
open("/usr/share/perl5/URI/Escape.pm", O_RDONLY|O_LARGEFILE) = 6
open("/usr/share/perl5/HTTP/Response.pm", O_RDONLY|O_LARGEFILE) = 5
open("/usr/share/perl5/HTTP/Status.pm", O_RDONLY|O_LARGEFILE) = 6
open("/usr/share/perl5/HTTP/Date.pm", O_RDONLY|O_LARGEFILE) = 5
open("/usr/share/perl/5.8/Time/Local.pm", O_RDONLY|O_LARGEFILE) = 5
open("/usr/lib/perl/5.8/Config.pm", O_RDONLY|O_LARGEFILE) = 6
open("/usr/share/perl/5.8/integer.pm", O_RDONLY|O_LARGEFILE) = 6
open("/usr/share/perl5/LWP.pm", O_RDONLY|O_LARGEFILE) = 5
open("/usr/share/perl5/LWP/Debug.pm", O_RDONLY|O_LARGEFILE) = 5
open("/usr/share/perl5/LWP/Protocol.pm", O_RDONLY|O_LARGEFILE) = 5
open("/usr/share/perl5/LWP/MemberMixin.pm", O_RDONLY|O_LARGEFILE) = 5
open("/usr/share/perl/5.8/CGI/Cookie.pm", O_RDONLY|O_LARGEFILE) = 3
open("/usr/share/perl/5.8/PerlIO.pm", O_RDONLY|O_LARGEFILE) = 3
open("/usr/lib/perl/5.8/PerlIO/scalar.pm", O_RDONLY|O_LARGEFILE) = 3
open("/usr/lib/perl/5.8/auto/PerlIO/scalar/scalar.so", O_RDONLY) = 3

AlexSchroeder 2006-10-08 17:43 UTC

Add Comment

2006-10-09 File Sharing Boosts Sales

At least it does in my case. I spent the weekend ripping some CDs, looking through my music folders, producing a nice playlist of music I listened to when I was younger. Then I decided I was missing some important pieces and bought CDs for over USD 100.

Hm. I wonder whether I would have bought those CDs if I could have just downloaded them from some torrent site. Maybe not. But I would have bought them for USD 5 per CD or something like that. But certainly not for USD 1 per track with DRM included. Brrr!

Then again, it shows the weakness of the entire system: I don’t think I can get “Tricky vs. The Gravediggaz: Hell EP” anywhere legally. I got one track from that EP somewhere a long time ago. And now I can’t get the rest. Grrr!

I still remember that I learnt about God Speed You Black Emperor via friends and MP3 files. Those were the days!

Update: Got my CDs. I promised to myself that I’d buy all my future music by a particular artist from AllOfMP3 (remember linking to it may be illegal → 2006-06-07 Copyright) if the CDs were giving me grief.

  • Blowback by Tricky: No problem ripping them using iTunes on Windows.
  • The Rising by Bruce Springsteen, tour edition with bonus DVD: When I inserted the CD into my Windows machine it started playing at super-high volume. I didn’t know how to turn it off. As far as I could tell, it had taken over my computer. I realized that it didn’t have the CD logo on it. I downloaded CDex and ripped it. I got a DVD with it, but not because I wanted it. I think it was cheaper with DVD than without it. Or something. I can’t quite remember.
  • The Seeger Sessions by Bruce Springsteen, a 2-sided disc, one side with the audio CD, the other with a DVD. Amazingly, ripping this one was no problem at all.
  • Vulnerable by Tricky: An “enhanced CD” with a CD-ROM section containing three .mpg files, and some Windows autorun and exe files stuff. Amazingly, ripping this one was no problem either. This is getting better! :)
  • Join the Dots by The Cure, B-sides and rarities 1978-2001: No problem either.

happy!

I also decided – in the spirit of RichardStallman, who calls DRM Digital Restriction Management instead of Digital Rights Management – to call these anti-customer systems copy _prevention instead of copy protection. They are protecting their copies, but they are preventing me from copying!

Some of the CDDB data is weird. All the Tricky & Massive Attack stuff is classified as “Electronica/Dance” instead of “Trip-Hop”. Some of CDs are classified as compilations, even if the artist is the same for every single track. How strange. I must be misunderstanding the term “compilation”.

Tags:

Add Comment

2006-10-09 Oddmuse Race Conditions

I kept thinking about a report I had heard from some Hungarian users. Something about them loosing permanent anchors. Weird. Today I figured out what the problem was while walking to the train station: A race condition! Data is read from the filesystem into memory. Stuff happens. When appropriate, a lock is created, and data is written back to the filesystem. The problem is not the writing. The problem is the time window between the reading and the writing.

A reads data. B reads data. A modifies data and writes it to disk. B modifies data and writes it to disk. → A’s changes are lost!

It turns out that I had two such instances. One of them was self-correcting: The creation of the page index file can go wrong, but it’ll fix itself when the next new page is created. But the permanent anchors file is brittle. It’s not easy to regenerate. That sucks. I knew that such a file was a bad idea. Damn.

Now that I think of it, clearing the cache will break all links to permanent anchors until you have visited all the pages where permanent anchors are defined. Gah!

I’ll fix the easy stuff first: The race conditions, and the new init code.

Time passes.

Hours, in fact.

Finally!

All tests successful, 42 subtests skipped.
Files=56, Tests=1148, 666 wallclock secs (418.29 cusr + 78.43 csys = 496.72 CPU)

Tags: RSS

Comments on 2006-10-09 Oddmuse Race Conditions

So were you able to remove the race condition, or just minimize the time window?

AaronHawley 2006-10-10 03:12 UTC


omg, 666 seconds O.o

TheSheep 2006-10-10 09:04 UTC


I think I was able to remove the race conditions. For example when caching the list of pages available on the system I now request the lock before I even start looking for the files:

  my $locked = RequestLockDir('index', undef, undef, -f $IndexFile);
  foreach (glob("$PageDir/*/*.pg $PageDir/*/.*.pg")) { # find .dotfiles, too
    next unless m|/.*/(.+)\.pg$|;
    my $id = $1;
    push(@IndexList, $id);
    $IndexHash{$id} = 1;
  }
  WriteStringToFile($IndexFile, join(' ', %IndexHash)) if $locked;
  ReleaseLockDir('index') if $locked;

Before the change, only WriteStringToFile was wrapped in a lock.

Or when updating permanent anchors, I force a read using PermanentAnchorsInit:

  } elsif ($PermanentAnchors{$id} ne $OpenPageName    # not fatal
	   and RequestLockDir('permanentanchors')) {
    # Somebody may have added a permanent anchor in the mean time. Comparing $LastUpdate to the
    # $IndexFile mtime does not work for subsecond changes and updates are rare, so just read!
    PermanentAnchorsInit();
    $PermanentAnchors{$id} = $OpenPageName;
    WritePermanentAnchors();
    ReleaseLockDir('permanentanchors');

I haven’t installed it yet, however.

AlexSchroeder 2006-10-10 10:32 UTC

Add Comment

2006-10-10 Defcon

TelePolis writes about the game Defcon by Introversion Software. [1]

Sounds very interesting: “Everybody dies.”

Tags:

Comments on 2006-10-10 Defcon

If it’s even a fraction as good as Uplink it’ll be amazing, and from that review, it’s even better (what’s better than amazing?) I whiled away far too many evenings playing Uplink while cursing and grinning and the same time. Best. Game. Ever.

Darn. now I’ve got an urge to create an Uplink theme for fvwm-crystal :)

GreyWulf 2006-10-10 12:45 UTC


I just tried it on my office machine. It was way too slow. Too bad! :(

AlexSchroeder 2006-10-10 13:36 UTC


I bought and really enjoyed playing uplink. Very atmospheric, light on the machine and awesome fun to play. If this is anything like that, it’ll be awesome.

NoufalIbrahim 2006-10-10 15:24 UTC


Well, I just played a few hours of Darwinia and liked it very much. Too bad it pushes my laptop to the limit with occasional sound hiccups and a framerate of around 10… :)

AlexSchroeder 2006-10-10 23:26 UTC

Add Comment

2006-10-10 Playlist

This is what I have been listening to in the last few days. The lower half of this page contains a slightly different playlist.

  • Beth Gibbons & Rustin Man, Out Of Season
  • Cranes,
  • Cranes, Forever
  • Cranes, Jewel
  • Cranes, Loved
  • Cranes, Wings of Joy
  • Godspeed You Black Emperor !, Yanqui U.X.O.
  • Godspeed You! Black Emperor, Lift Your Skinny Fists Like Antennas To Heaven (Disc 1)
  • Godspeed You! Black Emperor, Lift Your Skinny Fists Like Antennas To Heaven (Disc 2)
  • Goldfrapp, Felt Mountain
  • Madredeus, Existir
  • Madredeus, Movimento
  • Massive Attack, 100th Window
  • Massive Attack, Blue Lines
  • Massive Attack, Danny The Dog
  • Massive Attack, Mezzanine
  • Massive Attack, Protection
  • Massive Attack, Singles 90-98 [Disc 10]
  • Massive Attack, Singles 90-98 [Disc 11]
  • Massive Attack, Singles 90-98 [Disc 1]
  • Massive Attack, Singles 90-98 [Disc 2]
  • Massive Attack, Singles 90-98 [Disc 3]
  • Massive Attack, Singles 90-98 [Disc 4]
  • Massive Attack, Singles 90-98 [Disc 5]
  • Massive Attack, Singles 90-98 [Disc 6]
  • Massive Attack, Singles 90-98 [Disc 8]
  • Massive Attack, Singles 90-98 [Disc 9]
  • Massive Attack & Mad Professor, No Protection
  • Portishead,
  • Portishead, Dummy
  • Portishead, Portishead
  • Portishead, Rare Tracks
  • Portishead, Trip Hop Reconstruction
  • Radiohead,
  • Radiohead, Amnesiac
  • Radiohead, Hail To The Thief
  • Radiohead, I Might Be Wrong: Live Recordings
  • Radiohead, Kid A
  • Radiohead, OK Computer
  • Radiohead, The Bends
  • Radiohead and Portishead,
  • The Cure, Bloodflowers
  • The Cure, Boys Don’t Cry
  • The Cure, Disintegration
  • The Cure, Faith
  • The Cure, Japanese Whispers
  • The Cure, Kiss Me, Kiss Me, Kiss Me
  • The Cure, Pornography
  • The Cure, Seventeen Seconds
  • The Cure, Staring At The Sea: The Singles 1979-1985
  • The Cure, The Head On The Door
  • The Cure, The Top
  • The Cure, Wild Mood Swings
  • The Cure, Wish
  • The Sisters Of Mercy, Floodland
  • The Sisters of Mercy, First and Last and Always
  • Thom Yorke, The Eraser
  • Tricky, Angels With Dirty Faces
  • Tricky, Juxtapose (With DJ Muggs And Grease)
  • Tricky, Nearly God
  • Tricky, Pre-Millennium Tension
  • Tricky & PJ Harvey, Angels With Dirty Faces

Then I figured: Too much Massive Attack! (And they remind me of the fact that I have two copies of single collection CD #6 and no copy of single collection CD #7 – grrrr!)

So now I changed it around a bit:

  • Amália Rodrigues, Queens Of Fado V. 2 (Disc 1)
  • Amália Rodrigues, Queens Of Fado V. 2 (Disc 2)
  • Anabela, Queens Of Fado V. 2 (Disc 1)
  • Anabela, Queens Of Fado V. 2 (Disc 2)
  • Beth Gibbons & Rustin Man, Out Of Season
  • Bevinda, Queens Of Fado V. 2 (Disc 1)
  • Bevinda, Queens Of Fado V. 2 (Disc 2)
  • Cidalia Moreira, Queens Of Fado V. 2 (Disc 1)
  • Cranes,
  • Cranes, Forever
  • Cranes, Jewel
  • Cranes, Loved
  • Cranes, Wings of Joy
  • Cristina Branco, Queens Of Fado V. 2 (Disc 1)
  • Cristina Branco, Queens Of Fado V. 2 (Disc 2)
  • Elba Ramalho, Queens Of Fado V. 2 (Disc 1)
  • Ennio Morricone, Dulce Pontes, Queens Of Fado V. 2 (Disc 1)
  • Ennio Morricone, Dulce Pontes, Queens Of Fado V. 2 (Disc 2)
  • Felipa Pais, Queens Of Fado V. 2 (Disc 1)
  • Godspeed You Black Emperor !, Yanqui U.X.O.
  • Godspeed You! Black Emperor, Lift Your Skinny Fists Like Antennas To Heaven (Disc 1)
  • Godspeed You! Black Emperor, Lift Your Skinny Fists Like Antennas To Heaven (Disc 2)
  • Goldfrapp, Felt Mountain
  • Madredeus, Existir
  • Madredeus, Movimento
  • Margarida Bessa, Queens Of Fado V. 2 (Disc 2)
  • Maria Ana Bobone, Queens Of Fado V. 2 (Disc 1)
  • Maria Ana Bobone, Queens Of Fado V. 2 (Disc 2)
  • Maria Armanda, Queens Of Fado V. 2 (Disc 2)
  • Maria Dilar, Queens Of Fado V. 2 (Disc 1)
  • Maria Leopoldina, Queens Of Fado V. 2 (Disc 1)
  • Maria Leopoldina Guia, Queens Of Fado V. 2 (Disc 2)
  • Mariadafe, Queens Of Fado V. 2 (Disc 1)
  • Mariadafe, Queens Of Fado V. 2 (Disc 2)
  • Mariza, Queens Of Fado V. 2 (Disc 1)
  • Mariza, Queens Of Fado V. 2 (Disc 2)
  • Marta Dias, Queens Of Fado V. 2 (Disc 1)
  • Massive Attack, Danny The Dog
  • Massive Attack & Mad Professor, No Protection
  • Portishead,
  • Portishead, Dummy
  • Portishead, Portishead
  • Portishead, Rare Tracks
  • Portishead, Trip Hop Reconstruction
  • Radiohead,
  • Radiohead, Amnesiac
  • Radiohead, Hail To The Thief
  • Radiohead, I Might Be Wrong: Live Recordings
  • Radiohead, Kid A
  • Radiohead, OK Computer
  • Radiohead, The Bends
  • Radiohead and Portishead,
  • Rosa Maria, Queens Of Fado V. 2 (Disc 2)
  • Sofia Varela, Queens Of Fado V. 2 (Disc 2)
  • Teresa Siqueira, Queens Of Fado V. 2 (Disc 2)
  • The Cure, Bloodflowers
  • The Cure, Boys Don’t Cry
  • The Cure, Disintegration
  • The Cure, Faith
  • The Cure, Japanese Whispers
  • The Cure, Kiss Me, Kiss Me, Kiss Me
  • The Cure, Pornography
  • The Cure, Seventeen Seconds
  • The Cure, Staring At The Sea: The Singles 1979-1985
  • The Cure, The Head On The Door
  • The Cure, The Top
  • The Cure, Wild Mood Swings
  • The Cure, Wish
  • The Sisters Of Mercy, Floodland
  • The Sisters of Mercy, First and Last and Always
  • The Strokes, First Impressions Of Earth
  • The Strokes, Is This It?
  • Thom Yorke, The Eraser
  • Tom Waits, Rain Dogs
  • Tom Waits, Swordfishtrombones
  • Tricky, Angels With Dirty Faces
  • Tricky, Juxtapose (With DJ Muggs And Grease)
  • Tricky, Nearly God
  • Tricky, Pre-Millennium Tension
  • Tricky & PJ Harvey, Angels With Dirty Faces

Tags: RSS

Comments on 2006-10-10 Playlist

Wow! Heard just one or two songs from that list. I’ll take that list as a recommendation. Thanks!

– harsha 2006-10-11 17:43 UTC


Hehe. I’m not sure you’ll like it, actually. It’s all very melancholy stuff – trip hop, mostly. At the time it was called “Bristol Sound” – Tricky, Massive Attack, Portishead. I’ll have to check out all the other Tricky collaborations. At the time I discovered Everything But The Girl via Tricky, I think. Let me check… On the Massive Attack album Protection you have Tricky, Nicolette und Tracey Horn from Everything But the Girl. That’s the one!

Dunno what you call The Cure – gothic rock or dark wave or something. And what do you call Radiohead? Progressive alternative or something weird like that.

AlexSchroeder

Add Comment

2006-10-12 Browser Games

Heise reports about the votes on the most popular browser games. [1]

All I can say is that I haven’t found the time to switch on any of my consoles in many weeks. And I haven’t continued with Ultima IV in months. Haven’t switched on my gp2x either.

Eventhough I still find games very fascinating, I find IRC with real people, FreeSoftware for real people, or playing Tabletennis with real people more interesting.

Tags:

Add Comment

2006-10-12 Bruce Schneier

I keep laughing my ass off at http://geekz.co.uk/schneierfacts/ – you all know I love BruceSchneier and his books.

True geek humor. ;)

Tags:

Comments on 2006-10-12 Bruce Schneier

It’s a duplicate of the Chuck norris facts page. Seen that one?

NoufalIbrahim 2006-10-12 14:07 UTC


Heh, no I didn’t know about it. :)

AlexSchroeder 2006-10-12 14:52 UTC

Add Comment

2006-10-12 VFAT and rsync

Gah. I decided to copy all my audio files to a small extra portable disk I have so that I could easily transfer stuff between home and office. It turns out that VFAT has some curious properties, which make sure that some files get retransfered again and again. Grrrr!

What should I do? In theory I could install ext2 drivers on both systems and use that, hehe. But honestly: There must be a better way!

I still remember my ext2 woes where OSX would kernel panic if a command-line tool read Latin-1 encoded filename (OSX finder would just truncate right there).

I guess I could format it as UFS and use ufs2tools to access the files from the command-line. Extra hassle… :/ And nobody knows whether they’ll work for external USB drives, either! I think we’re stuck with a crappy VFAT filesystem for this kind of task.

man rsync suggest using --modify-window: In particular, when transferring to Windows FAT filesystems which cannot represent times with a 1 second resolution --modify-window=1 is useful.

And it works!!

sent 267517 bytes  received 20 bytes  59452.67 bytes/sec
total size is 38204530806  speedup is 142800.92

Tags:

Comments on 2006-10-12 VFAT and rsync

I’ve seen this fortune on irc and thought about you :)

Only wimps use tape backup: real men just upload their important stuff on ftp, and let the rest of the world mirror it ;) – Linus Torvalds, about his failing hard drive on linux.cs.helsinki.fi

PierreGaston 2006-10-13 14:33 UTC

Haha! :)

– Alex

Add Comment

2006-10-13 Land of Plenty

You live in Switzerland? The land of plenty! Enjoy your sex-life!?

This comic under a Creative Commons Attribution Share-Alike license.

All three images from Flickr:

  1. swiss flag at piz languard hut by ianlord
  2. louis vuitton shop zurich by Tony V
  3. Bordell Plakat by patapat

Hey, FreeCulture actually works! :)

An idea, some searching on Flickr for images with the right license, some doodling with Inkscape… And there you go! Inspired by Everybody loves Eric Raymond.

Tags:

Add Comment

2006-10-13 Sword of Doom

I just watched Sword of Doom (1965) all by myself. It was interesting at first. But the end is just a stretched out massacre. The bad guys have all the screen time – a bloodcrazy maniac, murderers, goons… And death by the blade. I read somewhere (on IMDB?) that it was planned to be the first part of a triology. But as it stands, I don’t think I’d be interested in sequels…

I don’t recommend this movie, not even for martial arts fans. Drunken crazy rabid fool cutting up three or four scores of men in a burning building… I dunno.

Tags: RSS

Add Comment

2006-10-13 Veranstaltungshinweis HGKZ

Mi 18.10.06 - Podiumsdiskussion: Kontrolle oder Zugang. Welche Rechte brauchen KünstlerInnen?

Datum: Mi 18.10.2006
Zeit: 18:00-20:00
Ort: Vortragssaal HGKZ, Ausstellungsstrasse 60, 8005 Zürich

Ich teile Daniel Boos’ Ansicht:

Damit stellen sie die Frage: ist der Ausbau der Urheberrechte noch im Interesse der KünstlerInnen?

Tags: RSS RSS

Add Comment

2006-10-14 Oddmuse Documentation

I spent some time reorganizing the Oddmuse:Getting Started section. I also spent some time in improving Oddmuse:Setup on a Mac OSX System eventhough I assume very few OSX users will actuall use Oddmuse. People will probably prefer an ordinary wiki widget. And the next OSX Server will include a wiki, I have heard. Oh well. I just couldn’t resist. ;)

How strange to think that I always wanted Oddmuse installation to be easy, and I really think it is. And when I try to document it for OSX, it turns out to be totally complicated? And even though I tried to avoid it, there is at least on step that involves the command-line. That’s horrible! I need to write an extra installer? Maybe I should try and figure out how hard it is to use a “standard” installer for OSX.

Update: I bit the bullet, learnt about Apple’s PackageMaker and added the necessary mumbo-jumbo to the Makefile. Oddmuse can now be installed via an installer on OSX. :)

All this time I spent on improving the documentation – what a waste!

I wish similar installers would exist for other systems.

Here’s what another installer would have to do:

  1. It would have to build from my Makefile, so that the knowhow remains in the project even if the contributor moves on.
  2. It needs to create a data directory with the correct owner and group and permissions. Something like /Library/WebServer/Oddmuse or /var/www/oddmuse. A directory that will not be served by the webserver.
  3. It needs to create a config file the correct owner and group and permissions in this directory. The content should be just a single line: $AdminPass = '';
  4. It needs to create a modules directory with the correct owner and group and permissions.
  5. It needs to place the Oddmuse:Creole Markup Extension with the correct owner and group and permissions in this directory.
  6. It needs to install the core script and a simple wrapper script pointing at the data directory in the default location for CGI scripts. Something like /Library/Webserver/CGI-Executables or /usr/lib/cgi-bin.
  7. It needs to pick the correct owner and group and permissions for these two files.

Does anybody feel like using WiX to build an MSI file for Windows users?

Tags:

Add Comment

2006-10-14 Pompoko

We went to see Pompoko (1994). Lovely movie from Ghibli studios. Wonderful plot balance between the inevitable and the joy of living.

Reminds me of our current environmental problems. Nobody is evil and wants to destroy nature. But many of my friends are having children now, and they want to raise them in rural areas, away from drugs & crime, maybe close to a little forest. And by doing so, they do their part in destroying what they are seeking.

Tags: RSS

Comments on 2006-10-14 Pompoko

I love the goblin parade! The most political movie that I’ve ever seen. Of the movies I’ve seen, I feel this one is closest to showing how a community works and thinks and feels.

LionKimbro 2006-10-15 06:35 UTC

Add Comment

2006-10-14 iPhoto Corruption

Claudia got back from her holidays in Crete. We connected the camera to the Mac Mini, switched it on, iPhoto started, we imported the pictures. Then we noticed: How weird, the new pictures came right in the middle of the archive. Somehere in 2005. When I searched for “Kreta”, we got all the pictures from Crete 2006 and all the pictures from Beirut 2005. W00t!?

Some rearranging, investigating, restarting… And suddenly the complete archive only lists all the pictures up to Beirut and all later pictures were lost, unless you clicked down to the archive for 2006. Another restart, and iPhoto offered to reimport some new pictures. And it turned out that it reimported two more sets of the Crete pictures. When I rebuilt the library using the special key-combo while starting iPhoto, everything looked ok (and the Crete images were gone), but once I reimported them from a folder, things got mixed up again. Three pictures from older days suddenly got reassigned to the Crete folder.

I think I’m going to restore the iPhoto library from backup and try again.

This sucks!

Time passes. Restore from backup, everything looks ok. Import pictures from Crete folder, and there we go again!! AAAARARRRRGHH!! >{

So what we had before was a folder the Pictures/iPhoto Library/Data/2005/2005-02-22 Beirut. After importing the pictures from a folder called “Kreta 2006”, the old Beirut folder disappeared and all the pictures got moved into a new folder called Pictures/iPhoto Library/Data/2005/Kreta 2006. All the Crete pictures, got moved into Pictures/iPhoto Library/Data/2005/Kreta 2006_2.

Well, at least they didn’t all end up in the same folder like last time. But it sure sucks like hell!

What are we supposed to do now?

I think what I will do is restore a library from the backup, but keep it under a different name. And we’ll delete the current library, so that iPhoto will start a new one. At least we can navigate both libraries. Both libraries will not be corrupted. And we could even merge them later, should that be necessary.

Tags:

Add Comment

2006-10-15 Firefox Trademark

An issue I have complained about in the past with regard to NeoOffice has resurfaced once again. This time it is the Debian project wanting to a. distribute a patched version for Firefox and b. to allow their users to modify the artwork that comes with it. But the trademark to the name and the logos belongs to Mozilla, and they want to protect their brand. Patches are supposed to be reviewed and artwork may not be modified, says Mozilla.

How can this be? A license to copy and modify and distribute does not encompass the use of a name and logo. In the NeoOffice case, they spelled it out for you: If you want to release a derivate work, you’ll have to remove the name and logo from all source files before you can exercise the right to redistribute any modification you made. It reduces the freedom given to you by the GPL. (2005-06-24 Software)

And now the Debian project is staying true to its mission and is doing just that. Thick headed bastards, but I think they are doing the right thing in the long run: Many distributions can include non-free documentation or software. But I’m happy that there is at least one distribution that makes a conscious effort to take the high road and live up to a promise they made so long ago.

More info on this in a Linux.com article called Behind the Debian and Mozilla dispute over use of Firefox, including a link to similar issues regarding Thunderbird

Tags:

Comments on 2006-10-15 Firefox Trademark

Firefox is a known issue[1], it’s funny that it came up before a code freeze. I was conveyed a modified Firefox package while using Debian unstable. Who cares if a bunch of people are going to start pressing CDs. I guess it’s a strategic time for one side to demand requirements be met in a marked “stable” distribution, while the other side is praying for mercy because their deadline is approaching. This really should have been handled better. And I think Debian is at fault. I won’t bring up that they shouldn’t have been sidetracked by GFDL stuff earlier this year. Debian also assumes they can push the Social Contract and DFSG freeness in a strong arm technique even the FSF would be jealous of.

AaronHawley 2006-10-16 16:27 UTC


Apparently, even Microsoft gave a nod to the Mozilla team for their release of a new version.[2] Maybe it’s Microsoft’s recognition that Mozilla is a fellow proprietary Web browser developer, or I’m just falsely accusing Mozilla of being “guilty by association”.

AaronHawley 2006-10-26 21:15 UTC

Add Comment

2006-10-16 Ende der Narrenfreiheit

Heise berichtet über neue Vorstösse zur Überwachung:

Der CDU-Bundestagsabgeordnete Günther Krings forderte, Internet-Verbindungsdaten, die künftig für den Kampf gegen den internationalen Terrorismus gespeichert werden, auch für Ermittlungen gegen Urheberrechtsverstöße zu nutzen. Die anonyme Nutzung des Internets in Deutschland müsse erschwert werden. “Wer sich im Netz bewegt, kann nicht davon ausgehen, immer inkognito zu bleiben”, sagte er dem Magazin Focus. (dpa) [1]

Seltsam, da wir doch auf der Strasse auch (noch) inkognito bleiben dürfen. Und die Terroristen sich ja auch auf der Strasse bewegen. Da fragt man sich mit leichtem grauen: Wie lange noch?

Tags:

Add Comment

2006-10-18 Sparta vs. Persia

I remember reading 300 by Frank Miller. And now they’re make a movie for it (2007-11-17 Comic → Movie). The comic was visually impressive, but it’s all about macho self-sacrifice and war, so it wasn’t too good intellectually. And it seems that the movie 300 (2007) will not be much better. The trailer is full of pathos.

Reminds me of the comic Sin City by Frank Miller which also resulted in a bad movie. I didn’t read the comic but I don’t think it was much better.

I guess I don’t like the mix of AncientHistory & Fantasy. Or maybe I just take some time to adjust.

Update: I reread the comic, and thinking back to the trailer, I suddenly see a political angle to it. After all, the Persians are Iranians, right? And the Spartans fought for freedom and honor – and not for democracy. And they didn’t take prisoners, they just butchered them all. What kind of message does such a movie send? Strange how I think that moving the story from a comic to a movie will change the message significantly.

Then again, I’ve written about the move from book to movie of The Lord of the Rings before, I think. I just can’t find the reference to it anymore. I basically said that a good book has details, sidelines, depths, development, where as a good movie has action, fast-paced dialogues, interesting faces. Thus, either you take the book and make a good movie, pissing off all the people who loved the book, or you make a movie that goes into the same level of details as the book and piss off all the movie goers that did not read the book.

Tags:

Add Comment

2006-10-21 White Dragon

I rented White Dragon (2004), but did not enjoy it too much. Too silly.

Not recommended.

Cecilia Cheung looks nice, but her trying to play a spoilt brat was getting on my nerves. Strange from some angles she looks a bit like Julie, a friend of Claudia‘s. Julie has spent a long time in Beijing studying various Chinese folk dance and speaks Chinese fluently.

Tags:

Add Comment

2006-10-21 Zooming Out In Time

Nice talk by John Baez (check out the PDF he links to!) putting together some things I wondered about myself regarding global warming (“Now it’s cold. What’s wrong with a little warming?”) and one of the answers (“Species have been migrating north at 6 kilometers per decade since 1950. They can’t keep up: since 1975, climate zones have been moving north at 4 kilometers per year!”).

Via O'Reilly Radar [1].

Tags:

Add Comment

2006-10-22 Object Oriented Perl

I started reading Object Oriented Perl by Damian Conway. I had mooched the book based on a recommendation by SuShee. [1]

One thing I can say is that chapter two with a quick tour of Perl is clearer than any other book I have read in explaining some of the muddy issues in Perl:

  • the difference between arrays and lists
  • the use of references and the arrow operator
  • the square brackets and curly brackets for array and hash references
  • some more esoteric syntax such as hash slices and calling a subrouting using &foo in order to pass it the current parameters
  • the book also makes clear that the parameter array is aliased so you can modify variables in the calling environment, which is something I somehow learned in passing

As I recently said on #emacs, more or less:

kensanata
I must confess that in order to get stuff done, I still use the arcane ugly hairy and cryptic language of our forefathers, P E R L !!!

Well. I don’t log IRC, so this is entirely reconstructed.

Tags:

Comments on 2006-10-22 Object Oriented Perl

After reading Conways book and some intense studying and thinking I was able to make my own mini-framework for OO Perl programming. I then discovered an almost exact copy on CPAN: Class::Base by the guy behind Template Toolkit. I use that instead now.

Are you considering an OO rewrite of oddmuse? :-)

I still cling on to Perl. I gave python a shot but it just did not feel natural.

Vagn Johansen 2006-10-26 16:00 UTC

Add Comment

2006-10-22 Playing G.R.A.W. Online

Yesterday I’ve played G.R.A.W. (Ghost Recon Advanced Warfighter) online for hours. An update to the game added a new variation: Coop. Last time I played, only the “Campaign” mission was coop – human players on one side and the computer on the other side. Now all sorts of games can be coop: Elimination, Territory, and Objective. I enjoy that much more. The typical Team Elimination with infinite respawn are very boring, I think. People run, shoot, kill, die, and respawn all the time. Perhaps I’d like it better if I got more practice…

Tags: RSS RSS

Add Comment

2006-10-24 Illiterate Programming

Today twb linked to his illiterate programming tool befuddler. He then told fsbot that “illiterate programming is a style where you write as little documentation as possible, because it discriminates against machine readers.”

Haha! :)

Tags:

Add Comment

2006-10-25 Diebold Fiasko auch in Deutschland möglich

Heise berichtet über den Bericht des CCC zu den Wahlen mit Wahlcomputern in Deutschland:

Die selbst ernannten Wahlbeobachter beschäftigten sich nicht nur mit der Durchführung der Wahl, sondern sprachen auch mit den Wählern. Zwar habe jeder Dritte von möglichen Manipulationen gehört, Manipulationen seien von den Angesprochenen aber kategorisch ausgeschlossen worden. Nur eine Personengruppe bildete hier eine Ausnahme: “Die wenigen Wähler, die sich über den Einsatz von Wahlcomputern empört zeigten, waren von Beruf ausnahmslos Informatiker”, heißt es in dem CCC-Bericht. [1]

Sieh auch den Bericht der CCC-Wahlbeobachtergruppe von der Oberbürgermeisterwahl in Cottbus.

Tags:

Add Comment

2006-10-25 Sahara FM

I discovered Sahara FM InternetRadio (only 64k unfortunately).

Arabic Music from Colorado. ;)

Tags:

Add Comment

2006-10-26 Decentralize the Net

In Germany, I’m not allowed to link to AllOfMP3. In Denmark, it seems that a court has ordered a provider to prevent its users from visiting AllOfMP3. And already people are offering alternate name servers. [1]

This reminds me of the OpenNIC, one of the alternative DNS roots. Using a decentralized system would increase the potential for conflict, as suggested in the article on alternative DNS roots and discussed in RFC 2826. But it would also put an end to the endless haggling over “Internet Governance”, ICANN influence, and the kind of silly court decisions we hear about in Denmark.

It’s often hard to say when we should ban the tool used to commit a crime in addition to prosecuting the perpetuators of a crime. Nobody wants to go after the producers of knives, for example, even though people are killed with them. I’m not against banning small firearms, however, because it seems that the trade-off in this particular area is different than in the knife area.

I don’t support the old Music business model, which explains why I feel that the price we’re paying to support these old business models (including the removal of AllOfMP3 from the name servers of a Danish ISP) is too high considering the benefits (which I believe to be very very small). Thus, in my opinion, we’re making a bad trade-off, and that’s why I think the court decision in Denmark is silly.

Tags:

Add Comment

2006-10-26 Stargate Atlantis

Heh. We watched Season 1 & 2 of Stargate Atlantis. There’s a Stargate Portal on Wikipedia, German Stargate Wiki and an English Stargate Wiki. And a movement to Save Stargate SG-1. Looking forward to watching all ten seasons of Stargate SG-1, I guess. ;)

Update: I think I must join the dark side to get at Starget SG-1 Seasons 1-7 – our local video rental doesn’t have them, and one of the guys working there who claimed to have them on video now confessed to not finding the first box, being a pathological messie, with no daylight coming into his appartment, and thousands of tapes and DVDs. Argh! Maybe I should try to find another video rental in Zürich to get them?

Then again, I just discovered that there is a DVD swapping community in Switzerland: Exsila. Sounds interesting! They suggest I use the bar code on the back of the DVD to enter my DVDs. I attempted to add three DVDs to the system, but none of them were in the system. Too exotic? Wrong region code? (DVD region codes → bastards!)

I tried adding Delicatessen (1991), The Hidden Fortress (1958), and Kikujiro (2000) to get started. Since all three failed, I sent a mail before adding more. I had planned to add Ran (1985) and Le bunker der la dernière rafale (1981).

Update: I heard a recommendation for another DVD swapping community in Switzerland: runDVDrun. Whee, I did not know either one! I registered the five movies I had wanted to register in the first community, and a few minutes later, a guy in Basel already asked for Le bunker der la dernière rafale.

These Book & DVD swapping sites are great! I love it.

Tags:

Add Comment

2006-10-26 iLike

If you use iTunes to listen to music, there’s a plug-in to download called iLike. Based on the music you’re currently playing, it will suggest other music in a new iTunes sidebar. The music recommended will be either traditional tracks, or “free music” from GarageBand. To be honest, I forgot what their licensing terms are. I guess you’re free to download them, but whether you’re free to upload them again (distribute), modify them or use them in podcasts & movies (create derivatives), I don’t know. I doubt it, actually (so “free” in this case stands for gratis, not freedom).

Via O'Reilly Radar. [1]

Check out my iLike account. Strange to think that my music listening habits will now be published by two plug-ins: LastFM and iLike. Will this list grow? :)

It doesn’t suggest anything when I play Fado or obscure folk music from Turkey, and it suggests Rai artist Cheb Mami when listening to Qawwali artist Nusrat Fateh Ali Khan. Oh well. :)

Tags:

Comments on 2006-10-26 iLike

I’ll have to check this out. I’m a fan of both last.fm and Pandora, so it’ll be interesting to see what iLike offers. Mind you, I’ve almost moved over to using Amarok (with last.fm support built in) for my iPod management, and that’s unlikely to change until Apple brings out a version of iTunes for Linux :)

GreyWulf 2006-10-26 09:55 UTC


Hehe. I didn’t like the idea of running a special LastFM client (on Windows at work), which is why I just feed the system without actually following their recommendations.

Pandora worked quite nicely for a while when I has a station going that was initialized with Sigur Rós. I listened to it on my SqueezeBox in the kitchen. But then the Pandora station suddenly stopped working, and I was too lazy to investigate. It also turned out that Pandora’s selection of Latino music was tiny – I was looking for Bachata music similar to Aventura.

Plus I’ve got a thing going for GarageBand because of the unknown artists and being able to download audio files without feeling like the secret police descending on me any minute now.

AlexSchroeder 2006-10-26 10:44 UTC

Add Comment

2006-10-28 Bar Camp Zürich

Bar Camp Zürich I was at BarCampZurich, today. (See 2006-08-30 Bar Camp Zürich.) I wanted to talk about WikiNameSpace & NearLink & MultilingualWiki & Oddmuse.

There was a nice resumé about the state of Podcasting in Germany.

The SubEthaEdit guys were here, talking about the design of their real-time collaborative editor. Ott mentioned that the change tracking features in Word are not good enough for most asynchronous uses, eg. journalists & editors. This might be relevant for wikis! Who wrote what, and when. What kind of info do editors need? Ott also talked about the importance of presence and awareness: Who is online? He mentioned how easy Bonjour makes this, since you don’t have to worry about NAT routers & firewalls. What documents do others “own”? What are they looking at? “Follow” mode. Interesting stuff.

There was a session by the creator of Brainfuck, Urban Müller. Amazing. Check out the Brainfuck Wiki. Or the Javascript Brainfuck Interpreter / Debugger. Urban works for search.ch and guess what… It turns out that the BrainFuck interpreter and compiler MarioLang had written in 2002 had bugs. That’s terrible! I had to fix it immediately. I uploaded the updated version to EmacsWiki:bf.el.

I decided I need to give it a try and implemented a multiplicator. Example:

(bf-run "+++ > +++++++++++
          [ < [ - >> + > + <<< ]
            >>> [ - <<< + >>> ] << - ]
          > . ")

And the result of 3 × 11 = 33, ie. the ASCII exclamation mark!

I also liked the demonstration of the Tails extension for Firefox that was presented as part of the talk on microformats. Having aggregators crawl websites and collect calendar info and people info stored all over the web made a lot of sense to me, I think. This point of view also explains why only developers of publishing tools (wikis, blogs) and aggregators (feed readers, search engines, calendar subscription services) should have to worry about microformats. That focus, obviously, is not a property of the format being “micro” – the same is true for vCards, for example. Except that few sites use it an a truly open way. The Swiss telephone number search site by search.ch offers vCards for download, for example. Anyway, I replaced the picture of my BusinessCard with an hCard on my About page.

My own talk was about MultilingualWebsites.

Links to the presentations themselves are on the barcamp website.

And I had interesting discussions with ChristopheDucamp and some of his friends (organizers of WineCamp and Bar Camp Alsace in France) and Axel Stefan Beckert.

Tags:

Comments on 2006-10-28 Bar Camp Zürich

I love the language BEATNIK. The following sample source code prints “Hi”:

 Baa, badassed areas!
 Jarheads' arses
    queasy nude adverbs!
    Dare address abase adder? *bares baser dadas* HA!
 Equalize, add bezique, bra emblaze.
   He (quezal), aeons liable.  Label lilac "bulla," ocean sauce!
 Ends, addends,
   duodena sounded amends.

– Chris 2006-10-28 20:29 UTC


Merci Alex pour cette recommandation de promenade dans Zurich. Ces conversations furent un plaisir et je serai heureux de pouvoir vous inviter avec ton amie à venir nous rendre visite dans Paris. A bientôt pour reparler des coûts d’une localisation francophone du OddWiki ;)ChristopheDucamp

ChristopheDucamp 2006-10-30 19:26 UTC

Add Comment

2006-10-29 Little Miss Sunshine

Little Miss Sunshine (2006) was delightful in the way that Me and You and Everyone We Know (2005) or some of the other movies whose name I cannot remember right now, where we see how perverted our life has become when seen through or contrasted with children. Hilarious, and recommended.

Tags: RSS

Add Comment

2006-10-30 Doing Away With Intellectual Property

So, what can we do to fight the excesses of copyright and patents?

  1. Some online shops such as Amazon allow customers to tag their products. Let’s tag the DRM supporting media players & the DRM protected media using a tag: DefectiveByDesign. Check it out: defectivebydesign tag at amazon.com.
  2. Some courts in Europe are starting to reject software and business practice patents. Heise has an example from the UK. [1]
  3. Developping countries are starting to resist pressure at the WIPO for more restrictive regimes. Heise has an example from recent talks in Geneva. [2] A report in English is available from the IntellectualPropertyWatch. [3] The IP Watch article also gives a hint at how such meetings are run. It’s important that a presentation happens as part of a distinguished item instead of the catch-all “Other Issues”. It’s important that a presentation be given, and not a statement be made. Fascinating & silly.

I’m most impressed by the tagging campaign, however.

Tags:

Add Comment

2006-10-31 LiverJournal integrates Jabber

Ok. LiveJournal has Jabber integration. If I send a message to the bot, it gets posted on my LJ non-blog. [1]

What should I do now? Embrace LJ? Write a simple Jabber bot for Oddmuse?

Update: I’m using a Sabifoo gateway to post on Oddmuse and will not use my LiveJournal. 😊

Tags: RSS RSS RSS RSS RSS RSS RSS

Comments on 2006-10-31 LiverJournal integrates Jabber

I think you oughtta at least try it..!

LionKimbro 2006-10-31 17:48 UTC


Sabifoo supports tunneling to another target, doesn’t it?

LionKimbro 2006-10-31 17:49 UTC


Totally! 2006-10-31 Sabifoo and OddWiki:Sabifoo!

AlexSchroeder 2006-10-31 22:45 UTC

Add Comment

2006-10-31 Sabifoo

I was inspired by the LJ Talk bot Frank (which allows LJ users to message the bot who then posts it to their journal), and by the Sabifoo Help Page which documents a truly awesome feature: You can define other web services you want to post to! And thus it was easy to write Oddmuse:Sabifoo to post to Oddmuse blogs. Amazing!

I’ve switched Sabifoo such that it will now send all messages to my blog. How awesome is that. Sabifoo rocks.

The messages are still posted on my Sabifoo blog but at least the gateway prefix is gone. :)

Heh. Just added a summary extraction, too. I’m not really sure my blogging habits will change. I think it goes against my vision of writing succinct posts. (Yeah right!)

Tags:

Add Comment

2006-10-31 claimID for Big Brother

I wonder what claimID is all about. It seems to me that you can create an id on their site, and link to other resources of yours. What’s the point?

  1. You help other people find stuff by you, in a portfolio kind of way.
  2. If you use it as intended with a single identity however then basically you’re helping everybody else to track you.
  3. You’re making yourself more transparent. Unfortunately, the operation is not symmetric à la TransparentSociety: You’re not making anybody else transparent. Nobody watches the watchers.
  4. There’s no inverse operation: You cannot disclaim anything. (“No, this IRC log is not about me!”) It’s a one-way street. You can’t use it to hide parts of yourself. No cloaking.
  5. So when they say you should “reclaim some power back from the search engines” [1] what they are actually saying is “selectively helping them”.

I don’t like it.

The problem they are solving is not something that bothers me (link all my stuff to my name). They don’t solve the problem that does bother me (asymmetric & unvoluntary transparency).

Tags:

Add Comment

Define external redirect: BruceSchneier CommunityWiki LiveJournal NearLink RichardStallman twb TransparentSociety OddWiki Mozilla CreativeCommons PeerToPeer MultilingualWiki WikiNameSpace EmacsChannel PierreGaston FreeCulture SubEthaEdit fsbot WineCamp MarioLang BrainFuck