Apple’s iPhoto is a decent program for managing your photos.
Not fantastic, not terrible, but adequate.
There are a few glaring omissions, things that seem like basic features that are missing from iPhoto.
No MD5 tracking
This sounds complicated, but MD5 is a common method for “fingerprinting” a file. Comparing MD5 fingerprints can tell you if a file is a duplicate. iPhoto does some sort of basic comparison to prevent duplicates, but it fails so often it must be only looking at the filename or timestamp or something. It’s badly flawed, and essentially broken.
This means if you bring in a lot of photos you have built up, you will probably have tons of duplicates in there. There are third-party solutions for this, but nothing built in to iPhoto.
No way to merge Libraries
iPhoto stores all the images in a “Library” – which is essentially a directory structure with some XML data. But for some reason, iPhoto has no way to merge libraries. So if you had iPhoto on one computer, and then got a new computer with iPhoto, you can’t just combine the old Library into the new one. You can choose to view one Library or the other by holding down the option key when you start iPhoto, but you can’t combine them. Sure, there are hacks and third-party apps, but that just accentuates the basic flaw: when choosing “import”, iPhoto doesn’t recognize its own file format (the Library).
No auto-rotation of photos
Most modern digital cameras have a sensor to detect the orientation of the camera when the photo is taken. So if you tilt the camera sideways to get a vertical shot, the image is tagged in the metadata as being rotated. Yet iPhoto ignores this, meaning you have to manually go through all your photos and rotate them. Lame! The metadata is there, use it!
A couple of these things (duplicate detection and auto-rotation) seem to *sometimes* kick in (perhaps when you import from a camera, but not when you import from a HD?), but not with any reliability.
Honorable mention:
No Quicktime Quicklook
You can use space to view a photo in iPhoto, but to view a quicktime in iPhoto, you have to double-click it.
I don’t think MD5 comparison would work that well either, knowing programs like to mess with EXIF data.