msdn blogging, ie7 and the future

My posting rate has declined somewhat since we shipped IE7.  It seems posts come in bursts.  I have a theory for this. 

At the beginning of a product cycle we are focused on planning, architecting, and implementing.  There is not much to talk about, since we can not talk about anything that has not been publicly announced yet.  A few posts on context-free problems may trickle out.

Then we ship a Beta and the bugs start rolling in.  This is where things get interesting.  Lots of problems to solve translates into having lots of interesting topics to post about.

Then we lock down for the final release.  We focus on fixing the last few compat issues, localizing, branding, and marketing.  The devs start dreaming about the next release.  Then Thanksgiving and Christmas come a long and we're all taking vacations... Now the new year has started and we are back in the planning phase, which I can't talk about.

Imagine IE is a ship.  We just got back into harbor; we delivered our goods.  Some of the crew has moved on; we have taken on some new members.  Some are still trickling back in from shore leave.  Some of us are focused on fixing damage from the last voyage.  Some of us are scrubbing the decks and taking care of day-to-day business.  Some are dreaming about our next destination and what the voyage there will look like. 

And from there the metaphore starts to brake down, but I though it was pretty good.  I just like big ships.  Anyway, we are hard at work.  I have a lot of hard thinking and planning to do.  I will not be posting until I have something interesting to say; but I have faith that I will, indeed, post again.  At the very least I will have to explain the decisions I am about to make when we ship our first Beta :) -- in the mean time, there is always the IE Blog.  (If you're just interested in what I'm doing, feel free to drop in on this blog, which has an entirely different focus.)

I also wanted to do a small summary of IE7, just for some personal closure. 

Overall I think IE7 is great.  I personally use it at home, which is my bar for everything we build.  I have worked on a product (which shall remain nameless) that I did not use at home.  Those who know me know my philosophy on installing software: just don't do it.  But I have great faith in IE7 and I find myself cursing machines I have to use that have not installed it (I'm looking at you CS Department... ).  Sure, there are some things that still need work, and I am happy to see us addressing them in our planning for the next version. 

In the things-I-worked-on department, I am thrilled that the favicon code I wrote is performing well and web server administrators are not yet calling for my head on a pike. 

I think it is great that the Quick Tabs feature has been so well recieved.  For those who don't know, QT was originally implemented by two of the most industrious Interns I have worked with, Kevin and Eric.  They wrote a lot of code.  I mean a lot.  They prototyped it (by which I mean they had full working versions, just minus fancy window dressing) in three different technologies.  They blew way past the spec and saved a great feature from the cut list.  When they left all I had to do was put some drop shadows in, tweak some aspect ratios and fix some performance-related issues (and some other bugs, as which the tester would be sure to mention :P). 

I think that tabbed browsing beat everyone's expectations and is, in my opinion, the new gold standard in tabbed browsing UI.  It is very usable UI.  There were some very tough trade-offs, places where the behavior people expected split fifty-fifty in complete opposites.  There were some incredibly challenging app-compat issues to sort out.  I use it everyday, and after I changed some options (Tools->Internet Options->Tabs->Settings) it works pretty much the way I want it to. 

I am still not 100% happy with the Delete Browsing History dialog layout, but we made vast improvements, the most important of which was changing it to use the copy engine infrastructure so that the deletion operations no longer happen on the UI thread.  About 0.5% (which looks small, but is huge considering the size of the data set) of all IE crashes that were reported to Microsoft were people who had killed the IE process because clearing the cache on the UI thread made them think the process was hung. 

And the features that got cut, well, I think we made the right decisions.  May they rise again some day.  And I am sure there are some other things I forgot.

In the mean time, weigh anchor -- full speed ahead!