Math is hard, let’s go shopp—oops

Date:August 13, 2007 / year-entry #296
Orig Link:
Comments:    60
Summary:(The title is another variation on Math is hard, let's go shopping!", which appears to be a popular catchphrase over in Michael Kaplan's neck of the woods. The history of the phrase was researched on Language Log.) Last spring, I was at a local crafts store and paid for a $2.15 item with a $5...

(The title is another variation on Math is hard, let's go shopping!", which appears to be a popular catchphrase over in Michael Kaplan's neck of the woods. The history of the phrase was researched on Language Log.)

Last spring, I was at a local crafts store and paid for a $2.15 item with a $5 bill and two dimes. The teenage salesclerk rang up the sale and began to give me $17.90 in change.

"Um, I gave you $5.20." You'd think the salesclerk would notice something strange when the amount of change exceeded the amount of cash tendered!

"Oh, right." The salesclerk had entered $20.05 instead of $5.20. But now came the hard part: Computing the correct amount of change.

Apparently kids these days aren't taught how to make change. They just punch the number into the register and trust what comes out. "In my day," we learned to make change by rewriting the formula "change = tendered - cost" as "cost + change = tendered". In other words, you start with the cost of the item, then add money to bring the total to the amount of money you received. For example, if somebody paid for a $3.45 item with a $20 bill, you'd make change as follows:

You give the customer... You say...
three forty-five
a nickel ($0.05) three fifty
a quarter ($0.25) three seventy-five
a quarter ($0.25) four
a $1 bill five
a $5 bill ten
a $10 bill twenty

Adding up the change you created yields $0.05 + $0.25 + $0.25 + $1 + $5 + $10 = $16.55, which is the correct amount of change for $20 - $3.45.

Even if kids aren't taught this technique nowadays, at least they should be able to do subtraction the traditional way. $5.20 - $2.15 is not a particularly difficult computation, seeing as I specifically added the extra twenty cents to avoid the borrow from the units position.

But the salesclerk sat there and stared at the numbers for several seconds, unsure what to do next. I had to say, "$5.20 minus $2.15 is $3.05."

Going shopping won't let you escape math.

