Following Will Robertson's admission that Fwiw, i'm not aware of any troubles with a missing \makeatother, but you're right. It's a bad habit of mine to omit it, and my own progressive slackness about the same thing following my realisation that I never see it matter, I wonder how important the \makeatother discipline is?
The worst consequence I can think of for experienced users from slackness about closing with \makeatother is that one's slackness might spread to omitting \ExplSyntaxOff with expl3, which is very far from trouble-free. But that's not a mistake anyone is going to get used to making.
The insidious worry is that not following the discipline means that some people might become unclear about the distinction between "package/Knuth namespace" and "user namespace".
But I can't say that either of these considerations seems very urgent. It doesn't seem important in the same way as such a programmatic discipline as eliminating avoidable state in interfaces. Is there something more compelling?
\ExplSyntaxOff! – Joseph Wright Feb 22 '11 at 18:59