In the Spotlight

Posted on August 29, 2007 by Brian Webster
Filed Under News | 3 Comments

Not OS X’s Spotlight, this time at least. No, I’m actually being featured in the MacTech Spotlight in this month’s issue of MacTech magazine! It’s a monthly feature they do where they do a Q & A with a different Mac developer each month. So, if you pick up a September copy of MacTech and flip to the back, you’ll get to see my ugly mug along with paragraph after paragraph of my infinite wisdom*. I’m sure I’ll be getting the call to go on Letterman any day now…

*actual size of wisdom will vary, some restrictions may apply, void where prohibited

iPhoto Library Manager 3.3 released

Posted on August 20, 2007 by Brian Webster
Filed Under iPhoto, News, Updates, iPhoto Library Manager | 5 Comments

I’m pleased to announce that iPhoto Library Manager 3.3 is shipping today, with full support for iPhoto 7! (On a terminology note, I’ve decided I’m going to at least try referring to this new iPhoto as “iPhoto 7″ and not “iPhoto ‘08″. All of Apple’s docs seem to use the ‘08 nomenclature, but trying to use it myself, it just sounds/looks really weird, so I’m going to stick with “iPhoto 7″ unless it causes mass confusion and riots.)

The update is free for all users and can be downloaded from the main iPLM page. iPhoto 7 support is the major feature of this release, so functionally speaking it’s mostly the same as 3.2.6, with a couple of notable exceptions.

  1. The first good news is that, as a result of changes in iPhoto 7, album hierarchies can now be preserved when copying between libraries! This has been something I’ve wanted to do for a while, but just wasn’t able to in previous versions, so for iPhoto 7 users, that will be nice to have.
  2. I’ve made the look of the album list mimic the look of the iPhoto 7 album list, including the background color and separate sections with titles (you can click here to see how it looks). Older libraries will still be displayed with the plain look.
  3. Unlike in iPhoto 6, the list of events (formerly known as rolls) can now be sorted by their date in the iPhoto Library Manager window. This makes it somewhat easier to track down a particular event you’re looking to copy to another library.

So, there it is! I’ve of course tested the bejeezus out of it, but if anyone has issues that crop up, drop me a line at support@fatcatsoftware.com.

iPhoto 7/’08 observations

Posted on August 9, 2007 by Brian Webster
Filed Under iPhoto, Development, iPhoto Library Manager | 14 Comments

I’ve only been playing around with iPhoto 7 for a little bit now, but I’ve found some interesting nuggets on how things have changed in comparison to iPhoto 6. And yes, the official version number for the new iPhoto is 7, even thought it’s part of iLife ‘08. Thanks for not making things totally confusing, Apple. *sigh*

Events are the new Rolls

As I suspected might be the case, it appears that the new Events feature in iPhoto 7 is, structurally speaking, a rebranded use of Rolls from iPhoto 6 and earlier. In fact, I don’t see the term “roll” used anywhere in the iPhoto 7 interface anymore. I’m happy with the new Events interface, as it is a marked improvement and much more useful than rolls were under iPhoto 6. At the core of things, they basically work the same, but there are a couple important differences in behavior.

Like rolls, events are mutually exclusive, so every photo belongs to a single event, no more, no less. However, in iPhoto 6, every distinct import was grouped into a single roll. In iPhoto 7, a single import can now result in multiple events, depending on what settings you have in the preferences, and the dates of the photos that were taken.

Library folders are now packages

In previous versions of iPhoto, your library folder was just that, a folder. It appeared as a normal folder in the Finder, and you could dig through it and mess with things just as easily as any other folder. In iPhoto 7, Apple has decided to make iPhoto folders into packages instead. A package is simply a folder that doesn’t appear as a folder in the Finder. Most applications are actually packages (or rather, a special type of package called a bundle), and many other things, from plugins to documents are also marked as packages. You can still see what’s inside a package by control-clicking it in the Finder and selecting “Show Package Contents”.

This may cause a little terminology confusion in the short run, as the term “iPhoto library folder” is used fairly pervasively, but I think in the long run this is a good move by Apple. Countless people have unknowingly borked their iPhoto libraries in various ways by moving stuff around inside the library folder. This is actually not unreasonable behavior, but iPhoto reacts very poorly to having its library messed around with. So, my basic reaction is, “What took them so long?”.

For those curious in the technical details, iPhoto libraries don’t require an extension, as is the norm for most applications that store their data in packages, but instead have their “Is Package” bit set so that the Finder displays it as a package, even without an extension. It also sets the type/creator on the folder so that the library is displayed as a pretty icon in the Finder, as well as a Contents/PkgInfo file containing the same information.

Auto import folder

