I knew Hanlon’s Razor: "Never attribute to malice that which can be adequately explained by stupidity." And the variants attributed to Heinlein, described on the same page as adding "… but don’t rule out malice." or "… but keep your eyes open."
But I only just now came across Grey’s Law, which follows the flavor of Clarke’s Third Law: "Any sufficiently advanced incompetence is indistinguishable from malice."
One example that irritates me too is focus-stealing popups. Grr, no, I didn’t mean that enter key to select "Reboot", I was just finishing a paragraph or writing a space. Please, Mr. Callous Software Developer, just leave me alone! I don’t care how important you think your application is — it’s never important enough to pop up on top without warning. No. Bad developer. Down. I said down. Stay.
As a counterexample, I really like how Windows handles the "are you sure you want to run this application?" dialog. Not only does it not steal focus… even better, it ignores the first mouse click when it gets focus. That’s right, if the window is visible but not active, and you click on the "Run" button, it doesn’t also push Run — it merely makes the window active. Then if you hit Run again, it runs. Yes! Good developer!
To paraphrase Hill Street Blues: Let’s be thoughtful out there.
I totally agree that focus-stealing popups should be gone forever. It’s happened way too many times that I restarted my computer by accident or sent a message to the wrong person on IM because another window stole the focus.
It’s definitely nice that Windows recognizes this problem and does something to counteract the annoying behavior. With that said, however, I don’t think it’s necessarily good usability to simply ignore a mouse click. At least I happen to know several non-techie people who would go "Why is it taking so long. I just clicked the button." Of course, most people would then just click the button again, but shouldn’t we really let the user know why he should click the button twice rather than having him discover it by himself and be puzzled forever? (I’m imagining a simple balloon tip would be enough to tell the user.)