Several video players, when filling their video buffers, report this fact to the user directly, as in, “Video buffering.” I have so far been unable to find any non-computer scientist who actually knows what the term “buffering” means. Googling for “video buffering” reveals two things:
- “Video buffering” does not mean “the video is being buffered” but rather, “the video is itself buffering.”
- Which is baffling until you read more web postings and learn that “to buffer” means “to start and stop intermittently” (as in, “I totally hate it when the video buffers.” Me too.)
What it actually means (for the non-CS crowd) is best explained by analogy. When you first go to use a garden hose, it takes some time for the water to start flowing out. From then on, as long as the water is on, it flows out of the hose at a constant rate. The garden hose is the buffer. Data is flowing into your computer, but until there’s enough of a flow to provide smooth video, you have to wait for the buffer to fill up. For more info, see Wikipedia. Still, the video player shouldn’t actually use the word “buffering.”
This led me to wonder what people think about other CS jargon words that have leaked out into userland, like “caching” or “logging.” A number of websites say that you should periodically clear your web caches in order to speed up your browser, as in, “clearing your cache can significantly improve the speed and performance of your browser”. Really!?!
(Non-CS folks: That’s exactly backwards. Caching is what speeds up your browser by keeping recently-used images, etc., on disk – in a “cache” – rather than having to fetch them across the network. It’s like having recently checked-out books at home rather than in the library. Clearing the cache – returning all the books to the library – will definitely make reading those books slower.)
Any other CS jargon terms you’ve seen in “the real world”? (And Emacs screeching to a halt and announcing that it’s “garbage collecting” does not count. Emacs is not the real world.)
Here are some:
1. “Virtual memory” means “swapping to disk.”
2. “Exponential” means “remarkable growth” or “a large amount.” (Not strictly CS, but we use the term correctly a lot.)
3. “CPU” means “computer chassis.”
All good catches. I was a bit suspicious about your first item (I just might be a little too close to this topic), but quickly confirmed it: googling for “virtual memory” produces this incorrect explanation near the top of the list, from a nominally-authoritative site: http://www.howstuffworks.com/virtual-memory.htm (fine if you pretend they are talking about swapping). Wikipedia comes through again – its article explains exactly what virtual memory is, and clearly distinguishes it from swapping (http://en.wikipedia.org/wiki/Virtual_memory), though not exactly in laymen’s terms (it mentions overlays!).
A thought: Google searches wouldn’t be half as useful if Wikipedia weren’t around.
Just came across this footnote to a discussion of the “lack of virtual memory” on the iPad (and iPhones)…
http://daringfireball.net/2010/04/the_ipad#fn1-2010-04-07
Technically, the iPhone OS has “virtual memory”, but it doesn’t have swap files. What’s running has to fit into physical memory. And in layman’s terms, swapping RAM to storage is virtual memory.