iPod Shuffle without iTunes

ipod shuffle The great guys at BeInSync got me an iPod-Shuffle yesterday.

The moment I started skimming through the manual I figured this a’int gonna be an easy match up. Apple seems to really want you to install iTunes, maybe it’s an attitude problem. I personaly dislike having to install software that I don’t need.

Why can we simply not use iTunes ? Because Apple intermixed iTunes and the Shuffle just to damn nicely together :-) (Read more here)

Martin Fiedler wrote a great tool that takes iTunes out of the equation. It path.os.walk()’s your iPod and builds a file with all the MP3s you’ve got there, so that the iPod knows what to play. You need to run it whenever you finish adding/removing mp3′s from your iPod, but heck it’s better than doing it all through iTunes.

There were two things I missed in Martin’s program:

  1. It has to sit in the root of the iPod’s directory-structure.
    Added a command-line argument ‘-r’ or ‘–root’. If you choose to put the program in ‘/programs/builder_db’ it will simply change to ‘/’ before starting to run, which now means you can put it wherever you want :-)
  2. There wasn’t an EXE version (it’s written in Python, what if I got to a friend and he doesn’t have Python installed ?)
    This was simple, we just use py2exe to make ourselves an executable version.

This now allows me to have the following directory structure on my Shuffle:

  • \Music – this is where I put all my music/podcasted-stuff.
  • \rebuild_db – the executable version of rebuild_db together with it’s DLLs.
  • rebuild_db.bat – this one sits in the root of the iPod and simply contains: rebuild_db\rebuild_db.exe –root –nolog

Here’s the executable program: rebuild_db.zip (1.1MB)
Here’s the modified Source: rebuild_db-0.6-pre2.zip

Flippr! – Flickr Wallpapers

Flippr! is a simple application that grabs pictures from (The supercool photo-sharing website) and throws them on your desktop.
It’s easy to tell Flippr! what ‘kind’ of pictures you’re looking for ().

For a nice waterfall on that desktop, simply run ‘Flippr waterfall.
If your hungry, try ‘Flippr peterluger or perhaps ‘Flippr pasta.
If your… You got the point :-)

Download the program Here

Notes:

  • The program comes with several batch files that simply run Flippr! with different tags.
  • You can easily automate the process of switching wallpapers using Window’s Task-Scheduler, which is located at Start -> Programs -> Accessories -> System Tools -> Scheduled Tasks.
  • At some times it can take up to a minute or two to fetch the picture (remember you’re sometimes downloading hi-res JPGs)

So what’s the recipe?

Download source
Download executable (zip)

Desktop Slush – A cool desktop enhancement

Ever find yourself glancing at your desktop looking for a shortcut for more than a few seconds ?

People will sometimes choose beautiful pictures that aren’t fit to be a wallpaper. The heart of the problem tends to be the lack of contrast between your icon/s and the wallpaper it’s sitting on. That’s why an Icon can lurk in some dark/bright corner of the screen and almost get swallowed by the beautiful wallpaper you chose to put there.

For once I had enough with that :-) I decided to write a small program that will find your icons and make sure they don’t blend in with your desktop, all this in an elegant way ofcourse as I’m a design/elegance freak.

I know I could have taken the icon-positions from the desktops Image-List, but that’s just too easy :-) I wanted to try out some image-processing, so here’s what I did :

  • Take a clear screen-shot of the desktop.
  • Calc the |difference| between this and the user’s wallpaper. (so logically the icons should stand out).
  • Remove all the noise, as in take only the big differences.
  • Run a Maximum-Filter, this will expand that area consumed by the icons.
  • Divide into a grid, then try to Flood-Fill each point in the grid to find the areas from the previous step, then bound these areas with nice rectangles.
  • Give these rectangles round-corners, a border, and make them semi-transparent.
  • Blend back with the Original Wallpaper, and there we go.

Use the navigation buttons at the lower-left corner of the slideshow

I used the Corona Library for loading/saving images.

And I decided to start using the GPL for source-code I release, so here we go.

Note: The program currently works with ‘Stretched Wallpapers‘ only, changes will be pleasantly accepted.

Download: Source, Binary.

Damn biggest Fractal Print I’ve ever seen


(that’s a person lying next to the poster)

I went on and generated, then printed a 2.25 x 1.5 meter (7.3 x 4.9 feet) Mandelbrot-Set poster. It’s higher than Michael Jordan and almost as wide as the average sedan. It has presence because of the shear amount of data it embodies. It’s made up of 25 digital printouts, each printout is 45×30 cm and has a resolution of 400dpi.

When you walk by large posters you will usualy notice they are made out of very large pixels, sometimes you’ll even be able to notice the RGB components seperately (ala fake mode). This is because we usualy don’t have enough data to fill such large posters with.

The thing with fractals, is that they are infinitely large, and thus can fill up as much space as we have to spare. This one has 850 Mega-Pixel of data.

This program lets you generate Mandelbrot-Sets of any size and precision, and automatically slice them for easy/cheap printing.

Download: Source, Binary.

A Mandelbrot Screen-Saver

I always fancied screen-savers, especially those that didn’t put up a slideshow of the Atlantic’s Ocean’s wonders over and over again.

I’ve written a two screen-savers before, one which ray-traces random sets of spheres and another that runs random sets of Conway’s ‘Game Of Life’ (which is aptly called ‘Life Saver’, pun intended.

Like any CG programmer, a time comes when you get too curious about fractals and just have to try them out.

My little game resulted with a screen-saver that, you guessed right, plots random areas of the Mandelbrot-Set, or in plain-English it ‘shows cool stuff on your screen’.
As 99.9…% of the Mandelbrot-Set is basically empty, random regions are internally examined until one with sufficient interest is stumbled upon, and then displayed.

Download: Source, Binary.