The Best Massively Multiplayer Real-time Online Game of All Time

Back in college, in 1996 (I believe) I frequently played the pre-release version of SubSpace, a massively multiplayer online game that was originally designed as a project to test the affects of lag over a modem. If I recall correctly, I first played using a 14.4k baud modem… and it worked. Here’s a recent screen…


Interface Smuggling

While I’m on the subject of COM and extension compatibility, another issue that affected a small number of extensions in IE7 involved passing an interface to a worker thread without first marshalling the interface using CoMarshalInterface() (or the longer and more convenient form, CoMarshalInterThreadInterfaceInStream()). IE uses the uses the Single Threaded Apartment (STA) model for its…


Spy vs. Spy: Revenge of the Tooltip

On Friday I talked about some of the problems with unbalanced CoInitialize() and CoUninitialize() calls and how to debug an unbalanced CoUninitialize inside IE7. At the end I mentioned that using IInitializeSpy in an extension to “fix” an unbalanced init or uninit was a bad thing and to never do it. Here’s one story that illustrates…


Space Shuttle Analogies

First, congratulations to everybody who contributed to the successful launch of the space shuttle Discovery this evening. I watched online via. NASA TV and it’s been a long time since I’ve watched a “live” liftoff. In some recent meetings people have been making analogies between the space shuttle and complex software such as Windows and Internet Explorer….


My Toolbar or BHO is Causing IE7 on Vista to Crash on Close. Help!

During the development of IE7, one problem we discovered was that a small number of extensions have unbalanced CoInitialize() or CoUninitialize() calls. On IE6 they sometimes lucked out, but due to architectural changes in IE7 these would cause crashes, hangs, or erratic behavior. Unbalanced CoInitialize() calls seem harmless enough at first glance. During shutdown COM…


IE7 Tabbed Browsing Q & A

I’m working on some long-overdue posts about tabbed browsing, but before I get too deep into them what I’d like to know most is: what do you want to know about IE7’s tabbed browsing implementation? If you have questions, please post them as comments. For the smaller questions I may reply as a comment, but the…


IE7 Menu Flickering / Toggling Glitch

Just before we shipped IE7 we heard sporadic reports of a “Heisenbug” where users would click a tab or click in the address bar, and the IE window would start shaking (or “flickering”, or “menus bouncing up and down”, depending on how users described it). We researched the bug and contacted some end users, but it remained…