Kilobyte
Kilobyte
There's been a lot of confusion over 1024 vs 1000, kbyte vs kbit, and the capitalization for each. Here, at last, is a single, definitive standard: [table of various kinds of kilobytes]
SYMBOL NAME SIZE NOTES kB Kilobyte 1024 bytes OR 1000 bytes 1000 bytes during leap years, 1024 otherwise KB Kelly-Bootle standard unit 1012 bytes compromise between 1000 and 1024 bytes KiB Imaginary kilobyte 1024 √-1 bytes used in quantum computing kb Intel kilobyte 1023.937528 bytes calculated on Pentium F.P.U. Kb Drivemaker's kilobyte currently 908 bytes shrinks by 4 bytes each year for marketing reasons KBa Baker's kilobyte 1152 bytes 9 bits to the byte since you're such a good customer

This comic pokes fun at the confusion over the definition of a kilobyte. Historically, 1024 bytes was called a kilobyte for convenience purposes (same with megabyte and gigabyte); this usage was frowned upon by both the International Bureau of Weights and Measures and the Institute of Electrical and Electronics Engineers , but both let it slide as they had more important things to deal with. Later, hard drive manufacturers realized they could save money by selling hard drives marketed X amount of gigabytes and declare that they meant it as a literal 1,000,000 bytes (a 7% difference). Despite its iffy origins, the official definition now states that 1 kilobyte is 1000 bytes, however some continue to use the older meaning referring to 1024. The first row of the table is simply mocking this discrepancy.
The second row is Randall's interpretation on how Stan Kelly-Bootle would approach this problem. Kelly-Bootle is known for writing The Computer Contradictionary , which satirizes the jargon and language of the computer industry. Kelly-Bootle was likely motivated to write this work after working for several years at IBM, a company infamous for its excessive use of acronyms in the work place. Averaging the two definitions together to get 1012 bytes is simply a humorous approach that Kelly-Bootle would likely have taken (" Should array indices start at 0 or 1? My compromise of 0.5 was rejected without, I thought, proper consideration. " — Stan Kelly-Bootle). The serendipitous fact that the initials of Kelly-Bootle's name are "KB," the same letters used to abbreviate the word "kilobyte," adds a layer of plausibility to the joke. This is the first of Randall's many humorous compromises .
The imaginary kilobyte simply plays on the fact that complex analysis is required in quantum computing in relation to quantum mechanics. The imaginary number is represented as i and has a value of the square root of -1. This is a pun on the fact that KiB is used for the "binary kilobyte" (occasionally " kibibyte "), which is standardized at 1024 bytes.
The Intel kilobyte mocks the Pentium floating point unit that, in 1994, became notorious for having a major flaw in its floating point division algorithm that gave slightly erroneous results.
The smaller, drivemaker's kilobyte mocks a business model for handling higher prices that keeps prices constant but reduces quantity. The food industry has been notorious for decreasing quantity of food and keeping prices the same instead of increasing prices and keeping quantity the same. Randall is suggesting that if the computer industry tried to do this with hard drives, it could have humorous results such as smaller number of bytes in a kilobyte. In reality, hard drive capacity is specified in 10 3 byte (kB) units, while the content you put on it (programs, etc.) is specified in 2 10 (KiB) units. Formatting the drive, i.e. making it usable for storage, further decreases the available space. Thus a 250 GB drive might be reported to have a capacity of only 232 GB (really GiB) by the operating system. This discrepancy increases with increasing drive size. The trend humorously suggested in the comic, however, would make the drivemaker's kilobyte 1024 bytes in 1979, 1000 bytes in 1985, 852 bytes in 2022, and 0 bytes in 2235!
The baker's kilobyte is a play on the baker's dozen , which is 13 instead of 12. A baker's byte with 9 bits to the byte would result in a total of 9216 bits in a 1024 byte kilobyte. Converting this into "normal" bytes (with 8 bits), we divide 9216 bits by 8 bits per byte to get 1152 8-bit bytes to the baker's kilobyte.
In the title text, Randall mentions the definition kibibyte , which is defined more precisely. The binary prefix kibi means 1024, a portmanteau of the words kilo and binary. But he doesn't like the word because it sounds like the dog food Kibbles 'n Bits .
There's been a lot of confusion over 1024 vs 1000, kbyte vs kbit, and the capitalization for each. Here, at last, is a single, definitive standard: [table of various kinds of kilobytes]
SYMBOL NAME SIZE NOTES kB Kilobyte 1024 bytes OR 1000 bytes 1000 bytes during leap years, 1024 otherwise KB Kelly-Bootle standard unit 1012 bytes compromise between 1000 and 1024 bytes KiB Imaginary kilobyte 1024 √-1 bytes used in quantum computing kb Intel kilobyte 1023.937528 bytes calculated on Pentium F.P.U. Kb Drivemaker's kilobyte currently 908 bytes shrinks by 4 bytes each year for marketing reasons KBa Baker's kilobyte 1152 bytes 9 bits to the byte since you're such a good customer
