You’ll have to bare with me on this post. It isn’t about Keynote, it’s about all of Apple’s software, and it’s pretty long. See, I had this amazing thought the other about where Apple could be headed with all the technology they have now. I also might gripe about about where some of their apps are now, just to balance everything out
Groundwork for a new core functionality?
Let’s start with iWork and iWeb. Notice anything similar? Yep, all three apps are based on the same object/xml engine. I can almost guarantee that we’ll see more apps based on this engine in the future as it’s just makes sense. But take a moment and think about where this could go. Any Apple app that needs layout tools could use this engine, and to take that further, Apple could include something like Core Layout or Core Objects in the OS, giving ANYONE the ability to add this stuff into their own apps, complete with copy and paste abilities. Heck, they could even include some sort of import/export functionality, making their own open document format. Got a layout in one app and want it in another, just copy and paste the items from one to the other, or save and import.
Now, this would probably require Apple to beef up the engine a bit more. You still can’t make objects with holes in them with the tools in the current apps, though the xml schema can support them (check out the svg2key command line tool that can make Keynote objects with holes in them). The scheme even includes support for multi-color gradients (as in, more than 2), which you also can’t create in any of the current apps. Apple actually built in quite a bit of support for things they haven’t turned on yet.
Apple, are you paying attention?,
Okay, so why haven’t we seen this show up in more Apple apps? I have no idea, but it makes me wonder if some of the departments never take a peek over into other departments. I mean, if you were working on a new Apple app, and you knew you needed a layout engine, wouldn’t you call the iWork guys and see if you could “borrow” theirs? While it is good to see that new apps are starting to be built on this engine (first pages, then iWeb), it’s the current apps that really need an overhaul.
Take a look at an app like DVD Studio Pro and you can see it really needs something like this. Anyone who’s ever used even the newest version knows the actual layout tools are total crap. You can’t create any actual objects in the app itself except text. Other objects or shapes, buttons, etc must be imported or added to your objects library. On top of that, actually laying things out is a lesson in frustration. In most apps, when you want to select several things, you can simply draw a shape around them with your cursor and they will all be selected. In DVD Studio Pro, as soon as you click and drag on your menu background, the cursor creates a new button (and don’t get me started on the terrible performance the app has in layout mode). This app just screams out for the unified layout engine that Apple seems to be building. The ability to make shapes, mask images with shapes, etc, would be a whole new world for menu building. On top of that, you could likely take a Keynote slide and just copy/paste it onto a menu in DVD Studio Pro.
In fact, all of the Pro apps could benefit from a unified layout engine. Motion sort of has its own tools, LiveType is a mess really, when it comes to shapes (more like DVD Studio Pro). I can’t see Final Cut Pro getting this treatment, though it might be nice to have something other than a rectangular slug to make shapes with. They could add this to Aperture and give you better book layout tools right in the app, and I suppose if you do that, you wouldn’t want to leave out iPhoto (though then you open up the ability to really mess up a book, which is bad for a consumer app).
Amazing Cross-app Integration
Going even further down this road, you can see an amazing future ahead. If Apple made this engine AND the effects engine in Keynote system wide, you could feasibly open and play Keynote files in the QT player the way you can with LiveType and Motion documents now. This could lead to more advanced things, like the ability to open a Keynote project directly in DVD Studio Pro. Think of it, you want a full working, interactive presentation DVD, and all you have to do is open your Keynote file in DVD Studio Pro and tell it what you want to do with it. DVD Studio Pro then makes a track from it, complete with nav buttons (which can be currently be created in DVDSP with a little trick using the subtitle track). No export to Quicktime needed, no special chapter stops and subtitle buttons to create, it’s all done for you. You might even be able to drop a Keynote file onto the timeline in Final Cut Pro, again, the way you can with Motion and LiveType projects.
Apple could even create more new apps, such as flow charting and outline apps (and of course they’d get charged with ripping off the Omni guys in the process, but that hasn’t bothered them in the past). Having the same engine as Keynote would mean easy movement between apps. The outliner app could simply read the xml from the Keynote file and ignore the layout styles, just letting you edit the outline that the slides are based on. They could also build my dream presentation app, which I’ll describe in my next blog entry.
Attracting Developers
So what are the other benefits from a system like this besides amazing apps and powerful integration? How about attracting Developers? If you’re a programmer and you know that OS X allows you to create an app with audio, video, photo editing AND layout and design tools, plus possibly a document scheme, wouldn’t you be a bit more inclinded to at least give it a good look before going to Windows? And when you give a developer access to the same stuff that Apple has access to, you sometimes get similar applications, but with different interface twists. This means, that while Apple might “steal” ideas from some developers, there’s potential for a lot of new developers to “steal” some ideas back and make their own take on basic apps. There are already apps out there that give you a different front end on Address Book, all the while tying into mail and ical (CRM4Mac is one I can think of), so we know there’s room for variety in the Mac world, giving programmers better tools means they’re more likely to attempt adding to that variety.
In Conclusion
Okay, is your brain hurting? Mine is. But the possibility of all this gets me excited. I just hope Apple sees it. I hope this is all part of Steve’s big plan to dominate in the coming years. Even though Apple is a hardware company, the best way to attract people to your hardware is to attract them to your software. They already know this…but if they continue to keep this in mind, I can’t imagine them not at least looking at the path I’ve outlined here at some point in their planning. It just makes sense to me. I hope it makes sense to Apple.