[Microsoft] Day 1 Afternoon
At lunch, I got to meet Scoble, which was pretty cool. He was wearing a blue Firefox shirt for those
that are interested. During lunch, he and his co-worker talked about
Channel 9 and what they're doing with it. Channel 9 is named "Channel 9" because this is the channel
that United (the airline) uses to allow passengers to listen in on the pilot's conversations. It's supposed
to be an avenue for folks to listen in on what's going on at Microsoft.
Now we're sitting in a talk titled Developer Community Outreach Efforts. The speaker is
named Sanjay. He's the VP of Worldwide Developer Evangelists, of which there are around 1000. Sanjay
believes that MSDN is way too large. It does have a lots of interop
and migration content for those that are interested.
Sanjay's trying to get ideas from us on what they can do better. The general feeling from the room
seems to be "why should we help you", "what's in it for us" and "why do you care now, but not before".
It's a tough room for sure. I don't seem much point in this whole talk. A lot of folks are telling
this guy what he (and Microsoft) can do to become better to be better citizens to the programmer
community at large. A lot of the conversation is centered on accepting open-source and providing
a clearer message about the platform (should be inclusive, not exclusive).
SQL 2005 and the Developer
Now we have a guy (missed his name) that's talking about how SQL Server 2005 will allow you to expose
web services directly from your database, without IIS involved. Apparently, it exposes queries and
stored procedures as web services using a native Windows DLL.
Ben asked about benchmarks for SQL 2005, specifically against MySQL and PostgreSQL. The MS guy
says that these vendors will need to do the "standard" TCP benchmarks, and do the comparisons there.
We all know that SQL Server would get their asses kicked, and that's why they don't do any direct
comparisons. While we're on the subject of SQL Server, why are most SQL Server databases so screwed
up? In my experience, SQL Server DBAs tend to be over-optimization freaks that are stored-procedure happy
and don't know much about making a database application-friendly. Maybe it's because all you need
is a SQL Server DBA Certification to get the job - and your knowledge is based on a book, not experience.
Next topic: Access. Access is not going away. "SQL Express" is supposedly the target replacement for
Access. It's throttled to prevent users from using it for a full-blown database. "You can never write
a bad query for SQL Server." This is a direct quote, and the guy's reasoning is because the optimizer
will change the query to be performant. Sounds like a bunch of hoo-ey to me.
Today, you can write extended stored procedures in C++ with SQL Server. This code is not sandboxed,
and can pretty much to whatever it wants. In SQL 2005, you can do this with C# and use VS.NET to
write the code and debug it. Apparently, they have a whitepaper on SQL CLR vs. ADO.NET and when to use
one over the other.
Product Development Process with Iain McDonald (Director, Windows Server)
Iain is from Australia, which naturally makes him fun to listen to, just because of his
accent. The purpose of this talk is to explain how they do things. Cross-org at Microsoft means
that that development is spread across 7 businesses, each organized under own leadership with individuals
p&ls.
- Business Solutions
- Home & Entertainment
- Information Worker
- Mobile & Embedded Devices
- MSN
- Server & Tools
- Windows Client
Each group has a lifecycle model that they try to follow. Microsoft has thee different stages:
Product Definition, Product Development and then Product Servicing. I'm willing to bet their
product development cycle follows the waterfall approach (confirmed: "How agile are we? We suck."). Actually, this brings up something I heard
last night from one of the Microsoft Evengelists. Apparently, each developer has two QA folks that
write tests (read: code) against their code.
Suite of Project Tools
- Feature Inventory Tool: an inventory of features and their dependencies, tracks when the features will merge into the main branch.
- Checkpoint Express: tracks all compliance throughout the project, requires sign-off prior to product being shipped.
- Basics: list of fundamentals that product is expected/required to meet, examples include performance and manageability.
- Change Management: uses an infopath form with links to the feature inventory tool and bug tracking database (product studio).
Iain admits that security in 2000 was an afterthought and the security guys were seen as some mangy
dogs over in the corner. Bad RAM causes 20% of Windows crashes - who knew?! Bad RAM on OS X has certainly
affected me in the past. I couldn't upgrade to Panther b/c I had 3rd party RAM in my PowerBook.
Microsoft is in a competitive battle against other companies, not the free world. No corporation in
their right mind is going to download and install a free version of Linux - most are going to buy
a distribution from companies like Red Hat or Novell. Iain claims that there's no way you can
install Linux (at a corporation) for less money than Windows Server. It sounds to me like MSFT is willing
to give you some discounts on Windows Server if you're thinking of buying Linux.
Break time. I'm definitely bored, but happy to have some time to work on AppFuse. Some guy asked me in the hall why I haven't asked more questions. I told him because I don't develop for Windows. For the most part, none of this stuff matters to me.
Windows Architecture
Now we're listening to two guys talk about Windows and how it's developed. Windows XP and
Windows 2003 Server are two separate code bases. It's a nightmare to maintain b/c they have to
patch one code base and the other one as well. Longhorn is componentized, so it should be easier
to build client, embedded and server products. Someone asked about legal vs. technical reasons
behind the componentization. Apparently, it's all for technical reasons, and they have to separate
Windows Media Player for the EU, but that's about it. 40% of blue screens are from device drivers, and Longhorn
has done a lot to handle this and reduce crashes.
This talk centered on XAML, WinFX and Longhorn - what they are, what they do and when they're
scheduled for release. <Yawn/> While it has been a boring day (for me) technically, I do have
to admit that the speakers have been great. They're dynamic and enthusiastic, which is more important
IMO than good technical content. They also seem to be very open (as a whole) to ideas and criticisms.
I think I'm just a bad audience member.
OK - here's something that's interesting. We're talking about IE 7 and its features. The top priorities
are to stop spyware, fishing and any other security issues. #2 is tabs and #3 is CSS compliance. These
priorities are based on user feedback and sound like good choices to me.
Posted by timh on March 17, 2005 at 08:03 AM MST #
Posted by anonymous on March 17, 2005 at 04:00 PM MST #
Seriously, 99.8% of all development organizations, particularly small ones, would kill for the resources to have that many testers. So that brings up the obvious question. If MS has so many QA engineers, then why... oh, never mind.
Posted by David Lewis on March 19, 2005 at 10:13 AM MST #
Posted by Geoffrey Wiseman on March 31, 2005 at 01:11 PM MST #