Linguists call "I think" when used this way a "stance marker"[0]. It's definitely not redundant: it reveals pragmatic information[1] about the context you're speaking in, namely by tempering your stance and revealing your level of confidence in the statement you're making.
"I think" is not always redundant. It serves the same purpose as "in my opinion" or "I'm pretty sure", which is to temper the confidence of the statement or indicate an unverified intuition.
Example:
"Hey, where's the emergency toilet paper supply?" "I think it's in the cupboard under the stairs."
I think (but am not sure!) that this use of "I think" is intuitively obvious to most native English speakers, especially when paired with voice tone.
Obviously, if you're sure that a statement is true, then adding "I think" only weakens your point. Unskilled writers might not know to avoid it in (say) an essay, which may be why you heard that advice in school.
It is not always redundant. It can be used to politely signal that you may be wrong about something you are asserting, even when you are sure about it and everyone knows you are sure. This is especially helpful when you have visible authority over the other parties in the discussion.
I was taught this too, but it was more of a guideline for students who got away with writing basically substandard essays in high school. It was like having to teach Javascript the Good Parts to kids that just started every sentence in a paragraph with ‘I think that ...’.
i meant exactly what i said: it's a humble qualifier . "I think" functions as an admission of fallibility. it transforms a certain claim into a proposition subject to change. its purpose is rhetorical rather than formal.
Quoting the linked article: "I've thought for a long time that, for some types of apps, a Mac app would do as well as an iOS app." Isn't it pretty clear that when he's asserting that the relative downloads of NetNewsWire for iOS vs. macOS "confirms" that thought, he's (a) describing that as his thought, rather than trumpeting it as an immutable fact, and (b) both admitting that this is just one piece of data ("admittedly just one app") and confining even his hypothesis to "some types of apps"?
tl;dr: I get what you're saying, but I think you're giving too ungenerous a reading in this specific case.
See this for example: https://www.tandfonline.com/eprint/SC59wwEkK64tvQsDb9hC/full
[0] Here, "stance" means: https://en.wikipedia.org/wiki/Stance_(linguistics)
[1] For more info, see here: https://en.wikipedia.org/wiki/Pragmatics