Warning: My geekiest blog post ever to follow. Involves arithmetic and computers.
A common industry metric for transfer rates (i.e., how quickly something downloads) is Mbps, which is defined as Megabits per second.
This measurement is confusing and outdated for several reasons.
- Most people don’t understand what a “megabit” is. It’s very easy to confuse with a megabyte. (There are eight bits to a byte, so you can easily go from one to the other if you like dividing or multiplying by eight.)
- When talking about megabytes per second, people use either “mbps” (with a lower-case m) or “MBps” (with an upper-case M and B). If you’re not paying attention, you can easily confuse “mbps” or “MBps” with “Mbps.”
- There’s further confusion about whether the “mega” part means 1,000 or 1,024. Most people’s intuition is wrong.
- Unless you’re used to these numbers, it’s difficult to understand them in practical, real-world terms. Suppose you have DSL and you’re downloading a movie. How long is it going to take? You’ll need to know the size of the movie in megabits, and you’ll need to know the speed of your DSL connection in Mbps. Then grab the calculator to get a number of seconds, then do more arithmetic to translate that into minutes.
It’s time for a change. Before I get to that, though, first some boring personal history.
The first modem I ever used was in 1980, on an Apple II+, and it was 300 baud. That meant (more or less) that it could handle 300 bits per second — about a sentence of text each second. In college, 10 years later, I used a 3200 baud modem (”Modem 28.8″) which could handle 28,800 bits per second — almost 100 times faster, about a page of text a second.
As modems got faster, instead of bits per second, we started talking about kilobits per second (”kbps”), and the confusion began. In the real world, “kilo” means 1,000 (e.g., a kilometer is 1,000 meters). Usually in computers, a kilo means 1,024 — a kilobyte is 1,024 bytes, for example. Except for kbps, where the k now means 1,000 again. (I think marketing people are to blame.) So, that 300 baud modem was 0.3 kbps, and the 3200 baud modem was 28.8 kbps.
Now eighteen years later, I have a cable modem at home. It can usually handle around 40,000 kbps — more than 1,300 times faster than that modem from college — a big fat novel of text every second. Since things have got faster again, instead of talking about kbps, we divide by 1,000 (not 1,024) and that’s where Mbps came from. Instead of saying my cable modem is 40,000 kbps, we say it’s 40 Mbps.
If you have broadband at home, you have somewhere between 8 Mbps (low end DSL) and 622 Mbps (high end fiber optic service).
But Mbps is such a silly way to measure things. As I explained above, it’s quite difficult to take a number like 40 Mbps and know how that translates into how long it takes to download a movie. If you know the movie is 2.5 gigabytes, you first have to translate that into Megabits. Multiply 2.5 by 1,024 to get megabytes, then by 1,024 again to get kilobytes, then by 1,024 again to get bytes, then multiply by 8 to get bits. Your movie is 21,474,836,480 bits. Now divide by 1,000 to get kilobits and divide by 1,000 again to get Megabits. Now you know your movie is 21,474.8 Megabits. Now divide by 40 to learn how many seconds it’ll take to download on your connection. 536. Divide by 60 to learn how many minutes: About 9. Your movie’s done downloading in the time it took you to do the arithmetic.
A much more practical measurement for consumers is Gigabytes per minute. Most people know that a gigabyte is 1,024 megabytes, and that an online movie is about 2 gigs or so. If we started rating speed in terms of gigs per minute (and tell the marketing people who want to use round numbers to go jump in a lake), that should hold us for the next few years.
I do expect to update this post about 5 years from now to advocate for terabytes per minute instead…
If you agree, start using gpm as a measurement in your organization and push for a transition.
(As a rule of thumb, every 100 Mbps is about 0.7 gpm. My 40 Mbps cable model can handle a gig about every three-and-a-half minutes.)