Last week, I had a great idea on the train. This week, Apple released iTunes 9.
These two events are related. Bear with me.
I don’t really like iTunes. It’s slow (terribly, painfully, unresponsively slow), ugly and the music glitches when you play it. But I have an iPod and listen to various podcasts, so necessity wins.
And I use it on the train. Usually minimised into the little taskbar mini-player, which is fine. But then I got Windows 7 envy. I wanted thumbnail toolbars and jump lists, just like Windows Media Player.
Cue my great idea. I remembered that iTunes has two different types of SDKs – the more well known COM based SDK, which allows out-of-process control of the application, and a much more interesting Visual Plug-in system. This is a very low level, C-based API for loading dll’s directly into iTunes. It’s mainly intended for creating graphical visualisations of the currently playing tracks, but it can also (rather intriguingly) be used for “device” plugins, which you need to sign an NDA for.
And of course, once you’ve got a dll loaded into the process you can do anything you want, such as, oh, I don’t know, support thumbnail toolbars and jump lists. Native code and the latest whizzy Windows 7 features. What a fun little project.
Until this week, when Apple released iTunes 9.
It’s prettier, looking much more at home in the washed out, over-exposed Windows 7 palette, and astonishingly, it’s faster. Much faster. Significantly faster. I can navigate between my music library and my iPod without having to go for a cup of coffee. Hooray. (The music still glitches, which is unforgivable, but it’s much better. It’s almost winning me over.)
Oh yeah, and they’ve added thumbnail toolbars and jump lists.
Thanks Apple. Thanks a bunch. Spoilsports.