Today, my JTE asked me the difference between these two ways to say the same thing. At first my response was they’re exactly the same. They do mean basically the same thing, but then I continued to ponder this. If they’re exactly the same, why does the students’ use of “had better” sometimes strike me as strange?
My thinking continued. Where do I hear “had better?” It seemed that I usually hear had better from older people. I was thinking like grandmother types. I continued to ponder. Does that mean it’s English that older people would use? Or does that make it English that you use to someone who is younger than you?
When do I use it? It seems like I would usually use it with someone if it were something that was super important for them to do or there would be bad consequences. For example, “you had better take your coat” (on a cold day). Except, I think I would still use should. Where would I use this phrase? In what contexts would I use this phrase? I’m still not even sure.
The eventual explanation I decided on, was that you’d use had better with people younger than you and should with your peers and for older people, I’d usually stick on an “I think” (i.e. I think you should . . .). Even that, seems a little funny, because I rarely choose to use “had better” and would use should almost across the board, with a few exceptions.
What do you think? Was my explanation right? Are my thoughts crazy? (probably!) Is there something I’m missing or an official explanation somewhere?