I don’t see this mentioned anywhere in the documentation, but there is now a new folder inside the library named “Auto Import”. It appears that how this works is, if you put some photos into the Auto Import folder, then the next time you launch iPhoto, it will look in that folder and import any photos it finds there. It does delete any photos in that folder after importing them. There is also an “auto import” Applescript command, but calling it doesn’t seem to do anything, at least not as far as I can see. I have a feeling this may have been a feature that was pulled out late in development, and they just forgot to remove the Applescript command and the actual folder inside the library.

New keyword interface

Another iPhoto release, another new interface for assigning keywords. By my count, this is at least the 4th different interface iteration for this feature in iPhoto. I also think this is the first time that the new interface has actually been an improvement over the old one.

iphoto7_keyword.png
In iPhoto 7, you can actually edit keywords directly inside the main viewer. This is quite cool, as it will autocomplete existing keywords as you type, and if you type a new keyword and type a comma, it will automatically create a new keyword with what you typed. This is a vast improvement over iPhoto 6, where you had to go into the preferences window just to add new keywords to your list.

But how do you edit the keywords of multiple photos at a time? This actually took me a good while to find, as the info window no longer contains a tab for editing keywords as it did before, and the keywords pane/button no longer exists down in the lower left corner of the window. I eventually found it, under the Window menu, there is a “Show Keywords” item that brings up a window with all your keywords.

iphoto7_keyword_window.png

From this window, you can select multiple photos, and then click the keyword buttons to assign/unassign keywords to the entire selection. You can also drag keywords up to the “Quick Group” area above and assign one letter keyboard shortcuts to them. For example, if I have “n” assigned to the keyword “nebula”, anytime I have something selected in the main iPhoto window, I can just press “n” to add/remove the “nebula” keyword from the selected photos.

I think this is the first version of iPhoto that really has a good interface for assigning keywords. Don’t know what took them so long, but there it is. My only gripe would be to have a button available somewhere in the bottom section of the window to bring up the keywords window, as I can see many people never even realizing that it’s available. I was actively looking for it, and it took me a good couple of minutes to find it.

There are many other large and small new features in iPhoto 7, which I may go into in more detail later, but those are the things that popped out at me in the first couple of hours of playing with it. I’ll be posting more later with other nuggets as I find them.

iPhoto Library Manager and iPhoto ‘08

Posted on August 9, 2007 by Brian Webster
Filed Under Updates, iPhoto Library Manager | 21 Comments

Apple announced the release of a new version of iLife today, which includes an updated version of iPhoto. I don’t have any super-secret contacts inside Apple (yet!) that feed me advanced copies of iPhoto, so I don’t yet know what the compatibility status of iPhoto Library Manager is with the new iPhoto. In the past, the basic function of creating and switching between libraries in iPhoto Library Manager has been unaffected by updates, but the more advanced features such as copying photos and merging libraries has required an update, and I’m guessing that will probably be the case once again.

So, I’ll be getting my hands on a copy of iPhoto ‘08 as soon as I can, and I’ll have more information on what works and what doesn’t once I get a chance to play around with it some. For now, proceed with caution if you’re upgrading to the new iPhoto and use iPhoto Library Manager heavily, and I’ll be posting whatever info I find as soon as I find it.

Update: 8/9/07 The FedEx guy arrived today with my new copy of iLife ‘08! As I suspected, it appears you can still create and switch between libraries using iPhoto Library Manager with no problems. Also as I suspected, the following features of iPLM don’t work with iPhoto 7:

If you try to use any of these features, you’ll probably get a lovely looking error message along the lines of “*** -[NSCFDictionary setObject:forKey:]: attempt to insert nil key”. Nothing bad will happen if you try to copy stuff between libraries, it just won’t work. So, I’ll be working on getting these features back up and running, I’ll have more of an idea of a timeframe once I get more of a chance to delve into the details.

You’ll probably also notice that the album list might look a little odd after you work with iPhoto 7 a little bit, as there are some new album types that are displayed in iPLM with a regular album icon. Also, the roll list will not display roll names properly. This is all due to the new “Events” feature in iPhoto 7, which is basically a rebranding of rolls that actually makes them a useful and integral part of the iPhoto experience (you can read more about events/rolls and some other iPhoto 7 changes here).

Also, anyone who encounters specific issues with iPhoto ‘08, please e-mail support@fatcatsoftware.com with your issue, as that will be the best way for me to keep track of them and give a response.

iPhoto Library Manager 3.2.6 released

Posted on July 20, 2007 by Brian Webster
Filed Under News, Updates, iPhoto Library Manager | 1 Comment