Comments (60)
  1. movd says:

    Have you seen "Idiocracy"? It shows the inevitable. ( )

    Going shopping won’t let you escape math.

    Or programming, as I’d think of a better cash register system on the spot, too.

    But it’s sad that it’s not even really math, but just basic arithmetics.

  2. Erock says:

    As what could be called a "kid" in his twenties, cost + change = tendered, as you put it, seems SO MUCH EASIER to do in my head than tendered – cost = change.

    Must be the sign extention bits in my head.


    (As US-born, I also saw this subtraction algorithm as extremely foreign yet easier than what I was taught as a child with "borrowing".

    Perhaps this is why the US trails other nations in mathematics scores? Shakey foundations and all?)

  3. I have a soft spot in my heart for poor saps that get that deer-in-the-headlights look when handed an "unconventional" amount of cash. When I was a teenager I worked as a cashier at a fast-food restaurant. I considered myself reasonably adept at calculating change until I encountered a scenario like the one you describe. There was something about being faced with those extra coins that made me completely freeze up, even though I knew it was just a matter of simple math. Exasperated customers would sigh heavily and tell me how much change I was supposed to give them, which did very little to boost my confidence the next time I encountered the situation. I wish I knew why this happened; it still does happen to me when I’m faced with simple math problems that have some hint of unconventional presentation.

    I did just buy a book this weekend entitled "How to Calculate Quickly." Maybe that will finally cure me.


  4. ephemient says:

    My friends and I were in a similar situation last year.

    Going from the cashier-generated but incorrectly inputted "$50-$7.18=$42.82" to the correct "$20-$7.18=$12.82" was (apparently) quite a challenge.

  5. I’m actually just as bad with math. It’s horrible. Simple addition and subtraction make my mind go completely blank. Yet I am great at design patterns and object models. I just accept it as something I’m genuinely bad at.

  6. BestSnowman says:

    I used to work in retail and it is really hard to teach people how to do this. Its kind of like asking someone if its plugged in when trouble shooting. They don’t check, similarly when you try to train a cashier this stuff they just block you out because its just simple math and they know that. Then they need to do it and bam they can’t.

    There is another aspect to this though, in most cases cashier work is mind bendingly boring and requires almost no thought. It is very easy to "check out" and just do it without thinking and then when you have to think something out it takes a while for the brain to boot back up.

  7. ForgetFastFood says:

    Great.  I thought after becoming a programmer I could FORGET my days of managing a fast food restaurant.  Now you have to remind me again ;)

  8. Nathan says:

    POS == point of sale, not piece of crap.

    He’s probably trying to remember how the heck to void out the transaction, and reenter it, not just get you your change. When his shift is over, someone (him, manager?) will check his actual cash drawer balance with what the terminal says should be there. Discrepancies are bad, mmkay ?

  9. Leo Petr says:

    Actually, you don’t need to void that transaction, as the amount that goes in the register remains the same.

    Having said that, I was one of those hapless clerks that freeze when customers add extra cents. I am rather good in mathematics and even arithmetic, but snapping out of the

    dollars(paid) – dollars(total) – 1

    • (100 – cents(total))/100

    algorithm is pretty hard when you are in the zone.

  10. GregM says:

    I worked a register in retail for several years (fortunately not in a fast food joint).

    You don’t need to void a transaction because you entered the wrong amount of cash tendered.

    You don’t need to input the amount actually tendered to get the right result, as long as you can do the change computation yourself.

    You just need to ignore what the machine is telling you to give back, and give back what’s really owed.  As long as you do that, there will be no discrepancy.

  11. ForgetFastFood says:

      Nathan: Giving back the correct change for the transaction is all that matters.  The POS doesn’t keep track of what amounts were entered, only the amount that is supposed to be received.  If the sale is exactly $10, it doesn’t matter whether I give you $100, $20, or $10.  As long as the correct amount is given back, there will be a $10 gain in the drawer.

  12. Mike Dimmick says:

    Nathan – the cash drawer is still correct, for Raymond tendered $14.85 less than entered, but received $14.85 less in change than displayed.

    Only real difference is that there’s a $5 note in there, not a twenty.

  13. Joe says:

    the really funny thing is when the clerk gives you back your $0.20 and says that they $5 is enough…I usually say "just punch it in and do what it tells you to do"

  14. mikeb says:

    To pile on in this good-old-days threads, the worst part about this is that making change is as easy as counting.  Why, we even called it ‘counting change’ back in the days that I tended a drug store cash register.

    Raymond throws in a bunch of egghead arithmetic (adding and subtracting) in his article, but really the crux of it is the "you give… you say…" table.  It’s just counting up from the amount purchased to the amount the customer gave.

    So, all you retail store/fast food joint managers out there reading this blog, don’t try to explain 3rd grade math to your cashiers.  Just drop down to explaining kindergarten-level counting, and you’ll have a chance at having your employees avoid this embarrassing situation.  Not that they really care.

  15. PeterK says:

    I think you’ve hit on another snowclone… "Kids these days X. Let’s go shopping."

  16. Andy says:

    I worked at Dairy Queen when I was in middle school and we were taught the same greedy algorithm for adding up to the amount tendered from the cost of the purchase that several folks have already mentioned. I remember our training days involved practicing so we wouldn’t get taken advantage of by quick change cons. This was in rural North Dakota. I wonder if they still do that for the workers at DQ?

  17. -=-~-=~-~=- says:

    Is Suggestion Box supposed to work?

  18. Name says:

    "In other words, you start with the cost of the item, then add money to bring the total to the amount of money you received."

    But that is exactly why this is difficult in this case.  If he did that, he’d end up with figuring out:


    +.85 = 3

    +2 = 5

    +.20 = 5.20

    and now you’d have $2 and another $1.05 in change which probably isn’t what you want.  

    As you note, if you just subtract you’d be fine, but he was probably trying to build up in his head from $2.15 to $5.20 which doesn’t work so well.

  19. David Walker says:

    Yes, you gave him 20 cents so he wouldn’t have to "borrow from the units position" (or give you 90-something cents in change).  

    I often do the same thing.

    He did, however, have to subtract 15 from 20, which (if the answer is not painfully obvious) requires a borrow from the cents position (let’s see, 5 from zero is … borrow 10, that leaves 5, subtract the one from the two, one minus one is zero… the answer is zero five cents!  Now to the dollars…).

  20. David Walker says:

    "Name":  Building up from $2.15 to $5.20 is so clear that I can’t even make it hard no matter what I try.  (I’m probably subtracting, or else building up the dollars and the cents separately.)

  21. Isaac @ MSDN says:

    Raymond Chen has a post today about making change, which reminded me of an interesting problem. American

  22. Name says:

    "Building up from $2.15 to $5.20 is so clear that I can’t even make it hard no matter what I try."

    Do it as I outlined.  Build up using cents first to get to the nearest round dollar.

    2.15 -> 3 = .85c

    3 -> 4 = 1 dollar bill

    4 -> 5 = another 1 dollar bill

    5 -> 5.20 = another .20c (ack!)

    That is what is taught (passively learned?) when people are shown how to build up.  Start with the change to get to the next round dollar, and then start counting out the dollars.  This works when people give you round dollar amounts.  When they provide extra change it doesn’t.  Then potentially you got to do the reverse of giving back dollars first in the build-up:

    2.15 -> 3.15 -> 4.15 -> 5.15 -> .05 -> 5.20

    But that isn’t the technique taught nor the technique Raymond outlines.  The technique Raymond outlines is exactly what makes this difficult.  

    The guy should have just subtracted to begin with.

  23. Name says:

    I remember getting a very similar email from someone I worked with a few years ago… same story.  I kept it for its frank analysis of the education system.

    Last week I purchased a burger at Burger King for $1.58. The counter girl took my $2 and I was digging for my change when I pulled 8 cents from my pocket and gave it to her. She stood there, holding the nickel and 3 pennies, while looking at the screen on her register.

    I sensed her discomfort and tried to tell her to just give me two quarters, but she hailed the manager for help.

    While he tried to explain the transaction to her, she stood there and cried.

    Why do I tell you this?

    Please read more about the "history of teaching math":

    Teaching Math In 1950:

    A logger sells a truckload of lumber for $100. His cost of production is 4/5 of the price. What is his profit?

    Teaching Math In 1960:

    A logger sells a truckload of lumber for $100.  His cost of production is 4/5 of the price, or $80. What is his profit?

    Teaching Math In 1970:

    A logger sells a truckload of lumber for $100.  His cost of production is $80. Did he make a profit?

    Teaching Math In 1980:

    A logger sells a truckload of lumber for $100.  His cost of production is $80 and his profit is $20.

    Your assignment: Underline the number 20.

    Teaching Math In 1990:

    By cutting down beautiful forest trees, the logger makes $20. What do you think of this way of making a living?

    Topic for class participation after answering the question: How did the forest birds and squirrels feel as the logger cut down the trees? (There are no wrong answers. )

  24. Dr. Lexus says:

    How I envision the interaction:

    R: Here’s 20 cents extra.

    Teller: [Stars blankly at the register, then shouts]


    (check my URL for the reference)

  25. T Man says:

    Something I see all too often.  However, I try to avoid "helping" the clerk or be too specific.

    Giving them excess change or bills so that things come out easier often is not easier.  Like you said, the register says what they need to give back, so don’t try to overcomplicate things.  It will mean you’ll have more change, but it’s easier in the long run.  KISS.

    I see this a lot with people that try to order deli meats by saying "give me 2/3 of a pound of roast beef".  You’ll most likely get some odd amount that makes no sense.

  26. Bryan says:

    I worked in large volume retail stores (ie, Grocery Store where the average register total was in the thousands for an 8 hour shift).

    For me, it was getting in the “zone”.  You actually have to zone out the math of the situation and focus your brain on moving stuff through, how to bag this, where does this belong, etc.  By the time it came to do change, my mind was already sizing up the next order.

    When something went wrong (maybe once every 2.5 – 3 weeks), it’s kinda like processor branch prediction.  90% of those kids COULD actually solve this problem quite simply.  However, they’ve already move on so to come all the way back is like a huge cache miss and then they have to reconstruct the stack.

    For you, it’s not the same.  Just like when customers expect that the cashier recognize them.  I saw about 150 people a day minimum.  Whereas half the time those people only saw me.

    It’s a matter of Context really (stupid esp registers X_X).

    After a while, you do get quick with it.  But machines do so much of your job that it’s hard to keep your mind active on that.  Cashiering is a mind numbing, horrible job that I’m forever glad to be rid of :)

    [This was a crafts store – hardly “high volume”. There was nobody else in line, probably only a dozen customers in the store at all. -Raymond]
  27. Spike says:

    Reminds me of the time I went into *A well known fastfood outlet* and asked for 18 *bite sized pieces of chicken*.

    The young man behind the counter said they didn’t sell eighteens.  They only did sixes and twelves.

    He had to go and find a manager to help him out of this conundrum since I refused to.

  28. JenK says:

    Oddly enough, this reminded me of my mathphobic cousin who could do /any/ math in her head while working at the til (and, simultaneously, tracking inventory / restocking, also in her head).  But put her down in front of a piece of paper with



    …and she’d panic.

  29. AC says:

    As Michael points out, he has also heard "Shopping is hard, let’s go sho-… um… never mind!" which fits quite nicely there. :)

    But I think it’s quite irrelevant. Barbie (from whom the phrase was inspired, for those that haven’t read the Language Log backstory), in her full t(w)een-consumerism, anti-education, brainwashing glory would probably never suggest paying for anything with *cash*. Obviously, you should be using a credit card authorized/co-signed by Daddy instead.

    And if your Daddy won’t authorize/co-sign a credit card for you to use? Well, I guess you’re just not really that cool. In fact, what the hell are you doing with a talking Barbie in the first place?

  30. Julian says:

    Way back when I was in school, I actually got a job once by being able to make change. The boss was convinced that only girls could do it. I was the first guy that had ever worked there.

  31. tsrblke says:


    You bring up a good point. I spent 5 years in Higschool and college working for a certian arch represented fast food joint, and I can tell you when I worked the morning shift (which started at 4:30AM.) after having gone to a football game the night before, I was tired (even if I went to bed at 8PM, getting up that early is hard on the sleep cycle.)  Throw in the mindless drudge of accepting money giving back money and handing out food for the next 9.5 hours and my mind was in shutdown mode.  It has nothing to do with raw intellegence or math training sometime, I mean I can do calculus, simple math should be that, simple.  It just that oddities catch you off ballance and your mind halts, why because you’ve been trained to read a register, why that instead of math?  Because you’ve also been trained to complete orders from start to finish on an average of 2/minute (no joke, I know it never seems like it works like that, because it does, but more on the lack of employee morale because of impossible goals somewhere else.)  So when when something comes up odd, it sorta shocks you more than anything.  I know sometimes when the register would goof, or I’d enter a wrong number there’d be a second freeze while my mind reset, then suddenly the answer would be there, because once the initial brain freeze ended, the math was exactly that, simple.  There is the general consensus that the people behind the counter are generally stupid, which I think is horribly off base, alot of them were/are like me, working their way though school.  We’re not stupid, we’re just sometimes fazzled because of unreasonable goals put forth by people in suites who haven’t worked behind a counter in decades.  I probably had more brain freezes working at Mcdonalds than I did taking calculus tests.  It’s all environment I suppose.

  32. jamie says:

    Investing is hard. Let’s go shopping!

    See if you kept your mouth shut you would have had a 244% return. It’s all about situational ethics.

  33. Mike Dimmick says:

    When I worked in retail, in an electronics store (Maplin, for anyone familiar with UK electronics retailers), I’d sometimes punch the Enter button to say that the customer had tendered the exact amount, even if they hadn’t, because I knew what the right change was.

    Someone (and I don’t *think* it was me) made a howler one time though as I recall that one of the tills was £50 down. That’s a piece of paper you don’t want to lose. (The rule was that large bills go straight in the separate locked cash box next to each till, so I can’t see how it could have been given in change!)

  34. Erbo says:

    I actually had to talk a young clerk at a pet store through the process of making change once, when he neglected to key the amount tendered on his register before pressing the button to finalize the sale and pop the cash drawer.  And this was back in 1989 or thereabouts.

    These kids today need to learn some dang math.  And they also need to get the hell off my lawn. :-)

  35. marius says:

    The way i do it is easier.

    Case 1. cents received > cents needed

    Dollars received = 5 Cents received = 20

    Dollars needed   = 2 Cents needed   = 15

    Then do the difference: 20-15 = 5 cents

    Do the difference for dollars: 5-2 = 3 dollars

    So you need to give back 3.05

    Case 2.

    cents received < cents needed

    Dollars received = 5 Cents received = 00

    Dollars needed   = 2 Cents needed   = 15

    Then take one dollar from the dollars ammount and do the difference: 100-15 = 90 cents

    Do the difference for dollars, minus 1 dollar that you took before: 4-2 = 2 dollars

    So you need to give back 2.90.

    But, in my country (Romania), people don’t even bother to ask for small amounts like 5 cents if the price is $2.05, it’s not worth annoying all the people waiting in line by making the client look through his pockets for spare change.

    In the second case, people usually ask the clients for those 5-15 cents, i guess our people are just smarter.

  36. Chris says:

    This brought back fond memories of working at a fast food drive-through when I was in high school. Most people rotated through the positions, meat-flipper, fry-cooker, money-taker, floor-mopper, etc.  For two years the only thing I ever did was work the register, because for two years I was the *only* person there who could subtract two numbers in his head. Making change without the aid of the register, which was often several cars ahead of the person actually handing me money, was a "rare gift" according to the manager.

    Learn mental math kids, it can save you from the worst of a bad job!

  37. telcor says:

    A person’s method of computing change is easiest to the person proposing said method.

  38. Dean Harding says:

    I think the critical difference here is kind of store you visit. Most people who talk about "switching off" or "going into the zone" while in their cashier’s jobs are talking about working at a high turn-over store (super market, fast food, etc).

    But that’s quite different to the situation Raymond describes where he walks into a specialty store, where there’s only a couple of people browsing and certainly no queue at the cash register.

    In that case, you’d better hope the cashier is not off on some other planet, thinking about the girls in class or whatever, because for a low-turn over store, the customer experience is a bit factor in whether you’re going to get repeat business or not.

    For example, I went into a kitchenware store the other day. There was four people in the store: myself, the cashier and two of the cashier’s friends. I assume they were her friends because she was talking to them the whole time I was browsing the store, making my purchase and giving her my money. I think she paused briefly to let me know the price. Needless to say, I’ll not be going back.

    So my point is that while you can possibly justify "zoning out" in a supermarket where you’ve got a queue of customers waiting at the checkout, I don’t see how you can justify it at a specialty store where you want your customers to actually come back again.

  39. Dave says:

    So my point is that while you can possibly justify "zoning out" in a supermarket where you’ve got a queue of customers waiting at the checkout, I don’t see how you can justify it at a specialty store where you want your customers to actually come back again.

    Once again, we’re talking about a teenager working a part time job making minimum wage.  They’re just trying to pass the time and collect a paycheck.  They could care less about whether you come back again.  What makes you think that someone making minimum wage at a job that’s only supplying them with a few extra bucks of spending money should really care about your shopping experience?  Of course, you could do all of your shopping at places that have high paid cashiers but then you’d probably complain about the high prices.  

  40. David Walker: "Building up from $2.15 to $5.20 is so clear that I can’t even make it hard no matter what I try."

    Exactly, it’s bonehead simple when presented that way. But to me, as a cashier, there’s another variable in play. When I report that the balance due is $2.15, I expect to receive either exact change, $2.25, $2.50 $3.00, $5.00, $10.00, $20.00, $50.00 or $100.00. Those nice, familiar amounts after the decimal, or the comforting round numbers, make everything quite tidy. What I think threw me was the variance from this very simple pattern when I’d receive $5.20 from the customer. I’d stand there, drooling on my shoes, *knowing* that it was simple math, but it just didn’t *fit* the pattern. The stress of that realization only made matters worse. This never happened with patient customers, but rather those types with the personality of a thermonuclear bomb who were already adept enough with calculation to figure out how much to hand across the counter so they’d get a small amount of change in return.


  41. Dean Harding says:

    Once again, we’re talking about a teenager working a part time job making minimum wage.

    No, you’re looking at it backwards. I’m talking about a customer going into a shop and having to deal with a cashier who doesn’t want to be there. If the cashier can’t even add up the change correctly, then why should I go back to the store?

    Like I said, the expectations of a high-turnover store are quite different to those in a low-turnover store.

  42. Igor says:

    Raymond, I think you are too hard on that clerk whatever the conditions were at the moment.

    Next time you should first _ask_ if those extra 20 cents mean anything to him and if he says “No” then it is pretty clear that:

    a) He would just get confused

    b) He has enough small notes/coins to give you an exact change

    I always ask and I never had such a problem here. On the contrary,
    if you explain your intention while keeping it short and simple so as
    not to annoy other people in line, then they will most likely say “yes”.

    That said, I always try to help a clerk but I first study how they work with a person in front of me while I am waiting in line.

    Depending on the “input” observed I have several modes of operation:

    1. If I see them struggling to find a change (because they have been
    left only with bigger notes) then I try to find an exact amount I have
    to pay in advance. After all it will help me to get out of the store

    2. If I see that they are very fast and that they have enough small
    notes/coins and the line behind me is long, I just give them the next
    higher bill because that’s the fastest way out in such a case. Those
    fast types usually ask if I have a change to help them do it even
    faster if the change amount is convenient/common.

    3. If I see that they are slow, but have enough small bills/coins
    and the line is short, I again give the next higher bill. They punch it
    in and the register tells them the amount they should give back to me.

    4. If they are slow, out of small bills/coins and the line is short
    I try to give them an exact amount. That is better than having to wait
    for them to ask other clerks or the manager for a change. If I don’t
    have exact amount I offer what I have to simplify the change and they
    usually accept.

    Finally, regardless of whether they are fast or slow, as long as
    they have enough small notes/coins, and there is no line at the moment
    I take some time to minimize my change even if it means explaining some
    basic math to them.

    I might have overlooked some combinations but it is really more
    about judging the situation and people involved which comes with some
    practice, not writing a truth table because certain inputs can be fuzzy
    requiring human instead of Boolean logic.

    [I too change my behavior depending on how many
    people are queued up behind me. If there is nobody behind me in line, I
    will minimize change. If there are a lot of people in line, then I
    won’t. In this case, there was nobody else in line, indeed, barely
    anybody else in the entire store. Under those conditions, I will
    minimize change. (And if the cashier, say, apologizes to the person in
    front of me, “Sorry, I’m going to have to give you five ones,” then I
    will pay with a $5 bill.) -Raymond
  43. N. Velope says:

      I learned how to make change from playing Monopoly and having to buy properties or houses with a $500 bill and get change from the bank.  It was easy if you start with the value of what you bought, then take out bills that added to that up to $500 again.  If I made a mistake the other players would jump on me (well – a mistake in my favour).

  44. Igor says:

    Dean Harding said : "I assume they were her friends because she was talking to them the whole time I was browsing the store"

    And what if those two were repeat customers? Wouldn’t you want her to chat with you like that?

    There are certain situations when I am impatient and I do not hesitate to interrupt such talk if I am in a great hurry.

    However, I am avoiding to do that just to get "respect". Those are human beings too, not mindless drones, they need to vent sometimes. In most cases, if you show some respect and wait for them to finish, they are much more polite/respectfull with you later.

    On the other hand, if you are one of those who demand respect and don’t mind stepping on other people’s heads to get it, then go to some expensive store and you will get all the "respect" and butt-plugging you can afford.

  45. Cooney says:

    When I was a teenager, I worked in a position similar to a cashier.  I’m not saying you’re one of them but I thought it was pretty funny when we’d get customers who felt the need to use their math skills to prove their intellectual superiority over teenagers getting paid minimum wage to work mindless jobs.  I would’ve been happy to compare SAT scores with any of them.

    When I do it, it isn’t because I want to feel smart. I just want to get rid of accursed pennies.

  46. Dave says:

    When I was a teenager, I worked in a position similar to a cashier.  I’m not saying you’re one of them but I thought it was pretty funny when we’d get customers who felt the need to use their math skills to prove their intellectual superiority over teenagers getting paid minimum wage to work mindless jobs.  I would’ve been happy to compare SAT scores with any of them.

    When you’re working that sort of job, your brain isn’t actively focused on it.  You’re thinking about what you’re going to do after you get off work, or about some girl in class, or whatever.  Giving change turns into an automatic activity that doesn’t require active thought.  It’s really not surprising that your cashier didn’t do a sanity check on the excessive amount of change because, once you’ve worked a job like that long enough, you don’t even actively see what the customer gives you.  You don’t consciously know how much the customer gave you.  Once you get in the zone, you’re working on autopilot.  

    The majority of the time, a cashier is handed either whole bills or exact change so these are the cases that the automatic processing learns to take care of.  When a customer throws in some unusual combination of change (like $5.20 for a $2.15 item), it requires you to switch off autopilot and wake up from whatever you’re daydreaming about to figure out what’s going on.  If you don’t wake up, then you end up mindlessly giving some amount of change based on an approximate match to a previously encountered situation.  If you do wake up, it takes a moment to get caught up on what’s going on so it’s not surprising that your cashier had to stare at the numbers for a while.  

    Adding to the confusion, customers who gave an unusual combination of change often did so because *they* screwed up.  They read the price wrong or added things up wrong or grabbed the wrong bill or coin.  I’d have customers hand me $2.10 for something that cost $1.90 and then get confused by why I handed them two dimes back.

  47. Merit says:

    The various comments about the cashier zone are right on.  I was a cashier in a high volume grocery store and there were times when I had no idea that a customer had given me a $20 instead of a $10.  You basically had to take their word for it and hope your drawer came out right at the end of your shift.  I can only remember being off      by $10 once in about a year so apparently most people are honest about that.

  48. Puckdropper says:

    When it comes to balancing friends and customers, I’d like to say it takes talent.  I have a friend who has this talent, he can keep a conversation going with you while helping a customer and never letting one or the other feel like they’re being ignored.

    Sometimes we programmers have to remember we’re special cases.  I wouldn’t be surprised to find 90% of us are lightning fast at adding up any two 2-digit numbers.  Whether it’s conscious or not, we use that all the time.  (What’s the maximum here?  Hm… sounds like a place for a FOR loop.)

  49. 640k says:

    I think there is a world market for maybe five calculators.

  50. When I worked in a pub, I often used to convert the price of a round into binary or hex in my head, for no very good reason. On one occasion I told a young female student from the nearby university, "That’ll be two to the power eight plus two cubed pence, please." She gazed at me in absolute horror, then cried out "But I’m only studying Fine Art!"

  51. Phill says:

    When I worked in a newsagents while in school I used the method described by Raymond. I found it worked well and required little thought. I found it hard to keep track of pennies being left by customers during busy times though, I had to remember to put them all into the poor box before the end of the day – I hated even being a couple of pence out!

    I think the problem of poor Maths skills is incredibly wide-spread however. While in college, I briefly thought a class in Excel for adults. While teaching, I used an example with percentages in it. I could see some blank faces so I turned to the class and said "let’s say you’re out shopping and you see something you like for £100 with a 20% discount – how much is it?"

    I received a confused look along with a response from one of the ladies: "I just buy it – 20% is good, right?"

    I honestly couldn’t believe that adults could not get their head around percentages. I thought that the problem was with the formula so just wanted to explain away the percentages part quickly. I saw that I had deeper issues on my hands…

  52. Required says:


    If you’re rounding to the nearest dollar you don’t truly understand the algorithm.

    You wouldn’t pick out .85c to add to 2.15, you’d pick out 5c to add to 2.15 so that the cents of what was given and the temporary value are equal.

    2.15 + .05

    2.20 + 1

    3.20 + 1

    4.20 + 1


  53. Ben Cooke says:

    I have often noticed that I tend to be guilty of the same thing when I’m the *customer*. I’ll round up to the nearest bill I have in my wallet (£5 is the smallest paper denomination in the UK), hand over the paper and then just pocket whatever I get back without checking it.

    I’ve probably been short changed and over-changed a bunch of times in my life without even noticing.

  54. David Walker says:

    "the register says what they need to give back…"

    Even if you want to minimize change, if you give it to the cashier quickly enough, they should tell the register that you gave them $5.10 for a $2.08 sale, and the register will tell them that you need to get back $3.02….  instead of you giving the cashier a five, and getting back … two ones and a bunch of change.

  55. Bryan says:

    I guess it’s a matter of where you live.  The local craft stores where I live are almost as busy as the Grocery Stores.

    Probably because there’s only like 2 – 3 good ones, so you really don’t have any choice.  Also, the craft stores are absolutely huge.

    You have to wonder if low volume doesn’t have a different set of problems.

  56. J says:


    "In the second case, people usually ask the clients for those 5-15 cents, i guess our people are just smarter."

    I love how you just described simple subtraction in your post as if it were some brilliant and novel approach to giving change, and then went on to imply that your people must be smarter than everyone else.  Thanks for making my day!

  57. Joewood says:

    Reminds me of the time I went to a store to purchase 2 items which were both 50% off. The girl behind the counter had trouble with that one, ending up using a calculator.

  58. Nawak says:


    "i guess our people are just smarter."


    "100-15 = 90 cents"

    Hmm yeah, so much smarter! ;)

  59. Scott says:

    That why you hand them the change first.  Drop the change in their hand, then place bills.  I worked a drive-thru for many years, and it’s the best way.  When you’re getting the change, you don’t want to scoop the change off the counter, and if it’s balance it on top of inside the bills, they’ll fall off.

    If you hand the bills first, they’ll enter the bill amount before they even see the change.  Asking them to void and start the transaction over is bad.  I won’t ever hand them extra change if I see they’ve already started entering it in.

  60. I too change my behavior depending on how many people are queued up behind me.

    I don’t, because my solution is using my credit card in all cases.

    • Easy for the clerk.

    • No change problem, no old bills problem.

    • Hygienic.

    • Stores don’t discount when you pay cash, though they make less with CC sales, paying with card makes me feel not cheated. Here in Turkey, you also get back some of that commission for using the card.

    • You see the transaction in your statement, nicely listed. Helps me see and manage where I spend my money…

Comments are closed.

*DISCLAIMER: I DO NOT OWN THIS CONTENT. If you are the owner and would like it removed, please contact me. The content herein is an archived reproduction of entries from Raymond Chen's "Old New Thing" Blog (most recent link is here). It may have slight formatting modifications for consistency and to improve readability.

WHY DID I DUPLICATE THIS CONTENT HERE? Let me first say this site has never had anything to sell and has never shown ads of any kind. I have nothing monetarily to gain by duplicating content here. Because I had made my own local copy of this content throughout the years, for ease of using tools like grep, I decided to put it online after I discovered some of the original content previously and publicly available, had disappeared approximately early to mid 2019. At the same time, I present the content in an easily accessible theme-agnostic way.

The information provided by Raymond's blog is, for all practical purposes, more authoritative on Windows Development than Microsoft's own MSDN documentation and should be considered supplemental reading to that documentation. The wealth of missing details provided by this blog that Microsoft could not or did not document about Windows over the years is vital enough, many would agree an online "backup" of these details is a necessary endeavor. Specifics include:

<-- Back to Old New Thing Archive Index