"Billion" suffers from the same problem as "Gigabyte". It has two mutually exclusive definitions (10^9 and 10^12) so you can't use it without the possibility of some confusion resulting.
Mac OS X 10.6 get this right and calculate in true KB, MB and GB that is 10^3, 10^6, and 10^9 bytes. I heard that Linux also get this right and now use the KiB, MiB and GiB prefixes for 2^10, 2^20, 2^30. Both options are good.
The usual 'binary' scale goes like this: 1 kB = 1024 B, 1 MB = 1024 * 1024 B, 1 GB = 1024 * 1024 * 1024 B, etc. which may be at odds with SI but at least it's self-consistent. The page you've quoted seems to be suggesting that 1 KB = 1024 B, 1 MB = 1024 * 1024 B, and 1 GB = 1000 * 1024 * 1024 B. That seems pretty absurd to me, but maybe they're just taking a page from the book of the "1.44 MB" floppy disks which actually hold 1000 * 1024 B.
As a programmer, I can't help but think that it should be 2^30. It's all in the same part of the brain that says that 256 is a nice round number. Comparatively, 10^9 is not even close to a nice number. It really comes down to that simple matter of taste. But I understand how it might be confusing to regular people.
Just because the vast majority of computers are implemented in base 2 doesn't magically make it the one true way™. To suggest that 10^9 is not a nice number is just being willfully combative against your own human nature.
I never said it was the one true way; in fact I was being pretty pragmatic about it. As programmer, I'm constantly thinking about numbers base 2 and Hexadecimal (I never understood the point of Octal). Therefore base 2 numbers for bytes just makes sense to me. Clearly, other programmers have felt the same way.
Sure 10^9 is a nice number when not working with computers, but when you're working with a computers you know that base 10 numbers don't fit right. I'm not being combative against my own human nature, I just think differently based on the context. Obviously the vast majority of people don't have that other context.
> It's all in the same part of the brain that says that 256 is a nice round number.
I recognize the feeling you're talking about, but I wouldn't go so far as to call it round. I'd call it familiar. It's the same sense that makes me see 42 and think "nice number", or 1983, or 255 even.
Round, on the other hand, requires more than simple recognition, it also requires easy calculation. Calculating 4 * 256 isn't that hard, but when I go for 6 * 256, I'll have to split it in 4256 + 2256. It's even worse for 1048576. Whereas decimally round numbers are very easy to do calculations on.