Finder sucks

I don’t spend much time on a Mac, but when I do I’ve always been underwhelmed by Finder. These are two of my main gripes:

  1. Why is there no easy way of viewing hidden files? There is no keyboard short cut, menu item, or even preference to toggle this functionality. Feeling thick, I turned to Google. Turns out you have to hack around in the terminal to enable this functionality! 
  2. Why is the Home folder not easily accessible? When you launch Finder, you’re taken to “All My Files”. In the side panel, there are 6+ navigation options with things like Desktop, Documents, Air Drop (eh?), Applications, Pictures, Movies, etc but no Home. Thus if you were foolish enough to store your work in a folder called Projects, you’ll be left scratching your head as to how you’d get to it. Never fear, the keyboard combination CMD+SHIFT+H to the rescue. If you thought Finder was bad, wait till you see the file open/save dialog. No Home button for you there, so you need to remember the magic CMD+SHIFT+H keyboard short cut or you’re never going to see your documents again. Nevertheless, I’m happy to report that Google provided a fix.

I have never used a file manager (Windows Explorer, PacmanFM, Nautilus) that didn’t provide an easy way to accomplish the mentioned tasks. Why are they missing from Finder? Why?! Do they have focus groups down in Cupertino?

Building a Zero MQ application on OS X

I’ve been trying to build a self-contained app bundle that uses Zero MQ on OS X. After spending a day with py2app on OS X, these are the steps I had to take.

  1. Install homebrew. http://mxcl.github.com/homebrew/
  2. Then install the latest version of Python via home brew. This is necessary as py2app doesn’t makes a partially redistributable apps if you’re using the system python.
  3. Install Zero MQ via home brew.
  4. Install pyzmq and py2app, using the easy_install that’s installed via home brew. This is normally located in /usr/local/share/python.

To generate an app bundle, ensure you add the flags –package zmq or else the resulting app bundle will not run. I’m told this is because py2app may occasionally require a helping hand with resolving dependencies.