I released a minor update to iPhoto Library Manager today, bringing it to version 3.2.6. It’s a free update from previous versions, and is mostly a bug fix release. The only new feature of note is that you can now click the header of the album/roll list to sort the albums/rolls by name. This is particularly handy with rolls when you are looking for a specific one, in which case the default sort order (the order in which they were imported) isn’t usually too helpful.

In case anyone was wondering, I have not actually been working on this minor update for the entire 4 months since the last one. I’m inefficient sometimes, but not that inefficient! I’ve been spending most of my time lately working on a brand new project. Details will be forthcoming soon, but for now let’s just say that it involves something rhyming with “iSwoons”…

Spotlight Browser

Posted on July 1, 2007 by Brian Webster
Filed Under Freeware, Development | 3 Comments

In some recent development work, I came to want to be able to easily display the Spotlight metadata for various files in the file system. There is a command line tool, mdls, that lets you do this, but using it was kind of a pain and not very user friendly. There are approximately one kajillion programs out there that do various forms of Spotlight searching, but I couldn’t find one that just listed the metadata for files.

So, I grabbed Apple’s SimpleBrowser example code, made some modifications, and thus was born Spotlight Browser! It’s pretty simple, it just displays a Finder-like column browser at the top of the window that lets you browse through the file system, then displays the metadata value that Spotlight has indexed for the selected file in a table beneath the browser. You can also drag a file onto the window or to the dock icon to make the browser jump to that location.

I figured other people might find this useful and decided to release it, along with the source code as a free download, which you can get here.

WWDC 2007

Posted on June 18, 2007 by Brian Webster
Filed Under Apple, Development | 1 Comment

Well, I just got back safe and sound from the week long Apple geek-fest know as WWDC. I hadn’t been to the conference since 2001, back when I was still a student going with a free pass provided by Apple’s student developer program. That was back in the heady days of Apple’s reemergence and the dot com bubble, when there were about 1/4 as many people, it was still held in San Jose, and Jamba Juice flowed like water…

Uh, what was I saying? Oh yeah, WWDC 2007! It really was amazing how many people there were this year, enough that it got me wondering if they’ll have to change venues in the future if attendance keeps growing like it has been. They couldn’t fit everyone in the room for the keynote, so lots of people had to watch from the overflow rooms, and there were also a fair number of sessions that filled up and threatened to violate the fire code.

The keynote didn’t hold many surprises, but Leopard still looks like it will do well once it’s released. My only gripe was Steve Jobs trying to pass off developing web apps for the iPhone like it was something spectacular. Sorry Mr. Jobs, your audience just isn’t that gullible. You can’t sell a Whopper and tell them it tastes like filet mignon. I understand why they wouldn’t be able to provide a full OS X based SDK yet, especially for the first release of the product, but I would have much rather he just admitted “Yeah, it’s not ready yet, but while we’re working on that, you can still write web apps for the iPhone. We’ll get working on the real thing right away though.”

The upcoming stuff in the real OS X is looking pretty sweet though, and I definitely learned a lot at the sessions. I found out that with Time Machine, it will xxxx xxxxxxx xxxxx xxxxx xxxxxxx xxx xx xxxxx and also xxxx xxxxxxx xxxxx xxxxx xxxxxxx. The Core xxxxxxxxx talk was my favorite though, where they had this really cool demo that made the xxxx xxxxxxx fly around over xxx xxxxxxx xxx and even if you xxxx xxxxxxx xxx xxxxxx x xx xxxxxxxxx xxx, it will still slice through that red ripe tomato! Oh, and did I mention that all the material presented at the conference is confidential? Yeah, bummer. But trust me, it’s cool.

So, after a week of sitting on my butt in uncomfortable chairs, I am glad to be back home, sitting on my butt in a much more comfortable chair. Now if you’ll excuse me, I have a Leopard beta seed to install… :D

How to copy your keyword list from one iPhoto library to another

Posted on April 26, 2007 by Brian Webster
Filed Under Tips & Tricks, iPhoto Library Manager | Leave a Comment

One of the key features of iPhoto Library Manager is that it will copy a photo’s list of keywords when copying the photo from one library to another. However, this only helps for keywords that are actually assigned to one or more of your photos. What if you have a large list of keywords, but some of them aren’t actually assigned to any photos in your library? How can you take that keyword list and duplicate it in another library? Here’s one technique that utilizes this feature of iPhoto Library Manager:

  1. Open the library whose keyword list you want to copy and choose a photo in the library. We’ll call this our ‘dummy’ photo. You can even duplicate an existing photo to use as a temporary ‘dummy’ if you don’t want to be modifying any of the existing photos.
  2. Assign every keyword in the library to the dummy photo (or at least every keyword you want to bring over to the other library). Note that doing this through the keyword pane in the lower left is a big pain in the butt, since you have to draaaaag the photo on to each keyword over and over again. Try using the info window (command-i) which has simple checkboxes, much better for quickly assigning multiple keywords to a photo. Or, if you’re running iPhoto ‘08, just open the keyword window (command-k) and click all the keywords there.
  3. Copy that photo over to the library you want to copy the keyword list to. iPhoto Library Manager will copy the photo over, then assign all the keywords in the list to the copied photo, effectively recreating the whole keyword list in the destination library.
    Copying a keyword list
  4. Now that the photo’s been copied and the keywords recreated, you can delete the dummy photo from the destination library. You can also return to the original library and remove all the keywords from the dummy photo, or just delete it if you made a temporary photo for this purpose.

