<story><title>How do I create a topmost window that is never covered by other topmost windows?</title><url>http://blogs.msdn.com/b/oldnewthing/archive/2011/03/10/10138969.aspx</url></story><parent_chain></parent_chain><comment><author>RyanMcGreal</author><text>This is a classic &lt;i&gt;arms race&lt;/i&gt; - an escalating conflict over a &lt;i&gt;positional good&lt;/i&gt; that by definition can only be enjoyed by one entity at a time. Other positional goods include popularity in high school and military superiority (from which we get the term &quot;arms race&quot; to refer to the escalating efforts of multiple agents to achieve the good).&lt;p&gt;Generally, the only effective way to address an arms race is regulation: an encorceable arms treaty, say, or a strict school uniform.</text></comment>
<story><title>How do I create a topmost window that is never covered by other topmost windows?</title><url>http://blogs.msdn.com/b/oldnewthing/archive/2011/03/10/10138969.aspx</url></story><parent_chain></parent_chain><comment><author>DanielBMarkham</author><text>I was going to chime in with my own ideas about solving this -- you can play this game all day long and I&apos;m sure inciting that kind of discussion that was the intent of the author -- but this story about one particular request accidentally illuminates a key problem with Windows: too many developers and programs competing for one set of user eyeballs.&lt;p&gt;You&apos;d think that would be a good thing, but far from it. What happens is that every little developer writing any kind of tiny little app 1) wants money, and 2) wants to remind you how cool they and their app is by annoying you in various ways. Sadly, the annoying part is usually done without any unkind intent on the developer&apos;s part at all.&lt;p&gt;I have no problem with the money thing, aside from it being annoying to pay for code that was just copied from MSDN and stuck in a wrapper, but the blinky-beepy-gotta-be-on-top thing is driving me nuts.&lt;p&gt;The author uses an example of one guy who &quot;knows&quot; he wants the screen all the time, but the real underlying architectural problem is much more subtle (and worse) than that. Every program wants to tell the user something, maybe only once a month or so. That&apos;d be fine, if there weren&apos;t dozens if not hundreds of programs running on the average setup.&lt;p&gt;I&apos;ve been using Ubnutu for the last couple months, mainly because Windows has become more like a video game, an XBox, than a serious operating system to me. When I started my windows O/S up the other day to do some multimedia chore after only two weeks without running it, &lt;i&gt;every program I ran had updates and notices for me to attend to, including Windows itself&lt;/i&gt;. That made a 5 minute job take 2 hours, including the 15-minute boot time which was drug out because once I bought a Sprint modem, Sprint in its infinite wisdom wants to intercept and rework my network stack so they can &quot;help me&quot; use my computer better. This involves Sprint needing updates, resetting my wifi preferences every time it runs, forcing itself to run every time on boot, rewriting my access screens, and doing something with memory, thread, and priority allocation during boot that takes 5 minutes and can only be described from the user&apos;s standpoint as evil. And for all of my invective, I know they didn&apos;t mean it that way! As far as I know, they are honestly trying to provide assistance (assistance with lots of branding and subtle control over user behavior. Sigh)&lt;p&gt;This is crazy. Windows has become like the web, only with one web page with everything you might ever want to do on it crammed in there and you can&apos;t navigate away. Somebody at Microsoft had better get on the ball and get rid of atomic updates, garbage collection, and vendor/programmer-induced interruptive bullshit. (Yes, there are ways to eliminate GC and the nightly install crapfest, but that&apos;s a longer story) If they don&apos;t, Google is going to eat their lunch. I&apos;m afraid you can&apos;t have one O/S that is both extremely complex and consistent across millions of different use-cases. At least not structured like this.</text></comment>