Public Service Announcement

June 13th, 2009

In google’s calendar, yearly events that repeat and never end will disappear. Here is a work around:

  1. Search for the event that has disappeared.
  2. Edit the event.
  3. Change never ends to until.
  4. Enter some random date in the future.
  5. Curse and Save.

Here is a page that discusses this.

Seurat Screensaver

May 4th, 2009

Seurat Desktop

I took the processing Seurat program and made a windows screensaver out of it. The screensaver will take a picture of your desktop and create a pointillism painting.

You can get a copy of the screensaver here.

Superfuzz Bigfluff

March 27th, 2009

Big Muff

This looks like the best possible thing to lounge on while enjoying Mudhoney’s Deluxe Edition.

Youtube is out of memory

February 8th, 2009

Opera Memory leak

Songbird sync

January 18th, 2009

Here is a nice plugin for songbird. It will let you export playlist as pls files. I’m using the following python code to sync playlists with my mp3 player.


#!/usr/bin/python

import sys
from shutil import copy2
from os.path import exists
from os import mkdir

#get the name of the playlist from the command line
if len(sys.argv) < 2:
    print "Usage:\ncopy-playlist-to-player.py playlist\n"
    exit(1)

playlist = sys.argv[1]
dirname = playlist.split('.')[0]

#create a directory on the mp3 player with the name of the playlist
PLAYER='/media/mp3player/'
des= PLAYER+dirname

if exists(des):
    print "Directory " + des + " already exists"
else:
    print "Creating directory " + des + "\n"
    mkdir(des)

#open the playlist
f = open(playlist)

#read a line
#if the line begins with File[0..9]+ then this is the file to copy
#extract the file name
#copy it to the mp3player
#do this until eof

for line in f.readlines():
    kv = line.split('=')
    k = kv[0]

    if len(kv) > 1:
        v = kv[1].rstrip('\n\r')
    else:
        v = 0

    if k[:4] == 'File':
        #copy all of the files in the list to the new directory on the
        #mp3 player
        src = v
        nf = des + '/' + v.split('/')[-1:][0]
        print src + "->" + nf
        copy2(src,nf)

#close the playlist
f.close()

Invalid mount point

January 18th, 2009

Arrgh… This is the second time that this gnome bug has bitten me. When you go into properties of a jump drive you can change the mount point. The screen displays the full mount point “/mount/no name” for example and they give you a box to change it. The most obvious thing to do is to type the full mount point “/mount/mp3player”. The dialog box will except this and it will tell you the changes will take effect when you remount the drive. Ah ha. When you plug the drive back in you get some shit about it being an invalid mount point. How do you fix this? You have to go into the bastard son of regedit, gconf-editor, find the mount point and change it to mp3player. Yuck.

Olga, searching inverted ISAM files

January 17th, 2009

Someone posted all of the original olga on scribd. All of the pdfs where organized by artist name. This is nice but doesn’t help you much if you only remember a little bit of the songs lyrics.

I wanted to be able search the archive for certain songs by artist, title or lyrics. I downloaded the pdf files and extracted all of the text files. I ended up with around 8700 files. Needless to say grep was really slow. Gnome has something called tracker-search-tool that works along side trackerd that should have done the trick.

Trackerd is like a lot of things gnome and linux related these days. In other words it doesn’t work. According to the man page it suppose to index all of my home directory. I have had these plain text files sitting in my home directory for a few months now and it never returns them as results to my searches.

Since this is basically a static directory of files that I want to search I wrote my own inverted ISAM indexer and search program. I’m happy with the results. Here are some time comparisons:

time grep -i “monkey.man” *
real 0m25.588s
user 0m24.542s
sys 0m0.204s

time searchInvertedIsam olga -e monkey man
real 0m0.030s
user 0m0.024s
sys 0m0.008s

Here is the source code

Slider Control

December 30th, 2008

Here are some examples of a slider control that I wrote for processing. I know there are probable tons of gui tool kits for processing but it’s fun too see how quick and easy it is to build this stuff.

Cat Nausea

December 17th, 2008

Vortex incdrift
Here are two new windows screensavers to make you or your cat nauseous.
Incremental Drift Screensavers

If the screensavers seem really slow you are probable missing an openGL driver for your video card.

Lasse Johansson

November 24th, 2008

Lasse Johansson has a new instructional video available through Stephan Grossman’s guitar workshop. He is teaching a number of songs from his excellent book. I have been trying to learn some of the pieces over the years and they are very challenging. This looks like a great video. I can’t wait to get a copy.