Why Mac OS X packages are annoying

So, an experiment. Take a folder on your Mac OS X computer, and let’s hypothetically assume it’s a folder full of really important documents that you mustn’t lose. Now, rename the folder. For some reason, the name you want for the folder is ‘Really important files for my .app’ because.. uh.. dunno, you’re developing an application and you need to store files for it. Or something. Unlikely, sure, but possible.

But wait! It didn’t work! The finder just stripped off the ‘.app’ from the end of the folder name. Darn. Oh, well, these things happen. Lets get back to work… Hang on. I can’t open the folder any more. I double click on it, and nothing happens. what’s going on?

This is a truly stupid behaviour. The finder didn’t strip the ‘.app’ extension, it’s hiding it, because it thinks that the folder is now an application package. Now, application packages are a truly wonderful idea that I’d be incredibly impressed by if I hadn’t seen them 10(?) years ago in RISCOS. But your folder here isn’t an application package, it’s just a folder with a silly name.

I’m not sure where the stupidity lies here. The finder should not let you rename a folder like that, for a start. But using file extensions on a folder name to indicate that the folder is actually a fundamentally diferent sort of object (from a user point of view) is also stupid. As is the fact that you can’t rescue the folder once you’ve done it except through the terminal. Which is an advanced user concept, damnit, and I shouldn’t have to use it EVER. Hell, the only way you can even see your files again is to right/control-click and select ‘show package contents’. Of course. What a simple, basic-user findable concept.

Now, blech has pointed me at a little app for OS 9, at least, that can fix this problem – Package First Aid.

But this is almost a whole other rant. When there’s an application that exists to repair an OS fuck-up, this should be a bad thing. In the same vein, windows XP has superb system state rescue code, so you can roll-back to earlier versions. You need it because it’s so easy to completely destroy the system. Rather than fix the problem, they just produce really nice looking band-aids.

In the same way that the finder shouts at me if I change the file extension on something, it should at least shout at me if I perform a potentially destructive (and it is destructive from the point of view of a non-expert user) operation on a folder. Especially one so non-obviously destructive.