Thursday, June 23, 2005 10:39 PM
by
malx
Trustworthy Computing through Trustworthy Practices
Today I read a newsgroup post by an academic at my former university,
who I know reasonably well, and who I used to work for. In that
post, he talks about things that Microsoft has done to him, and how he
views Microsoft today; the fact that the subject he is lecturing and I
used to tutor is a Linux subject should be a good indication of those
views :).
The funny thing is, I read through it, and can't argue with it.
Although I disagree with his interpretation of what's happening at the
moment (discontinuation of UNIX/Linux support for new sales of Sybari
products), his previous experience dealing with Microsoft is all too
familiar. Trouble getting solid documentation, not adhering to
standards properly, and of course, the legal challenge brought by the
US government.
I remember my first Windows SDK shipped with a coupon for the DDK; that
coupon had a space where you had to write down why you wanted a
copy. This may have been just for statistics, but the idea of
justifying why you need low-level product documentation seems a little
strange.
On Tuesday Steve Ballmer was speaking to a bunch of us introducing the
Engineering Excellence/Trustworthy Computing Forum. To summarise
one of his points, Microsoft can't deliver trustworthy computing to
customers who don't trust us; computers today will store and
communicate the most intimate details of our lives, our financial
information, and data related to our identity. When Microsoft
talks about security, everyone needs to be able to believe that we're
doing it with customer interests in mind - if customers don't believe
we're serious about security, they'll switch to another product, not
regularly apply patches, and not follow procedures designed to minimise
risk. To deliver Trustworthy computing, Microsoft needs to adhere
to the strictest business practice guidelines to foster trust and
respect.
These two things came together in my head. Sure, when I bought my
first SDK it retailed for around $1,000. Today, that
documentation is freely available on the web, as are the
tools. Compilers and linkers used to cost that much too. Now, they're a
free download. So are
debuggers, and
debugging symbols. The
DDK is available for the cost of shipping.
If documentation for a particular Windows API or topic isn't public,
then the other teams at Microsoft aren't allowed to use it
either. Required by settlement, enforced at Microsoft. That
helps provide great feedback for platform features, so that everyone
else can benefit too.
Today Microsoft leverages standards in nearly all of our products. The recent announcement of
Office moving to an XML-based file format should serve as an example, although there are many others.
NFS support is another free download.
Standards deliver the best experience to our customers, allow them to
leverage existing tools, and deploy new Microsoft solutions. That
provides great opportunities for Microsoft into new markets, and
enables a smooth transition for our customers. It's win-win.
A lot of things have changed since the Antitrust case. It's
visible looking around campus culture; culture is not an easy thing to
change with such a large group of people. But here I am talking
about these things, with a link so that anybody can contact me, ask me
questions, ask for a feature, or anything. I read all of the
posts here, and all of the comments I get. I follow them
up. I've dug into source code to find answers for people multiple
times - not because they pay me, but because Microsoft now understands
the benefit of participating in the community to achieve great results.
Maybe we have the government to thank, in a twisted kind of way.
Or maybe the open source community has shown the value of software as a
community activity. Or maybe Steve's right - for Microsoft to
grow into new markets, customers have to trust us more than ever, which
demands ever more openness, honesty, and accountability.
Great software is the beginning, but a great user experience is what ultimately matters.