Learn English – Didn’t or haven’t or hadn’t

past-perfectpast-simplepresent-perfect

I'm trying to write a sentence but can't decide which is the correct form:

  1. For anyone who didn't notice, he is tall.

  2. For anyone who hasn't noticed, he is tall.

  3. For anyone who hadn't noticed, he is tall.

I think the third one is incorrect because there aren't 2 actions happening the paat one after the other.

I am doubting between the first two. There is no specific time so "hasn't" should be correct, but I can't see why "didn't" isn't correct either.

Truly, I have no clue how to decide.


More Context:

If it matters, the context is a friend wants to post a pic in twitter of a group of friends, and jokingly say on one of the friends "For anyone who didn't notice, he is tall".

Best Answer

Out of the three given choices, the first choice is the most suitable. The usage of didn't tells us that there is an aura of completion of the task, while hasn't / haven't tells us that the task may still be ongoing. I'll try to illustrate this better with an example.

  • I haven't received my pizza.
  • I didn't receive my pizza.

Think of it, you would use the first sentence while you're still at the store and you want to complain to the cashier, "I haven't received my pizza, can you please hurry up?". The second statement would be better suited when you want to report this incident to a friend, "I went to that pizzeria yesterday but I didn't receive my pizza with everything as a topping."

If you really want to use the second statement, it can be better modified as:

For anyone who hasn't noticed yet, he is tall.

Both the sentences then would have fairly similar meanings with respect to the time-frame in which they took place.