Apple like Microsoft?

Sep 15, 2006 — Whitney Young

iTunes 7 was released a few days ago as I'm sure many if not most Mac users are aware of. It's a pretty nice upgrade in terms of features. Nothing all that exciting, but some nice new visual sorting/searching techniques. The flip through album covers feature is cool, and iTunes finally is able to look up album artwork which is nice. I'll no longer have to look add it myself.

Ok, so what's with the title? Well I've been a Mac user for a long time. I like the consistency of the OS. Having all of my applications look and feel the same is really nice. Apple's done a great job keeping their applications about the same over the releases. Aqua started it all and then there was metal that followed and contrasts the aqua feel nicely. iTunes 6 had this new "plastic" (as some have coined it) look. It took a while to get used to, but it still bothered me a little every time I looked at it. Don't get me wrong, it looks nice, but it looks different from all of the other brushed metal apps.

iTunes 7 rolls around and what do they do? They take it a bit farther and add strange looking metal scroll bars. Again, they look nice, but they're different. They're a lot different. The table headers also look different, and the selection in the source list is way different from any other application. Again, they all look good, but they're different. iTunes has a history of straying away from the HIG, but since iTunes was ported to run on Windows, too, it seems to be straying farther and farther away.

What's the big deal if it looks good? The big deal is two fold. First, consistency is key in an OS. I like Gnome more than KDE because they are working hard to make the OS consistent. It's not as easy to look at as other OSes, but it will probably get there one day (a lot of people love the look, but OS X is a lot nicer in appearance in my opinion). iTunes takes a little away from the consistency of OS X with this sort of change. It's just a little, but it's enough to inspire third party developers to try to use a similar interface. That leads me to my next point and the real point of writing this.

There are a bunch of places on the internet where you can find "plastic" tutorials so you can make your application look like iTunes 6 (or was it 5 when they first made the plastic look... doesn't matter). I'll assume that there will be things popping up on how to replicate the iTunes buttons now (I know I saw some in the past for "plastic" buttons) and ways to replicate the scroll bars and all of that. Apple really thinks that they have a superior product to Microsoft. I think that at this point they do. I think that as they become more popular, though, they need to be careful. They're starting to follow in the footsteps of Microsoft, though.

Third party developers can use Apple's Cocoa framework and extend it all they want. The less they have to extend it, though, the better. Any extension of the framework (UI related specifically) leads to an out of date appearance at some point in the future. A developer might want their application to look like iTunes now, but if Apple decides in 3 years that they don't want to use that "plastic" look any more, then the third party developer has to change the look of their application, too. But a lot of times the application might not be in development any more. If they hadn't extended the framework, then their application would most likely use the new look and feel, but if they had, then it wouldn't. If you're a developer this should make a lot of sense.

Microsoft has done the same sort of thing. They allow for their ribbons to be "torn off" in Office, made into their own free floating panels, all sorts of cool features. The newest version of Office even included some really fancy looking and neat stuff, but the last time I worked with Microsoft's frameworks, there was nothing that allowed you to do anything like that. Microsoft used a Multiple Document Interface (MDI) for a long time in Office and instead of making all applications that are that type (MDI) perform the same way, they extended their own frameworks to make it work. Third party developers used this as well and a whole slew of MDI apps popped up. It might have been cool at the time, but the MDI thing seems to be depreciated. Few applications that Microsoft makes use the MDI interface any more. Visual studio uses a nice tabbed interface (that Microsoft doesn't provide for people) that is a lot nicer to use than the MDI. Why didn't they make their MDI specification say that it should really only be used for multiple documents and not for anything else. Then they could easily switch all MDI apps to a tabbed look in the future. Don't rely on the layout of the MDI interface, just use it for multiple documents (like text documents). Not too hard to add a note like that. Then you have the freedom to change the layout in any way you want in the future.

Apple could have done the same with brushed metal. Don't rely on colors, or if you do, use these colors from our NSColor classes. Use + [NSColor backgroundColorForWindowWithMask:] to get the average color of a window. It's a shame to see this sort of thing happen. The Cocoa framework seems to be built so nicely. It's fun to use because it does so much for you. I just don't want to see things continue in this sort of direction. I hate creating my own NSCells to match other parts of the OS. They should be provided for me. If they change in the future, I don't have to worry about it. Apple clearly has the code that does this. It wouldn't be hard to roll out the code in the minor OS upgrades. Tell the developers not to rely on the types being there. Tell them to use them with caution. Tell them that they might not look right for people who aren't using an up to date OS. I don't care what they tell me I can and can't do with it, but it'd be nice to have it.

It would make the OS a lot better for everyone as the years pass. It's not hard to do, either. Open source might have an advantage as things progress. Though I haven't looked at Gnome's API, I'm sure that since it's open developers don't really worry about having access to the new, cool things. They can always just ask to make it public.

That's all for now. I'll keep using iTunes. I'll keep getting angry every time I look at it. I'll keep thinking that a lot of the things Apple does are really cool. I'll keep wishing that Gnome looked as nice as OS X. I'll keep developing for OS X. I'll keep waiting for Apple to add all the little niceties that they have to their framework.

Tags: Apple, Cocoa, iTunes, Microsoft

Comments
Ricky Courtney Sep 24, 2006

Apple seems to use iTunes as a testbed for the usability and functionality of new interface designs. My best theory is that this is a preview of a new "look" for Leopard.

I suggest reading a few tidbits from TUAW:

"Aqua is dead, long live Aqua!" http://www.tuaw.com/2006/09/12/aqua-is-dead-long-live-aqua/

and "AguaT brings the Aqua back to iTunes 7" http://www.tuaw.com/2006/09/22/aguat-brings-the-aqua-back-to-itunes-7/

Whitney Young Sep 24, 2006

It doesn't change the fact that it encourages third party developers to stray from what they're given. It's a bad practice. If Apple wants a test-bed, then they should have people come in and test their new designs.

[email protected] Oct 2, 2006

Most important to me is, does senuti work, and work the same as before, with iTunes7? There's other software out there that reportedly does not do so (such as iPodRip).

Whitney Young Oct 2, 2006

I tested with my iPod and it works fine. I've yet to hear of it not working either, so yes.