"The
Archive" 2008
Two Thousand
And Eight
It's
still 2008, so this is a work-in-progress.
Beifall für die 10-Uhr-Show.
Im Audimax der TU Wien bei der GSI-Vorlesung
von Peter
Purgathofer wird die Millionenshow parodiert und ~ 300
Informatik-Studenten applaudieren. Ein Bild
der Folie und der Audio-Mitschnitt
(meines Wissens von Bl4cky).
Ein
kleines Script, um schnell JPEG-Files in allen Unterordnern zu
verkleinern (wenn man sie zB zur Archivierung auf DVDs brennen will,
aber nicht gleich Unmengen an Scheiben verbrauchen will): recursive-reduce-fotos.py
If
your iPod database contains tracks that have their title field set to a
MP3 filename, like. "Artist - Title.mp3"
and the artist field empty, here's a script that uses python-gpod to
scan your database and update all tracks with the correct artist and
title: ipod_db_filename_titles.py
Funny
Python idleness hack: a "flag" object: flagstuff.py
Draft
of a Tango icon mixup: gpodder-wolke.svg
Simulating
the "Flash" effect of Apple's PhotoBooth in Linux when using a
compositing manager: flasher.c (for this bug report)
Quines
I've found "
Quines
(self-replicating programs)" and wanted to do one myself in Python.
I came up with three, and write a short "quine tester" in Python, too:
Minimal Quine (mail me if you
have a shorter one!)
x=';print"x="+repr(x)+x';print"x="+repr(x)+x
Python Quine Tester Script
#!/usr/bin/python
import sys, subprocess
fn=sys.argv[-1]
fn != sys.argv[0] or sys.exit(1)
code = open(fn,'rb').read()
output = subprocess.Popen(['python', fn], stdout=subprocess.PIPE).communicate()[0]
print fn, ('is a quine' if code == output else 'is NOT a quine')
Two other quines (one with an
intron and one with a lambda function)
- quine2.py
- quine3.py
Five Years of Tennix!
![[Five Years of Tennix]](tennix-5years.gif)
On June 21
st 2003, we had to
present Tennix, a cute, little tennis game written in C with the
Borland C++ 3.1 IDE (in DOS!) to our teacher and classmates. It was the
end of the school year, and thank to our professor, we were allowed to
hold another programming challenge in our programming class, the first
being held just before Christmas 2001 (see
Funk Das Licht 2). So, this was the
second school year, and we quite used to the text mode "conio.h"
offered us (this is a DOS-only header file that supports the DOS text
modes). Some of us already played with Borland's own
BGI
(Borland Graphics Interface), but it didn't allow us to have fast,
direct-access graphics that we wanted to have (and of course, being
quite naive in this early days, we wanted to "write all code
ourselves"). And so, after fiddling around with
DOS interrupts, mouse
handling and all that crazy stuff we've most likely never heard about
(and also didn't really had much use for after the project), we got a
nice game together that was playable, although it wasn't optimized, but
that didn't really matter back then, as it ran and had enough
bling-bling to be considered "good" :) Then, last year, I decided to
look at the code and wondered if I could port this old codebase to
SDL, to get it running on my Linux
system. Three nights of crazy hacking later, I was able to play the
game with the old, crappy graphics and it worked okay-ish. After that,
I started replacing the graphics one-by-one, increasing the screen
resolution to 640x480, which is a bit nicer to play in windowed mode.
Later in 2007 and earlier this year, I started supporting the Win32
platform and Mac OS X. Tennix (the
SDL
port) has since been included in several Linux distributions, has
been reviewed a few times (even in Linux print magazines). I even got
very good feedback from places like the
Linux Game Tome, and reviews in
several blogs (a list of media coverage can be found on the SDL port
website). Now, if you have not already, download the Tennix! SDL port
and see for yourself. The original Tennix! is also still available, and
can be run in DOS mode, so you don't have to dig out that old DOS
machine, buried somewhere in your basement. You can: Go to the
Tennix! SDL Port or
Read about the original Tennix!.
Movie trailers
I've written a short demo app that shows how to query and read
the Apple Movie Trailers RSS feed and extract enough information to
show a window full of muvie posters which can be played back with Totem
by simply activating one of the posters: trailers.py
I've also created a Plug-In for the Elisa Media Center to play
Apple Movie Trailers, which can be downloaded here (read README for
instructions): elisa-plugin-appletrailers-0.1.tar.gz
Moonbootica at UAF08. If
you somehow obtained the FM4 recording of the Moonbootica session at
Urban Art Forms Festival 2008 in Wiesen, Austria, you can download a wavbreaker trackbreak file here
for all your tracking and CD burning needs: moonbootica-uaf08.txt
Reordering M3U files in PyGTK.
A demo I wrote for a fellow gPodder developer to show how to make a
reorderable gtk.TreeView: gtk_reorder_m3u.py
to be continued..
Thomas Perl (thp at this domain); jabber: thp@jabber.org