The issue with iPhoto really is that it is lagging behind. It is lagging behind Apple's and the general cloud strategy. Even without a cloud in-between there is virtually no feasible way of sharing one iPhoto library across multiple computers, let alone tablets or phones.
There are hacks involving symlinks, NAS storage or Dropbox. The issue with any of those is that iPhoto is getting dog-slow if the library is not on your local disk and you need to make sure the library is not open on more than one computer to avoid conflicts.
The simple requirement to share all our 10,000+ photos with my wife slowly became a major headache in the past years. After trying every imaginable work-around to keep iPhoto as the photo management software at casa Fechner, I came to realise that there is none left that classifies as stable and acceptable.
I like iPhoto and the basic functionality provided is really all we need. Neither my wife nor I am a photo nerd and we just want a simple solution to manage the usual family and vacation snapshots, share them with the rest of the family and create a nice printed album or card every now and then.
Certainly there are alternatives on the market, but none of them really solves the shared library issue or if they do it comes at the expense of our privacy.
I looked at Aperture and Lightroom and both offer more features than I need while still not solving my problem which I do not think is so uncommon. Picasa solves it, but seriously, do you really think I want to upload all my family pictures to Google? Share them on Google+? Tag faces? Use this clunky UI which is so far off Mac OS X like China is from freedom of speech? No way, Google, no way. I just don't trust you!
Back to Basics
It took me a long time to accept that I need to simplify my approach to address my most important requirement when it comes to photo management. Just like plain text format is the best and most future-proofed way for storing, syncing and sharing text files, plain image files in folders are for photographs.
You may have seen this solution as early as 10 years ago and it still works: Images in folders grouped by year and month of their creation. You can open/edit them from every application, you can easily shared them with any service you like and, using the unbeatable Dropbox, you can easily shared it with your spouse and other family members in its entirety. Most importantly: You can do it today, tomorrow and as long as JPEG is a readable format.
iPhoto Export and it's limits
While I have been fairly diligent with deleting images and only keep those that are really worth it, we still collected more than 10,000 images since we use digital cameras. All of these files are in iPhoto today and, with a few exceptions, grouped by month and year in iPhoto's events methodology.
iPhoto's export option allows you to get your images out without a lot of hassle, but there are a number of severe limitations. It is generally not suited for mass export. It's nice for a bunch of pictures, maybe an album or an entire event, but if you want to get your entire library exported in one go, it is not the first choice.
The most severe limitation of all is that iPhoto uses the current date — like in 'today' — instead of the date the image was taken (creation date) when exporting. That in itself becomes a killer further down in the process when you try to sort, file or filter by the date images were created.
Preserving meta data during Export with ProShare
On my quest to find a way to bulk export my iPhoto library while preserving the images' metadata I came across PhoShare which was previously know as iPhoto Export. PhoShare is developed in Python and an effective approach to get your stuff exported out of iPhoto.
If you want to preserve all metadata of the images, you will have to also download the EXIF tool that helps PhoShare to extract that information correctly.
When you try to first launch any of the two tools and you are on Mountain Lion, you'll likely have one of your first encounters with GateKeeper, Apple's new security layer to protect you from launching dodgy applications on your Mac.
GateKeeper is typically set to allow applications downloaded from the Mac App Store and signed applications to be executed. Neither PhoShare nor the EXIF tool fulfil any of the two requirements and we need to circumvent GateKeeper to install/launch them.
Option 1 is to go into 'System Preferences > Security & Privacy' and change the GateKeeper settings to allow applications downloaded form anywhere. You can do that as long as you remember reversing that setting later to protect yourself from any malware or other ugly things.
The second option is to bypass GateKeeper for only these two applications and it is more straight forward than you think. Just right or CTRL-click on the application icons instead of double-clicking them. Select 'Open' from the contextual menu and confirm in the following dialogue that you'd like to open the application even though it's not signed.
Setting the Export Scope
Once all is done PhoShare will start and present itself with a truly bare bones user interface which does its job just fine.
The first tab allows you to select the iPhoto library you want to export - in case you have more than one or it is in an 'unusual' place such as an external hard drive.
If you do not intent to export your entire library you can use regular expressions to match pictures by Event, Album or Smart Album name. Click the 'I' icon in PhoShare for instructions and some examples.
The best part of PhoShare is that you can dry run your export before doing it to see if all required images are matched and if they get exported as desired.
You can, of course, select the folder to which you want to export your images to. There are also various options of how to go about the exported files. For our simple purposes you will not need any of the options and you can select any suitable export folder which does not (yet) need to be on your Dropbox.
There are lots of choices how you use naming templates for your exported images including options to create sub-folders. I have tried a few times to see if PhoShare would create the folder tree (year/month) I want, but never got it to do it. It also refuses to export the images flat into the destination folder. Hence you can leave the standard name template for folders or do what you'd like as we'll need to work around this later anyway.
The 'I' button will provide explanations and examples of naming template variables available for your file names and captions.
On the third and final tab of PhoShare you can define which Metadata you'd like it to export. This is a crucial and important step in the process.
At least you want to check the standard metadata which includes the true creation date of the picture and some other handy data. PhoShare also allows you to export GPS data and faces recognised by iPhoto, if available.
PhoShare uses the OpenMeta tagging standard to add some of this metadata to the exported files.
Remember that you need to have the EXIF tool installed to make sure the metadata export is successful.
Now you can dry run and export your iPhoto library. Be aware that the size of your library determines the time it takes. With my 10,000+ images it took nearly 2 hours to complete.
Sorting and filing your pictures using Hazel
What we will now end up with is a number of sub-folder in our defined export folder containing the actual images. Names and metadata have been exported as configured and to make the Hazel-based sorting of the images into the final folder structure on Dropbox as easy as possible, we now need to get all images out of the sub-folders and flat into the main export folder.
Using the Finder this is much easier than you would think. Just start the below search while in the export folder and it'll match all images in any of the sub-folders.
Select them all and copy them into the root of the export folder by dragging and dropping them into it. Note that if you had videos in your iPhoto library that have been exported as well and you will need to search and match the separately. Delete the empty sub-folders once you are done.
Sorting the Images into the final Structure
This is the last step of the process in which we will use NoodleSoft's Hazel to help us with an otherwise very laborious job (and who wants to do that, really?).
In essence we will create a Hazel rule for the export folder, in which we now have all our images on root level, that moves each of them to the target folder on our Dropbox and sorts them into a folder structure based on the year and the month each photograph was taken.
Simply add the export folder to the Hazel preference pane and create a 'Sort Images' rule for it. You can delete both of them once the job has been done.
The 'Sort images' rule looks as follows.
There really is not much magic to the rule, but to edit the naming patterns of the sub-folders to something useful.
For the top-level folder we just want the year the images have been taken.
The below folder should be the month of the creation date. Using a combination of the month number and the month name keeps a sequential order and makes it still easy to navigate.
Hazel will now work away and move all your photos in neatly organised folders on your Dropbox. Depending on the number of images exported and your internet connection this process may take quite some time until everything is filed and synchronised with the Dropbox cloud.
The simple magic of Dropbox
Now that you have one of the simplest photo storage and management implemented — just like what you had 10 years ago — the magic of Dropbox will do the rest.
- The images will be available on any computer you want
- Access and show them through the Dropbox app on your iOS device
- Share URLs to single images or entire folders with a few clicks of your mouse (or trackpad)
- Edit images with any application you like
- Use the web gallery function of Dropbox to share images with style
- Upload and share images on any social media site/service you want with whatever tool you choose to use
- Have the first component of a solid back-up strategy for your invaluable memories (you should have at least another local backup, possibly a offsite one as well)
Sometimes the simplest solutions still prove to be the best. I cannot rule out that I might flip back to iPhoto the day Apple has the whole library sharing issue sorted and iPhoto generally performs better with large libraries, but for now I simply love my Dropbox based photo management.