Some of the code I have written is available on GitHub. There exists some other projectes that have not been transitioned to GitHub (and are not maintained anymore). For some more information and older toy projects, see below.


Some of the more important public projects are outlined below.


When I started transitioning to GNU/Linux based systems (still went to school, good old times), I started a small project that got some attention. With DesktopNova it was possible to configure a time interval for regurlary changing the desktop wallpaper. Some people started to use it and I was adding more features (e.g. support for Gnome, Xfce and other desktop environment).

I think all of the major desktop environment have this feature today. Personally, I would not go for a GUI application today, but instead use a small shell script that does the job. Not to mention that the code quality would not meet my today’s standards anymore. ;)


This project started after my families DVR recorder (a Panasonic one) broke down and I tried do recover the recordings from its hard disk drive. I observed that the dump of the disk was full of MPEG chunks (VLC was able to “play” the disk dump like a video file). Unfortunately, I never reached a point, where I understood the disk format. To be honest, I also never really tried to reverse engineer it.

Instead I wrote a small Python script that reads the disk dump and tracks all MPEG fragments by their timecode. After this initial phase, the script tried to merge chunks when similar timecodes where discovered.

I was able to recover almost all import videos from the device. So I decided to distribute the script. Even though the script was horribly complicated to use, I actually received an overwhelming number of e-mails from persons that successfully recovered their important recordings.

Other Projects

I also worked on some other things, among these:

Hi, I’m Stefan Haller.

About coding, research, photography and random thoughts.