Linked by Thom Holwerda on Wed 30th Jan 2013 00:38 UTC
Hardware, Embedded Systems Marco Arment: "Everyone should play by the same rules. A proposal: storage capacities referenced or implied in the names or advertisements for personal computers, tablets, and smartphones should not exceed the amount of space available for end-user installation of third-party applications and data, after enough software has been installed to enable all commonly advertised functionality. With today's OSes, iPads could advertise capacities no larger than 12, 28, 60, and 124 GB and the Surface Pros could be named 23 and 83 GB." Wholly agreed. When I buy a box of 100 staples, I expect it to contain ~100 staples - not 50 because the other 50 are holding the box together.
Thread beginning with comment 550854
To view parent comment, click here.
To read all comments associated with this story, please click here.
HappyGod
Member since:
2005-10-19

The problem is that the number of people who do not comply with the standard is larger than the people who do.

The situation is way more confusing now than it was before the standards bodies got involved. Because now you buy a 2TB HDD, and don't (apparently) get anywhere near that much free space when Windows tells you your drives capacity. I wonder how many calls HDD manufacturers get per day because of that issue alone.

due to concerns that the old "everybody knows kilo- means 1024 in the context of computers" attitude was proving problematic as computers became a more and more generally-used tool.


This is total bull$hit. There is almost no situation where knowing the number of bytes in a MB/GB is required in order to successfully use a computer.

People simply understood that they were copying 5MB, and the computer says they had 6MB free. No problems. In fact that's still how it works because Windows still uses the old definition of a GB.

Standards bodies, I think, overstepped their bounds. While they are responsible for setting standards, they should have sought the opinion of the major stakeholders before making the change they did. And if it transpired they could not at least get a majority YES vote, then it should not have happened.

Edited 2013-01-30 08:25 UTC

Reply Parent Score: 3

Brendan Member since:
2005-11-16

Hi,

The problem is that the number of people who do not comply with the standard is larger than the people who do.


Yes, these uneducated people still need to be educated. Sadly, some of them are teachers - I've even seen university professors use "Gb" when they meant "GiB".

There is almost no situation where knowing the number of bytes in a MB/GB is required in order to successfully use a computer.


Let's try this. If you've got a 2 MB disk and you're downloading data at a rate of 8 KB per second; how long until you run out of space to store received data?

Possible answers include:
a) 2*1024*1024/(8*1024) = 256 seconds
b) 2*1000*1024/(8*1024) = 250 seconds
c) 2*1000*1000/(8*1024) = 244.14 seconds
d) 2*1024*1024/(8*1000) = 262.144 seconds
e) 2*1000*1024/(8*1000) = 256 seconds
f) 2*1000*1000/(8*1000) = 250 seconds

Note: Networking hardware typically uses "K = 1000" and hard drive manufacturers have a nasty habit of using "M = 1000*1024", so (e) is potentially the most likely answer, unless the disk is SSD or USB flash where (a) might be more likely, or the prefixes comply with international standards and (f) is the only right answer.


Standards bodies, I think, overstepped their bounds. While they are responsible for setting standards, they should have sought the opinion of the major stakeholders before making the change they did. And if it transpired they could not at least get a majority YES vote, then it should not have happened.


No. The use of "K = 1024" was always wrong and never complied with any standard (despite common usage). The common usage of "wrong" is likely to have been caused by laziness/convenience (e.g. it's easier to say "1 KB of RAM" and be wrong, and harder to say "1.024 KB of RAM" and be right).

The only thing the standards bodies did was create a more convenient alternative that is right (e.g. it's easy to "1 KiB of RAM" and be right and harder to say "1.024 KB of RAM" and be right).

But yes, some people aren't educated and prefer to remain wrong.

- Brendan

Reply Parent Score: 4

HappyGod Member since:
2005-10-19

Hi Brendan,

Congratulations on this years most arrogant and silly post so far. Don't get your hopes up though, the year is young.

Calling people uneducated simply because they dissagree with you makes you sound opinionated. Your reputation doesn't improve when you try to provide an example of why you're right, and only succeed in proving the opposite point.

I asked why anyone would need to know how many bytes there are in a MB/GB/TB.

You gave this silly and contrived example:

Let's try this. If you've got a 2 MB disk and you're downloading data at a rate of 8 KB per second; how long until you run out of space to store received data?

Possible answers include:
a) 2*1024*1024/(8*1024) = 256 seconds
b) 2*1000*1024/(8*1024) = 250 seconds
c) 2*1000*1000/(8*1024) = 244.14 seconds
d) 2*1024*1024/(8*1000) = 262.144 seconds
e) 2*1000*1024/(8*1000) = 256 seconds
f) 2*1000*1000/(8*1000) = 250 seconds


