Thursday, September 17, 2009 |
14:19 - iTunes 9: The SQL
http://finerthingsinmac.com/post/190245902/smart-playlists-in-itunes-9-have-become-s
|
(top) |
Oh hell yeah:
Smart Playlists now get nested rule groups... which database people know as parenthetical clauses.
Where once all we could do was the equivalent of:
SELECT * FROM Music WHERE (A=1 AND B=2 AND C=3); SELECT * FROM Music WHERE (D=4 OR E=5 OR F=6);
We can now do this:
SELECT * FROM Music WHERE (A=1 AND B=2) OR (C=3 AND (D=4 OR E=5)));
It was always possible to get the same result by making multiple playlists and combining them in an additional playlist with WHERE Playlist=A1 AND Playlist=A2 clauses; but this is far more direct and conducive to the playlist panel's neatness. Granted that this makes Smart Playlists a little less easy and intuitive, but it's implemented in such a way that you can figure it out with a few clicks (the magic's all in the little "..." buttons at right).
I've always loved iTunes as a visualization of a queryable database made as user-friendly as possible, thanks to its fairly monolithic data set and schema (e.g. music). This just further shows that the people behind it still value that aspect of iTunes every bit as much as the flashy glitzy store-type features and gimmicky browsing options.
(Incidentally, between Finer Things in Mac and Adobe UI Gripes, you can get your daily recommended doses both of what to do in software design, and what not to do.)
|
|