À la bonne Sainte-Force



Tin cans to the rescue

29 May 2012

Dear friend,

Sainte-Force software is pretty much like other software. Although it feels nice most of the time, there are always stupid limitations that shouldn't exist and poison users. But here software is different. It feels magic (a natural side-effect of being over-classy) and its only user sees incremental improvements that wipe away those silly limitations of the previous versions.

A working example of this happens today. Take the Website Opener. It's a very simple and helpful thing to package websites properly, have a single entry point to them (double-click on the package, it opens the right page), and still be able to access the underlying hierarchy (Show package contents in the contextual menu). But after using it for a while, and getting used to this exciting idea, you start to notice you'd need to package other things in the same way… If you don't like reading, go straight here.

Imagine you have a folder that you use often for a project. For example, you learn the piano and want some place to store interesting scores and write about your progress. You create a folder called Learning the Piano, put it somewhere and start to fill it with interesting scores, taking care to fill a diary to report every progress you made. After some times it starts to look like figure 1.

My folder holding all that is relevant to my piano lessons. I'd like that the Diary could open itself automatically.
My folder holding all that is relevant to my piano lessons. I'd like that the Diary could open itself automatically.

What you use the most is your diary. You use it every day. When you find an interesting score, you drag it to your folder and forget about it until you really want it. It would be nice if only the diary could open itself when you think about your piano folder.

Let's take another example. You have a Python program in a directory with lots of support files you don't care about, but that are essential for the program. Instead of diving into the file hierarchy and try to find the right Python file to open, wouldn't it be nice if it behaved like an application and launched the right program automatically ?

A last example. You want that every time you want to work on a particular project, it automatically opens a Terminal session, sets the right Workcuts keyboard shortcuts, opens the corresponding TextMate project and a little text file acting as a logbook. You can still try to do this with a Multiplexer.

A nice realization of these three wishes would be a folder that can open a particular file when it is double-clicked in the Finder. This file could be a script or something complicated, we don't really care, but this idea of a double-clickable folder can help solve the issues we have. The Sainte-Force name for this is a tin can. To be able to use them, just download this application and put it somewhere, like in your Applications folder :

A tin can is a folder with the extension .tincan, which automatically opens a chosen file when double-clicked. To create a tin can, choose a folder (or create one), put things inside, and rename it so that its extension is .tincan. If the Tin Opener is somewhere on your Mac, the folder instantly becomes a tin can. When double-clicked, a tin can searches for a file whose name is index or that has the same name as the tin can (whatever the extension). If it doesn't find anything, it asks you what file to open when the tin can is open. You can also set it by writing its path in the file .TinCan, in the corresponding tin can. You can still access the contents of the tin can, using the Show package contents contextual menu of the Finder.

From the Finder, here's how my piano lesson tin can appears.
From the Finder, here's how my piano lesson tin can appears.

A tin can is easily shareable. You can send a tin can to anyone, provided that she also has the Tin Opener. If not, the tin can just looks like a plain folder, and you can access its contents, but it does nothing special. And it has a nice icon that reflects what is going to pop out of the tin can. Ditch the old Website Opener and go for tin cans now !

  1. You can change it later by opening the tin can while holding the ⌥ key.

Looking forward to hearing from you,
Hubert Sainte-Force