iTunes is an Unholy Monster of an Application
December 13th, 2008iTunes is one of the worst applications Apple is currently shipping.
iTunes does a lot. Far too much for one program. At the very least, iTunes’ myriad features should be separated into a media player/store and a sync utility. I would argue it should be split into a music player/store, a video player/store, and a sync utility. One could successfully argue that iTunes should be split into a music player, a video player, a music/video store, a podcast manager, an internet radio player, and a sync utility.
The problem here is that if you need only one of these functions, you are stuck with all of them. If you need all of them, they step on each other’s toes. Nobody wins.
iTunes started as a music player. Nothing more, nothing less. The majority of iTunes users have never used iTunes 1.0, which is a damn shame, because iTunes 1.0 was an elegant, intuitive, fully featured, cruft-free media player. iTunes 2 brought iPod support, and given that iPod was nothing but a music player when it came out, this made complete sense. iTunes 3 brought Audiobooks. Then Apple released iTunes 4, and the bloat-fest began. It was incremental, so few noticed it, but iTunes 4 saw the addition of the iTunes Store, DVD burning, shared music, AirTunes, video playback, party shuffle, and photo syncing. 5 and 6 came and went, but iTunes 7.3 brought iPhone support, which is when I finally decided that iTunes officially sucks. While we’re at it, iTunes is still Carbon. I know, I know, Cocoa does not automatically mean UI awesomeness, but it sure makes it a lot easier to design a good UI.
The haphazard melding of so much functionality is clumsy. iTunes leaves a lot to be desired as a video manager and player. iPhone syncing is far too complex a task to be squeezed inside what should be a very simple program. The end result is a program that does too much, and does most of it poorly.
The most frustrating thing about this is that Mac users already have a perfectly good syncing utility in their applications folder. When iSync was released, iPod had already been syncing through iTunes for two years, and at that time, iPod was still just a music player. Today, the future of iPod is iPod touch, and the majority of iPod touch functionality is unrelated to media playback.
iPhone and iPod touch are pocket sized computers. Managing data and applications on a small computer through what is fundamentally a media player makes no sense at all. And the less said about iTunes’ UI inconsistencies, both with Mac OS X and within iTunes itself, the better.
Things are (unsurprisingly) a lot worse on the other side of the fence. iTunes for Windows is just as bloated as it’s Mac counterpart. It doesn’t adhere to what few de facto Windows UI guidelines there are. It uses a crappy port of Software Update for updates, which also shoves Safari down your throat, an even worse Mac-to-Windows port. Finally, it crashes almost as frequently as Windows itself… and given how prone Windows is to crashing when other programs crash, I’m sure that iTunes is responsible for more than a few (whereby “few” I mean “a metric fuckton”) of blue screens.
Exposing customers to such poorly designed applications is not a good way to convince them to switch to your platform.
It’s funny. [iTunes drove Audion into obscurity](a href=”http://www.panic.com/extras/audionstory/” target=”_blank”) and eventual retirement because iTunes was so much simpler than Audion. Today, the never released Audion 4 would be simpler than iTunes:
Dear Panic: bring Audion back. Give it a fantastic and minimalist UI in true Panic style. Give it the ability to read my iTunes library file so I have a single music library, because I would still need iTunes for all its other functionality, and I’m not going to manage two libraries. Make it small and fast. Use Quicktime so it can play protected audio files. Charge for it. Customers who place importance on the user interface are typically willing to pay for it, and that’s what this really is: a better interface for iTunes.
Dear Apple: At the very least, revamp iSync, port it, (and do a good job this time) and split all device management functionality away from iTunes. iPod, AppleTV, iPhone. Everything. I want all my syncing to happen in the background. The bottom line is, fusing two sets of unrelated functionality that frequently (if not constantly) must run in the background was a terrible idea from the get-go. It was understandable when it was just music. This is no longer the case.
Dear Mac Developers: All the parts you need to do this are there. Aurora proves that reading the iTunes library and playing FairPlay-protected files is 100% possible. In fact, I cant imagine this functionality coming from anything but the Quicktime framework, so you don’t even to think to hard about the audio decoding. You only need to worry about the interface and making it as fast and small as possible. I say only not because I belittle either of these tasks - in fact, these are two of the hardest and most time consuming tasks when it comes to software design. The point is you don’t have to worry about the audio decoding, because Quicktime takes care of it.
Dear Me: Learn Objective-C and Cocoa.
I see neither Panic nor Apple doing this. Panic has moved onto bigger things, and is about to encounter serious competition where they previously had none.1 Apple doesn’t appear to care. The above requests are listed in order of likeliness, lowest to highest. I have confidence in the Mac Dev community that someone could pull this off; I simply believe that nobody has seriously considered it, because iTunes is an 800lb gorilla.
“Do one thing, and do it well.”
It’s the UNIX philosophy, it’s right, and it’s not up for debate. It’s not like this is a secret; I’m sure that every single programmer and manager working for Apple knows this rule. Why ignore it?
iTunes is textbook software bloat. Apple is supposed to be above this kind of shoddy software design, but it doesn’t look like anyone cares.
- Audion vs. SoundJam Part II, anyone? «
December 29th, 2008 at 10:33 am
With Songbird and Amarok coming, there will be some competition. Perhaps not native OS X, but at least something…