*To*: debian-devel@lists.debian.org*Subject*: Re: Using standardized SI prefixes*From*: Magnus Holmgren <holmgren@lysator.liu.se>*Date*: Wed, 13 Jun 2007 18:10:24 +0200*Message-id*: <200706131810.30160@proffe.kibibyte.se>*In-reply-to*: <379ea5900706130619q42a06ddexc4469fbf5224a887@mail.gmail.com>*References*: <511f47f50706110557mb5f7de1s61ea1fafd86cd882@mail.gmail.com> <1181731914.13169.3.camel@oxybuntu> <379ea5900706130619q42a06ddexc4469fbf5224a887@mail.gmail.com>

On Wednesday 13 June 2007 15:19, Bjørn Ingmar Berg wrote: > Let me start with a dumb example: (OK, dumb example duly deleted) > Computers deal with numbers in base two. Humans deal with numbers in > base 10. When computers and humans interact (on a technical level) > humans must adapt to the computer, because computers can not. I don't agree with that. Compilers generally understand numbers in base 10, for example. More about that later. > Dealing with chunks of data, addresses, registers, etc. has to be done > in base 2. Even if 1024 is "close enough" to 10^3 for a PHB or > marketing humanoid, that will never make those two numbers equal. And > it must never be allowed to. Computers, computer designers, computer > technicians and most computer programmers will always deal with the > _real_ base 2 numbers like 1024. So? This is why there needs to be a separate set of prefixes for powers of 2. As for that falcon, it's just another example of why there needs to be a well-defined vocabulary even if the common people don't care about the details. > Another example. Pi is an irrational number starting with 3.14.... > Sure, it would be easier to "standardize" it to 3.00. Done deal. It > would be easier to remember and more marketable. It would also be > totally useless AND completely wrong. AFAIK some very dumb people > actually managed to decree by law that pi was to equal 3. They had to > stop doing that. > > In the same was as with pi redefining or "standardizing" kilobytes and > megabytes would be totally useless AND completely wrong. Computers > have always, do, and will continue to deal with their numbers along > the progression of 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, etc... > So, when dealing with computers, must we. Again, computers are perfectly capable of presenting numbers in base ten or any other base, depending on what is most convenient. Otherwise we might have been forced to input numbers in binary and get answers like "Total distance: 10011.1 km" back (with k meaning 2^10, of course). That SI prefixes have been used to express powers of two is more specifically an artifact of memory addressing. The sizes of memory banks are normally a power of two. In that case it's convenient to say that the memory capacity is 64 MiB when you mean that it's 67 108 864 byte. But for data on a wire, or even files on a disk, there isn't anything constraining sizes to a power of two (block sizes are a number of KiB, but you rarely need to think of that as a user). > One does not redefine pi to a value of 3 because "that would make it > more understandable for the commoner". Mathematicians, architects > (and basically everyone else) need it to stay ~3.1415926535 in the > future. > One does not redefine kilobyte to mean 1000 (base 10) because "that > would make it more understandable for the commoner". Real computer > people need it to stay 1024 (base 10). It's not about redefining "kilobyte to mean 1000", because, as has been pointed out repeatedly, a kilobyte is currently either 1000 byte or 1024 byte depending on context. There is no exact definition, just a rather vague convention. This is about once and for all ending that mess. Your analogy with redefining pi as exactly 3 is way off, because pi is a natural constant and as such has been defined since the beginning of time. Redefining pi would be like trying to alter the shape of the universe or the laws of nature. Deciding that SI prefixes shall be SI prefixes even in computer context is not like trying to strip 24 bytes off every block of 1024, or mandating that computers always have to use BCD internally. > A well-known and very common trait of language is that one given word > can often have more than one specific meaning. When this is the case > you need a context to be sure. This is considered normal, and never a > real problem. This should hold true regarding computers and counting > as well. That doesn't make vagueness and ambiguity *desirable*. It is common to have a well-defined terminology wherever people need to communicate efficiently without misunderstandings. Two examples are the SI units and prefixes. > Finally a personal and subjective thought. At times one has to chose > whether to oversimplify facts and information to the point where > "everyone" understands it, (If this happens they DO NOT understand it; > they are given the illusion of understanding) or whether to educate > the public. I am very convinced the correct solution is always to > educate the public. Good. Let's then teach the public that "borrowing" well-defined SI prefixes and giving them a different meaning in some situations was a bad idea, and that an adequate solution exists. -- Magnus Holmgren holmgren@lysator.liu.se (No Cc of list mail needed, thanks)

**Attachment:
pgpeq0BEzofJ8.pgp**

**References**:**Using standardized SI prefixes***From:*shirish <shirishag75@gmail.com>

**Re: Using standardized SI prefixes***From:*Christof Krüger <ubuntu@pop2wap.net>

**Re: Using standardized SI prefixes***From:*"Bjørn Ingmar Berg" <ingmar@bergcube.net>

- Prev by Date:
**Re: Using standardized SI prefixes** - Next by Date:
**How to package software with binaries in tarball?** - Previous by thread:
**Re: Using standardized SI prefixes** - Next by thread:
**Re: Using standardized SI prefixes** - Index(es):