When you're displaying a menu item or a dialog option, and the option is not available, you can either disable it or you can remove it. What is the rule for deciding which one to do?
Experiments have shown that if something is shown but disabled, users expect that they will be able to get it enabled if they tinker around enough.
So leave a...
The commentary after my entry on taskbar grouping drifted into people asking for still more features in taskbar grouping.
Writing the code is the easy part.
Designing a feature is hard.
You have several audiences to consider. It's not just about the alpha geeks; you have to worry about the grandmothers, the office workers, the IT dep...
For the third year in a row, the United Nations' Development Program has ranked Norway as having the best standard of living in the world. Norwegians beat out all others because of their high levels of education, pay and life expectancy.
In a totally unrelated story: Norway world leader in casual sex.
Of course, Norway isn't all candy ...
(Even if you don't read Swedish, you may enjoy the links at the end.)
Några personer har frågat mig varför jag läser svenska.
Historien börjar för många år sedan. Jag läste tidningen och såg att det fanns avgiftsfria norskalektioner i Ballard kyrkans källaren. (Ballard är en d...
As if there isn't enough to worry about.
Everyone knows about the dangers of open SMTP relays. But how many people realize the dangers of an open HTTP relay?
Many web sites do arbitrary redirection. If I were a spammer, I could create a link to myself that redirects through some well-known web sites, thereby granting my spam link false aut...
There have been a few good articles about threading models, one from Eric Lippert and another from Larry Osterman. Go off and read them if you haven't already.
It's really not that complicated. If you permit, say, , then you're saying, "I'm okay with other people reading this file while I have it open." And if you leave off the flag, then you're saying, "I do not want other people reading this file while I have it open."
Now all that's left to do is work out what that means.
So suppose you omit t...
Remember that there are two types of scrollbars.
One is the standalone scrollbar control. This one has its own window handle, and consequently can be given focus and all those other fun things you can do with window handles. To manipulate them, pass the handle to the scrollbar control to the appropriate scrollbar function (SetScrollInfo, fo...