This is beyond laughable. When was the last time you needed to know how many seconds it would be until you ran out of disk space? When or why would anyone need to know this? How would it go: "Geez is it 244.14 seconds until I run out, or is it 250 seconds? I'd better work this out or else ... oh wait."

No. The use of "K = 1024" was always wrong


Why was it always wrong? It never complied with any standard, simply because there wasn't one. That doesn't make it wrong at all.

It did however have a de-facto standard that was in use by 100% of interested parties. That is a standard. It's not codified, but it is a standard.

But yes, some people aren't educated and prefer to remain wrong.


This statement tells a story about you. And it's not pretty.

Reply Parent Score: 3

ndrw Member since:
2009-06-30

The whole situation is unfortunate but not that important as we (geeks) paint it. I've been using binary prefixes in the past but nowadays I just stick to SI system. IMHO over time the use of "kilo=1024x" will become sort of a slang in niche markets.

There are many reasons for that:

"Kilo" has always meant "1000x". That's the concept 99% of users are familiar with. Yes, 20 years ago most users were geeks and had no problem with binary numbers but now we are a minority.

As you mentioned, "kilo" means "1000x" in all non data storage applications (e.g. networking). That's because all performance figures are derived e.g. from frequency, which has always been decimal (at least above 1 Hz).

Even in data storage applications, memory size is no longer tied to the size of a 2D array (overhead of error correction, framing added by interfaces etc.). So binary units are no longer better suited to measuring memory size.

Finally, most users don't care about it and the difference is small enough even at "tera" scale. We can just stick to a familiar decimal system and forget binary units altogether (which is already happening).

Myself, I have adopted following practices:
- I always use decimal prefixes when providing data.
- I check what the author has assumed when getting such data (unfortunate but unavoidable step anyway).
- If I absolutely have to use binary units (very rare now), I tend to write X*2^N rather than using "kibi" prefixes, which frankly speaking look even more geeky to me than use of kilo=1024x. Since such data are consumed by technical users it works just fine.

Reply Parent Score: 2

KrustyVader Member since:
2006-10-28

Networking hardware typically uses "K = 1000"


They are also wrong, or not using the S. I. prefix. In S. I. the kilo prefix is lower case k, and uppercase case means Kelvin.


From a Mathematical point of view. b for bit is right, but byte shouldn't be B. The Mathematical scales are in uppercase when they represent the name of a scale that was named in honor of someone, and in lowercase for the rest. So stand for N = Newton, K = Kelvin, C = Celsius, Hz = Hertz, m = meter, s = seconds and so on.

But remember that in computer science we love to create a lots of standards that break every previous standards. And we write the scales the way they look better and not the way we should.

Reply Parent Score: 2

ssokolow Member since:
2010-01-21

"due to concerns that the old "everybody knows kilo- means 1024 in the context of computers" attitude was proving problematic as computers became a more and more generally-used tool.


This is total bull$hit. There is almost no situation where knowing the number of bytes in a MB/GB is required in order to successfully use a computer.
"

I already said they were focusing on business, research, and standards. Situations where a confusion in terminology could be expensive. (eg. If you pay for a supercomputer or space probe to be built and get less memory/storage/bandwidth than you intended or you're forced to go over budget because they specced more than you intended.)

Standards bodies, I think, overstepped their bounds. While they are responsible for setting standards, they should have sought the opinion of the major stakeholders before making the change they did. And if it transpired they could not at least get a majority YES vote, then it should not have happened.


Computer scientists overstepped their bounds in arbitrarily re-defining the meanings of the SI prefixes. This is just fixing the problem.

Reply Parent Score: 4

Alfman Member since:
2011-01-28

ssokolo,

This came up not long ago...
http://www.osnews.com/thread?546775

You are absolutely right, CS guys hijacking the SI units was a bad move and was rather shortsighted. We need to continue emphasizing the correct use of units. The industry is largely using the correct units now so I think we're headed in the right direction. Hopefully someday our descendents won't need to second guess what a unit means.

Edited 2013-01-30 18:21 UTC

Reply Parent Score: 3

Delgarde Member since:
2008-08-19

Computer scientists overstepped their bounds in arbitrarily re-defining the meanings of the SI prefixes. This is just fixing the problem.


It's not really a fix, though, because while 1kb = 1024b might be wrong, it was consistently applied. Once you start applying the fix, we have the situation where 1kb might be 1000b or it might be 1024b, and you have no way of knowing which one it is. You've replaced "wrong" with "mostly wrong and completely confusing".

Reply Parent Score: 2