OK so now that WWDC 2006 is over and I’ve unpacked all my liquids, gels, and lotions from my checked baggage, its time to check out (from whatever Apple has publicized of course) if my guesses came true or not. Actually, they weren’t really guesses, more of like “please, Apple, if you really love us developers, this is what you’ll give us.” And it turns out that Apple does love us developers!

Now, I won’t mention anything about new widgets, because it doesn’t seem like any of that is public. But I’d say that’s in flux anyways. So we’ll have to wait until later to see what widgets actually do get created. And really, we can build many of those widgets ourselves and if we get organized, we can create and widely use enhanced widgets like Rainer’s excellent RBSplitView.

Rainer by the way wins the not-so-coveted Apple-took-your-brand-name award this year. Stunt Software’s PhotoBooth took home that prize last year. Apple at least chose a different capitalization, using Xray for the amazing all-the-performance-and-testing-tools-you-need uber-tool in a GarageBand-like interface. Rainer’s XRay (note the capital “R”) is a utility for looking deep into files and folders on your Mac.

On to the good stuff that will make Mac developers’ lives easier:

  1. An easy way to diff two nibs
  2. Yes! “… Interface Builder 3.0 makes localization and diffing easier.”

  3. Make a toolbar in IB
  4. I can’t say either way if this is in there, but note that “Interface Builder 3.0 lets you drag and drop even more luscious behaviors into your application.” I’m very happy that Apple has finally decided to update Interface Builder, which needed a revamp.

  5. Refactoring! Refactoring! Refactoring!
  6. “And you can include your NIBs in global refactoring tasks.” I’ve been doing refactoring for a long time, all the way back to the late 90s when I used the Smalltalk Refactoring Browser, which I think pioneered the whole concept back at UIUC. For non-developers, this is a way that code can be restructured for better maintenance and readability.

  7. Smart correction of bugs (like in Eclipse).
  8. I don’t think this is in there yet, but Apple is taking steps to get there: “iChat-like message bubbles provide a snazzy way to read build errors, breakpoint definitions, and debug values — all displayed inline with the relevant source code, so you know just where you your colleagues went so very, very wrong.” Funny. This is probably the nicest looking error bubbles I’ve seen. It’s sort of interesting how Apple can make even developer tools seem cool.

And there’s lots more… the big thing being Objective-C 2.0, which now features garbage collection. Hallelujah! I really missed this from Smalltalk and Java and Ruby, but unfortunately most of us won’t be able to take full advantage of this until we’ve almost all migrated to Leopard.

(All of the quotes are from Apple’s Xcode 3.0 sneak peek.)