Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Even when iTunes was OS X only it felt awkward and unlike most other OS X programs. The problem is that they bought an OS 9 MP3 player (SoundJam) and have been hacking at it for years without doing the rewrite needed to get things like platform-standard UI, non-blocking I/O, etc. Any time you see a modal dialog, remember it started out on an OS which barely multitasked. Cross platform isn't an issue - Windows has equivalents for every single thing on your list, whether native or something they already ship like Apple Software Update.

As far as package management goes, the problem here is that Apple simply does not care. The Mac sysadmin community has been asking for better solutions for years but it's just not a priority for Apple - even App Store updates, which theoretically are more important, have been broken[1] for something like the last 4 major iTunes releases but since it's merely clumsy and doesn't prevent sales it obviously hasn't been as important as a new version of some non-standard window controls.

[1] The process is now: click on Apps. Click on "Get Updates". Click on "Get All Updates". Wait. Dismiss erroneous "The information on this page is outdated and must be refreshed" dialog. Click on Apps. Click on "Get Updates". Click on "Get All Updates". This from a UI powerhouse? The phone almost gets it right except for the gratuitous password nag.



Indeed, it did start out as a part of OS9. However, I think the Principle of Charity applies here—Apple generally employs good engineers, and they got everything else native-ized, standardized, POSIXized, etc. for 10.0. There must have been a particular reason for iTunes being the one thing that got left out of HIG-ification in 10.0 and every update since, and I propose that that particular reason is Windows support.

Yes, Windows does have hooks to add functionality—but hooks aren't enough. The reason Apple could remove components from iTunes was that it could, itself, integrate them into all shipping copies of OSX. Apple doesn't decide what drivers and plug-ins get shipped with Windows, so anything they'd install would be third-party and after-the-fact (which is what already happens: e.g. the CD burner driver bundled into the Windows iTunes installer.) You can't slim down Windows iTunes because you have to ship all the programs that make up the functionality of iTunes, whether modularly or monolithically. However, you can slim down OSX iTunes if you just start saying "this will be an OS feature, not an iTunes feature."

Also, on a completely unrelated note:

> The phone almost gets it right except for the gratuitous password nag.

I've always taken that to be a sudo escalation prompt. You don't want your kids picking up your phone and buying things on it.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: