Granted, if you're getting very short exploding offers from big companies who are almost certainly hiring for a role continuously or in bulk, that would leave a bad taste in my mouth too. But if you're interviewing at the kind of company that may have budget for just a single new hire, and multiple people are interviewing, a reasonable expiration makes sure we're both mutually serious about eachother. I want to hire you enough that we've put together a (hopefully) compelling offer, you want to work on the team enough that you (hopefully) either feel good accepting the offer quickly or raising your concerns so we can discuss. If the offer isn't right for you, sitting on it as a backup in hopes that you can find something better is detrimental everyone involved.