It was an interesting interview on several points, so I'll only summarize the things which made me stop and think for a moment.

Mr. Mundie talked about how Live was a change for Microsoft. When you
think about MSN, you might be tempted to say, "They're just expanding
on it to compete with Google and others." Yes and no. Microsoft had
operated under a business model where folks would buy a perpetual
license for a particular version of software. Now they are
transitioning to include a platform with deployed services and
applications. I think back to a few weeks ago when my pastor brought
this up at a men's Bible study. He's in his 60s and I'm in my 30s and
we both understood and accepted this change in how computing seems to
be going. But what was surprising is the young men of the group, who
have grown up around computers, had a hard time wrapping their heads
around this idea that they wouldn't be given a CD to install new
software but rather would connect and receive the software by
connecting online. Those who got Half Life 2 via downloads are probably
thinking, "Yeah, some are already doing that so why is this news." I
guess it's just a reminder that it does represent a fundamental change
in business.

He also commented on changes in the next 3-15 years (that's his range
of focus within MS), and one of the ones he saw coming was our concepts
on microprocessor architecture are likely to change. Yes, we'll still
be able to pack more transistors into the same area, but where we are
slowing down is with respect to clock rate (no pun intended). So how do
you get more processing power? We get it by going to parallel
architectures like we're seeing with dual core. This has an impact on
the rank and file programmer because that means design challenges
around parallel processing won't be relegated to high computing and
large datacenter environments any longer. He also thinks we'll see more
specialized architectures and more diversity in hardware. What this
means for Microsoft is that Microsoft must develop new programming
tools to help developers build highly concurrent applications the right
way.

A question came up about length of release cycles and his comments were
on how software engineering is not much like traditional engineering
disciplines. This is very true. He gave as an example formal
composition. Other engineering disciplines continue to build on the
work of others and software engineering does to a limited extent. But
we don't have very formal structures where we can modularize
components, with structures that we continue to re-use. On the other
hand, look at bridges and buildings and how certain "patterns" are
repeated with just a change in materials. He feels we need to improve
on software engineering as a discipline which is, of course, something
that has been echoed in the industry for quites some time now.