Cool. This Harvard Journal of Law and Technology panel includes a speech by Eben Moglen (the very sharp GC for the FSF) that is encoded using Speex (a Free Software patent-free audio compression format designed for speech). One of the first publicly available Speex archive files I’ve seen…excellent. High quality, low size (8 MBish for 85 minute talk).

I had to transcode to MP3 for my player (so I can listen on train to work), and though it’s even smaller, the quailty is noticably worse; quite “mushy”. It works, but I want a Speex plugin!

FYI…My comments system is semi-broken presently. Comments are being made, but the front page is not displaying their presence (everything recent says “Comments: (0)”). I am working on at least a temporary fix, loyal fans, and the whole shooting match may be fixed and replaced by next weekend. Thus Sayeth The Kenzoid. So…well, er…Might It Be.

Very cool…I almost can’t believe I haven’t seen this before. The Web Framework Shootout is a comparison of a number of the popular Python web programming frameworks. All the examples implement the same app: a simple Wiki. The different “competitors” include a number of frameworks that I’m familiar with (Quixote, Twisted, and Zope), and a number of others that I’ve wanted to check out (CherryPy, Skunkweb, Webware, Albatross, and Spyce, among others ).

Quite enlightening. From the sample code, my intuition seems to have been correct…I like Quixote most, and Twisted has good ideas as well (there is no Twisted code at the Shootout, actually…but I’ve seen the port using Nevow, the successor to Woven [the MVC web framework for Twisted]). I’m actually in the process of testing my own comparison of Quixote and Twisted Nevow now, in order to determine what will inherit this (presently Zope-based) site. Good to know that most of the others, while interesting in some senses, don’t really fit my style.

I meant to switch to non-fiction after finishing Quicksilver, really. But I’m walking through Kroger today, and they have Pattern Recognition in paperback, for 25% off….

On page 11 while I’m waiting in the checkout line. *grin* It’s no biggie, really…Gibson is a quick read; slick prose, but not anything like as dense as Stephenson. It’ll be done in a few days.

(I say, I say…that’s a joke, son. An in-house one, even)

But behold!! C#!


kkennedy@roark:~$ mcs TestExample.cs
TestExample.cs(2) error CS0246: The namespace `System.Data' can not be found (missing assembly reference?)
Try using -r:System.Data
TestExample.cs(3) error CS0246: The namespace `Mono.Data.SqliteClient' can not be found (missing assembly reference?)
Compilation failed: 2 error(s), 0 warnings

??? *rustle, rustle* Ah!


kkennedy@roark:~$ mcs TestExample.cs -r System.Data.dll -r Mono.Data.SqliteClient.dll
Compilation succeeded
kkennedy@roark:~$ mono TestExample.exe

** (TestExample.exe:3399): WARNING **: Failed to load library ./libsqlite.so (sqlite): ./libsqlite.so: cannot open shared object file: No such file or directory
** (TestExample.exe:3399): WARNING **: Failed to load library ./libsqlite.so (sqlite): ./libsqlite.so: cannot open shared object file: No such file or directory
** (TestExample.exe:3399): WARNING **: Failed to load library ./libsqlite.so (sqlite): ./libsqlite.so: cannot open shared object file: No such file or directory
Unhandled Exception: System.MissingMethodException: A missing method exception has occurred.
in 0x00042 (wrapper managed-to-native) Mono.Data.SqliteClient.SqliteConnection:sqlite_open (string,int,string&)
in 0x0005d Mono.Data.SqliteClient.SqliteConnection:Open ()
in 0x00071 .Test:Main (string[])

Frack. Screwed now…what the…Oh!


kkennedy@roark:~$ dpkg -L libsqlite0|grep so
/usr/lib/libsqlite.so.0.8.6
/usr/lib/libsqlite.so.0

(Pay no attention to the man behind the curtain, installing static libraries…hey, I could be a supervillain!)


kkennedy@roark:~$ dpkg -L libsqlite0-dev | grep so
/usr/lib/libsqlite.so

Exx…cellent!


kkennedy@roark:~$ mono TestExample.exe
Name: Foo Kennedy

Vengeance Is Mine! My first mono program! A mere 6 months from now, I’ll be able to do it without just cutting and pasting from the site! *grin*