Another similar technique, if you create new libraries fairly often and like to have a standard list of keywords in your libraries, is to create an empty library and use this technique to populate its keyword list, then just keep it around. Whenever you need a new library, instead of creating a blank one, just use the “Duplicate Library” command to duplicate this library, along with the whole keyword list. Now all your new libraries will start out with the same custom keyword list.

iPhoto Library Manager 3.2.5 released

Posted on March 22, 2007 by Brian Webster
Filed Under Updates, iPhoto Library Manager | 7 Comments

Version 3.2.5 of iPhoto Library Manager was released today. The biggest change was the addition of a new option to help with keeping track of duplicates when copying albums or merging libraries.

There has been an option for a while to skip importing duplicate photos, so you don’t end up with multiple copies of the same photo. The downside to this was that if you copied an album over to another library, but some of those photos were already in that library, then only the photos that were newly imported (i.e. the non-duplicates) would get added to the album after the copy was complete.

In 3.2.5, there is a new setting in the preferences window that will tell iPLM to add the existing copy of any duplicate photo to albums that get copied over. So now, whenever you copy an album, all the photos from the original album will be added to the copied album, regardless of whether they were duplicates that already existed in the new library or non-duplicates that were just imported while doing the copy.

To see the full list of changes, check out the release notes. You can download the update here.

Setting a default iPhoto library for importing from a camera

Posted on March 16, 2007 by Brian Webster
Filed Under Tips & Tricks, iPhoto Library Manager | 3 Comments

This is a question that has come up several times from various customers. You may frequently switch back and forth between multiple iPhoto libraries, but whenever you import photos from your camera, you want them to only go into a particular library. However, when you plug in the camera, iPhoto opens up with whatever library you happened to be using last, so you have to quit iPhoto, go back and switch to the right library, then open up iPhoto again, which gets to be a pain in the butt after you’ve done it half a dozen times. So how you do get around this?

Image Capture

Lurking away in the Applications folder, often overlooked and unloved, is a little application called Image Capture. This is a general-purpose app for importing image data from various sources, such as cameras, scanners, or devices shared over the network. In the preferences window for Image Capture, there is a setting that allows you to choose what application to open up when you connect your camera.
Image Capture prefs

Typically, this is set to iPhoto, and this is why iPhoto automatically pops up when you connect your camera. But we’re going to put something else there instead…

Applescript and iPhoto Library Manager

iPhoto Library Manager supports Applescript, so you can actually write a script that will open your preferred library for you automatically. We’re going to write such a script, save it as an application, and then tell Image Capture to open the script instead of iPhoto. (note: this script requires iPLM 3.1.1 or later to work correctly)

First, open up Script Editor (located in the Applescript folder inside the main Applications folder) and copy the following script into the editor window:

tell application “iPhoto Library Manager”
open library “Default Library”
end tell

This simple script tells iPhoto Library Manager to open the library named “Default Library” from your library list. iPLM will take care of all the logic of quitting and opening iPhoto as necessary, but of course you’ll want to type in the name of whatever library it is you want to import your camera photos into. You can test the script by clicking the “Run” button, at which point iPhoto should open up, displaying the library you specified.

Now we need to save this script and tell Image Capture to use it. Press command-S to save the script, making sure to save the script as an application from the File Format pop-up menu (see the screenshot below).
Saving the Applescript

You can save it any place you want, as long as you remember where you put it. Your Documents folder might be a good place if you don’t have any better location for it.

Hooking it up

The final step is to go back to Image Capture, open the preferences window, and select “Other…” from the pop-up menu that lets you select the application to open when attaching a camera. Navigate to where you just saved the script, select it, and click “Open”.

Now, you should be all set to go. Connect your camera, and iPhoto should pop open with the library you specified. iPhoto will probably bug you, asking if you want to open iPhoto when you connect your camera, to which you can reply “No”. If you don’t want iPhoto Library Manager to stay open after it’s opened the library, just add another line reading “quit” (without the quotes) before the “end tell” line in the script.

« go backkeep looking »

Feed