Gangnam Style Surpasses YouTube's 32-bit View Counter
First time accepted submitter neoritter writes "The Korean pop star PSY's viral music video "Gangnam Style" has reached the limit of YouTube's view counter. According to YouTube's Google+ account, "We never thought a video would be watched in numbers greater than a 32-bit integer (=2,147,483,647 views), but that was before we met PSY. 'Gangnam Style' has been viewed so many times we had to upgrade to a 64-bit integer (9,223,372,036,854,775,808)!"
Because they were following the Google C++ Style Guide?
"You should not use the unsigned integer types such as uint32_t, unless there is a valid reason such as representing a bit pattern rather than a number, or you need defined overflow modulo 2^N. In particular, do not use unsigned types to say a number will never be negative. Instead, use assertions for this."
The song and video are a parody of the lifestyle of Koreans in the Gangnam District of Seoul.
Actually, if you combine all different versions it beats even the 64bit integer.
Techsmartly made a fancy pivot chart of it a while back:
http://techsmartly.net/freePS3...
YouTube doesn't count a hit the instant a video starts playing. They have further criteria that depend on how much of the video was played, whether or not parts were skipped, etc. Well, at least I remember reading about it sometime. It had to do with their efforts to combat click fraud and only count legitimate views.
There can be good reasons to use it but there are also a couple of reasons to avoid it.
1: overflows are "hidden", with a signed number overflow will usually* result in a nonsensical (very large negative) number, with an unsigned number overflows will usually bring you back to zero which is much less likely to be noticed
2: the rules for operations (especially comparisions) involving a mixture of signed and unsigned types are seriously counter-intuitive.
* Yes I know the C standard doesn't actually require this and modern versions of gcc are being retarded about it in some cases but for the most part it holds true
note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register