More iTunes Math 167
markmcb writes "OmniNerd once again digs into the math behind iTunes. The 5-star ratings in iTunes are actually stored in a variable allowing values from 0 to 100, with 20 = 1-star, 40 = 2-star, etc. Known to few, if you set a rating to 30 (manually), it will show up as 1 1/2 stars in the program's GUI. Matt Schinckel provides interesting statistical evidence showing that not only do non-whole, non-half values (e.g., 47) not increase the amount a song will play, but neither do the half-star ratings (with the exception of .5 star)."
How does it handle values outside the range? (Score:2)
Re:How does it handle values outside the range? (Score:5, Interesting)
Re:How does it handle values outside the range? (Score:1, Troll)
Indeed, the consumer software world would be far better off if it followed Apple's model. It really makes me wonder how good Windows applications today would be if they had put more effort into developing YellowBox. We might not be faced with a future of slow, resource-intensive
Re:How does it handle values outside the range? (Score:2)
Re:How does it handle values outside the range? (Score:2)
Re:How does it handle values outside the range? (Score:2)
I don't know if its true, but most people online tell me that GNUstep developers are a bit inflexible about enhancements/patches to keep it more in sync with Apple's offerings.
Re:How does it handle values outside the range? (Score:2)
Re:How does it handle values outside the range? (Score:2)
Last time I checked it was indeed a Carbon app.
Re:How does it handle values outside the range? (Score:1)
Re:How does it handle values outside the range? (Score:4, Informative)
No they aren't. I'm a professional programmer for a Mac (and PC) program using the Carbon interface for Macs. As Wikipedia says, "Carbon is more versatile in that it may be accessed using C, C++, Pascal, Ada, or any other language with suitable interface headers, whereas Cocoa exclusively uses Objective C and Java." Most cross-platform apps use Carbon because Objective-C isn't widely used on PCs.
Re:How does it handle values outside the range? (Score:1)
Re:How does it handle values outside the range? (Score:2)
Carbon and Objective C are not the same things--that much is correct. However it stands that Cocoa apps are written in Objective-C (and formerly in Java) and Carbon apps are written in languages like C and C++. If a program is a Carbon app, you can pretty much guarantee that it is not written in Objective-C. When you have the case of a program like iTunes that has always been developed as a Carbon app that could even dual run on OS9/OSX in previous versions, you are pretty mu
Re:How does it handle values outside the range? (Score:2)
Re:How does it handle values outside the range? (Score:2)
Re:How does it handle values outside the range? (Score:2)
Re:How does it handle values outside the range? (Score:2)
Carbon and Cocoa are not programming languages, correct. Cocoa is accessed via Objective-C and formerly Java (formerly as its being deprecated). So, if you have a Cocoa app, it's pretty much guaranteed to be written in Objective-C.
Likewise, the prime languages that are used by Carbon are C and C++. I cannot think of an example of a Carbon program that is written in Objective-C (I'm not saying that they don't exist at all, just that I know o
Re:How does it handle values outside the range? (Score:2)
Carbon applications are usually written in languages other than Objective-C. Carbon is the old Macintosh APIs adapted to OS X.
Cocoa applications are usually written in Objective-C. Cocoa is derived from the NeXTStep libraries.
So it's basically fixed point math. (Score:2, Insightful)
Formula 32 / 20 = Number of stars.
Wow. I don't see why this article is on slashdot, what am I missing?
Re:So it's basically fixed point math. (Score:5, Funny)
Whatever it is the editors were smoking.
Re:So it's basically fixed point math. (Score:5, Funny)
This story has everything to do with what this site stands for. It directly involves Apple, mathematics, software design, software analysis, software realiability, and so forth.
Remember, one of the traits of the true, traditional hacker was to experiment with systems in order to better understand them. That holds especially true of proprietary software systems, where the source code cannot be easily or readily viewed.
Indeed, this is a very interesting story that should appeal perfectly to the general Slashdot audience.
Re:So it's basically fixed point math. (Score:2)
Re:So it's basically fixed point math. (Score:5, Insightful)
The hacker audience who is interested in such things has been dwindling both in numbers and as a percentage. Now the "general Slashdot audience" prefers to fawn over the latest consumer product from Apple, to complain about Microsoft, or to inexpertly argue their "Rights Online".
Articles about technology, impressive hacks, homebrew projects, science and mathematics would be extremely welcome. Unfortunately the editors are infatuated with content-free articles that are little more than advertisements for products like the PS3 and Xbox and iPod.
Re:So it's basically fixed point math. (Score:2)
Re:So it's basically fixed point math. (Score:1)
Is it really surprising? (Score:1)
Re:Is it really surprising? (Score:2, Insightful)
This just seems like something I'd quietly forward to their developers.
How is it a "bug"? (Score:2)
One might say that quality software should properly deal with unusual values, and that is quite true. Likewise, it appears to be the case in this particular situation. The rating system still works, even with the unexpected data. Indeed, could the
Re:How is it a "bug"? (Score:2)
It's obviously not a bug. (Score:1, Troll)
So in the end it doesn't crash the program, nor does it lead to incorrect output or corrupted data, or anything of that sort. Thus it is not a bug.
Re:Is it really surprising? (Score:2)
Re:Is it really surprising? (Score:2)
Re:Is it really surprising? (Score:2)
Re:Is it really surprising? (Score:2)
Re:Is it really surprising? (Score:5, Informative)
Many people who read this site care about issues like this. We find it interesting to experiment with software systems, especially those which we do not have direct access to the source code of. It's fun to see how a consumer-grade application reacts to unexpected data, for instance.
He could have decompiled the application. But doing so would likely have been in violation of the licensing agreement he agreed to before using said software. You may question the legality of such agreements, but he may not have wanted to take the risk of publishing his findings. Litigation is expensive, after all.
Not only that, but it's quite difficult to decompile a program written in C, C++ or Objective-C. That's especially true when you're dealing with an optimized program. It often isn't obvious what a particular chunk of assembly code is doing, and thus is basically useless for such analysis.
In a spirit of non-Disneyness... (Score:2, Insightful)
Re:Is it really surprising? (Score:1, Troll)
He could have decompiled the application. But doing so would likely have been in violation of the licensing agreement he agreed to before using said software. You may question the legality of such agreements, but he may not have wanted to take the risk of publishing his findings. Litigation is expensive, after all.
Give me a very large break. Even Apple, sue hungry nutjobs that they are, isn't going to sue someone for finding out a trivial part of iTunes. As for the "you don't find this interesting, but us
Must only be interesting if (Score:1, Insightful)
I don't use itunes, and while I realize many people do, this seems pretty mundane. It might be interesting to those who care - obviously there's some of you out there - but this hardly seems worthy of Slashdot. I'd expect something more hackerish along the lines of "NSA
Re:Must only be interesting if (Score:2)
Not just 'news' (Score:1)
How does the Windows version work? (Score:3, Interesting)
Re:How does the Windows version work? (Score:1)
Re:How does the Windows version work? (Score:1)
Basically the same... (Score:3, Informative)
Scripts to do it can be found here: http://ottodestruct.com/blog/category/geekery/pro
Endnote #20 (Score:2)
Re:Endnote #20 (Score:2, Informative)
closed source.. (Score:3, Interesting)
Zero to 100? (Score:1)
Future considerations, perhaps? (Score:4, Insightful)
Suppose in the future they added support for giving a song a percentage ranking. It's quite easy to do with the system they're using now. Data from the new software could be used with the old, as the old software is already expecting and can cope with a value in the 0 to 100 range, even if it does so slightly differently than the future versions.
Re:Future considerations, perhaps? (Score:1)
Re:Zero to 100? (Score:2)
Re:Zero to 100? (Score:2)
Any idea why they would pick 100? There doesn't seem to be any obvious reason to do this over 0 to 5.
It's called "percent".
Obligatory (Score:5, Funny)
Tsk, and I thought this was Slashdot... bleeding edge, people!
Re:Obligatory (Score:5, Funny)
I tried to install Songbird, but it just installed a buggy, broken and cluttered version of iTunes that didn't work with my iPod and had a farting bird for an icon. Does anyone know where the real installer is?
Re:Obligatory (Score:2)
My laptop has a fairly small hard drive and I don't intend to keep my entire music collection on it. I rather think of it as an iPod -- my landlocked disk has my real library on it, and some subset lives on the laptop at any one time. When I'm on my home network, I want to have access to my whole library, but when I'm out and about, I would like to easily see what subset is local. I have found that iTune
Re:Obligatory (Score:2)
Re:Obligatory (Score:2)
Re:Obligatory (Score:3, Funny)
Re:Obligatory (Score:2)
To all its detractors... (Score:2)
2) Songbird helps you buy music from a variety of stores, rather than just one. I think eMusic is better than the iTunes Store, but even if it isn't, I don't want my car telling me where to buy gas; I don't want m
why linear? (Score:5, Interesting)
Re:why linear? (Score:1)
Also: in the interface, a rating of zero means "no rating". Should songs with a rating of 1 really be played more often than unrated songs?
Re:why linear? (Score:2)
Re:why linear? (Score:2)
I would think an unrated song should have an implicit 3 star rating: it's not known to be good or bad, but it will still be played.
Re:why linear? (Score:3, Insightful)
Man, do you really want your favorite song to play 32 times for every 0-star rated song you have on your iPod? I don't care how much you love a song, after listening to it that often, you're bound to want to stab your iPod in the face. Or the closest fan of The Cure. Come to think of it, that'd be a win-win situation.
Re:why linear? (Score:2)
I'm fairly certain that is wrong.
I use Winamp, which allows me to make smart playlists that refer to ratings of zero OR unrated songs. Of course, you'll point out that that is not iTunes, but what's interesting is that when I put an unrated song on my iPod, it comes back into Winamp as unrated, but when I accidentally click through to the ratings screen on the iPod, and then click to dismiss it when there are no stars, the rating comes back into Winam
Re:why linear? (Score:2)
Re:why linear? (Score:3, Interesting)
Instead I rate my tracks like I would a movie.
1-star is probably going to get deleted eventually.
2-stars play half as much as No-stars.
No-stars play twice as much as 2-stars.
3-stars play 3 times as much as 2-stars.
4-stars play 4 times as much as 2-stars.
5-stars pla
Overkill? (Score:2)
Re:Overkill? (Score:1)
Seriously, it's a good question. Statisticians generally use scales of 5 values in surveys for a reason - it provides enough options for people to choose something near what they really want without the hassle of too many options that would have to be collapsed anyway. A 0-100 scale really seems like overkill.
Re:Overkill? (Score:2)
Smart Shuffle might have something to do with it (Score:3, Insightful)
The first control is a 3-setting slider for "more likely, random, less likely". The description below says "Smart shuffle allows you to control how likely you are to hear multiple songs in a row by the same artist or from the same album."
Below that are three radio boxes, labled Shuffle: ( ) Songs ( ) Albums ( ) Groupings.
Is it possible that this 100 scale rating system might be more fine grained to take these Smart Shuffle user settings into account? Perhaps that might be why it isn't simply the integers 0-5.
Time (Score:1)
Negative towards iTunes? (Score:2, Funny)
I know this article is about DRM-filled software, but do we really have to be this negative towards it?
Re:Negative towards iTunes? (Score:2)
In other words: Duh! Sekret variable settings have no effect.
47 IS the weirdest number...REALLY... (Score:2)
47 really really IS the WEIRDEST number... Really. There's even a group dedicated to it:
The 47 Society [yahoo.com]
So TFA comes as no surprise...
RS
first discovered MP3 files back in the early 1990s (Score:2)
{
FTFA:
"I remember when I first discovered MP3 files back in the early 1990s..."
I call BS. From wikipedia: [wikipedia.org]
--"July 7, 1994 the Fraunhofer Society released the first software MP3 encoder called l3enc."
--"In the first half of 1995 through the late 1990s, MP3 files began flourishing on the Internet.
so basically before mid-1994 there were no mp3s. There were other things (like mp2?) but mp3s really didnt exist since, duh, u kinda needed a encoder in order for mp3s to be created.
ok so this is
Re:first discovered MP3 files back in the early 19 (Score:2)
Dude, he said "...MP3 files back in the early 1990s...". In case you didn't notice, 1994 is part of the early 90's, in that it's before 1995.
Not sure why you're bitching about this, it doesn't seem to be contradictory at all . . .
5 Stars Rating Systems are Poor Design (Score:3, Interesting)
Re:5 Stars Rating Systems are Poor Design (Score:3, Interesting)
Re:5 Stars Rating Systems are Poor Design (Score:2)
In iTunes there is a boolean (checked/unchecked) that you can use as an extra binary digit.
Horrible or bad song: I thrash them
Not that good, but still a keeper (it's in a full album or something): unchecked
Regular: not rated but checked
From 1 to 5: from nice to exceptional
Actually, if a song is nice enough for me to take the seconds to perform the rating means it is worthy.
There goes your gaussian... yeah, I know my values would probably be classi
Re:The beauty of AppleScript. (Score:5, Funny)
This shows the level of brainwashing only possibly seen in apple zealots.
Re:The beauty of AppleScript. (Score:5, Funny)
Re:The beauty of AppleScript. (Score:1, Troll)
Re:The beauty of AppleScript. (Score:1)
PS: I kid, I kid. And I love my mac.
Re:The beauty of AppleScript. (Score:4, Funny)
Re:The beauty of AppleScript. (Score:2)
Re:The beauty of AppleScript. (Score:2)
Re:The beauty of AppleScript. (Score:2, Informative)
http://mail.python.org/pipermail/pythonmac-sig/20
Re:The beauty of AppleScript. (Score:2)
Re:The beauty of AppleScript. (Score:2)
Re:The beauty of AppleScript. (Score:1, Troll)
Re:The beauty of AppleScript. (Score:2)
Re:The beauty of AppleScript. (Score:2)
Re:The beauty of AppleScript. (Score:3, Funny)
Re:The beauty of AppleScript. (Score:2, Informative)
Re:The beauty of AppleScript. (Score:1, Troll)
The open source solutions are far better. A program with Python, Tcl, or Scheme scripting, for instance, is often quite a useful application. Take GIMP, for instance. It's Scheme scripting capabilities are quite superb, and make for a swell application.
Still, AppleScript is by f
Re:The beauty of AppleScript. (Score:1, Troll)
Using iTunes to manage a decent sized music collection is like shooting yourself in the head with a gun that looks like a candy cane. Sure it looks nice, and it's really glossy on the surface, but at the end of the day you're still blowing your brains out.
The slowness of iTunes notwithstanding, the utter lack of any decent playlisting features, the ability to sync to 1 (one) music player, the pisspoor MP3 encoder included, the terrible UI which doesn't fit in with Windows and won't even let
They created the perfect antiduplication system. (Score:2)
Re:I'm just saying this... (Score:2)
What's with the overly abundant amount of sarcasm? If you want to read "important stories", just go to bbc.co.uk. It even says below the green slashdot graphic to your front top left:
News for Nerds. Stuff that matters.
Were you not able to infere from the tagline that this is not your everyman's newssite about "important stories"?
Oh wait - you were trying to be funny. Don't quit your day job.
Re:I'm just saying this... (Score:3, Insightful)