Sam Gentile

Sponsors

The Lounge

Wicked Cool Jobs

Syndication

News

  • This Blog has moved to samgentile.com. If you have subscribed via FeedBurner, you do not have to do a thing, feed has been re-pointed

Advertisement

Images in this post missing? We recently lost them in a site migration. We're working to restore these as you read this. Should you need an image in an emergency, please contact us at imagehelp@codebetter.com
Microsoft at the Crossroads

I was honored that Martin Fowler asked me to review and contribute thoughts to his very important new essay RubyMicrosoft. This piece presents the view that Microsoft is at a crossroads, an important time in it's life where Microsoft can make good of opportunities or choose an altogether different road. For me, the piece represents what many of us have been saying. Rather than repeating what I have already expressed, I am going to include select pieces of what I told Martin. What follows is raw and unedited but I would like to include it for an insight into what I'm thinking as well as what I think many others are thinking. Several people are referenced in what I think they are thinking but any mistakes are mine only. I think this is an important discussion to have and I hope Microsoft will take in Martin's analysis and create something very positive out of it. So the ball is in your court Microsoft.

Overall

Thanks for including me in this very important topic. Personally, I have
been having a large disconnect with the majority of Microsoft developers
who don't do Agile, don't understand Design patterns and don't look at
OSS tools among many other unpleasentaries. I have been trying, in my
INETA talks, to emphasize things like the above that I feel that the
Java community and other communities do so well but it often seems like
a "hard sell."

1. How compatible will IronRuby be?
From the angle of being friends with John Lam, the creator, my
personal take would be as compatible as he can get it. John is a
stand-up guy, passionate, has always kept with the spirit of Ruby versus
towing the Microsoft party line. Listening to him talk about making sure
not to perturb the existing Ruby developers and trying to keep the same
coding standards (even employing the underscore convention). He really
worries about those things.

don't know what the MRI is - is it the Ruby runtime source? I think
Ola has a valid point in that there are drastic limitations on
downloading and looking at open source. I know this affected my good
friends In P&P when they did CAB in not being able to look at things
like Spring. I do think that those guidelines however have been forced
by an industry that views Microsoft has a big fat target with $40
billion in the bank and its easier to sue than innovate but I guess
that's a different subject altogether -).

I do agree it's a large problem with Microsoft. There are good people
within that want to change this system but they are not getting heard.

2. What's in it for Microsoft? Risk of people moving away and the "alpha
geeks"

Many of us who are "senior" in the Microsoft community and who have done
things before, privately say we "would rather do Ruby anyway." For
instance, myself and my Principal Engineer Steve Eichert would chose
Ruby on Rails any day over the leaky abstractions that is
ASP.NET/Web Forms. There is no inherent way to have testability. But we
don't do Web Programming-). In the Smart Client world, we look outside
Microsoft for much of what we do. I agree that that people will, and
already have moved away from the Microsoft server platform because of
the Ruby situation.

On the alpha geek side, I fear all is lost already. All of my peers on
CodeBetter.com and the "Agile .NET" community have already moved onto
Castle/Windsor, NUNit, NAnt, MonoRail, Spring.NET, NHibernate, etc
instead of Microsoft solutions. Its virtually over already. For two
years now, I have talked about our Agile team and how we can't use
Visual Studio Team System and instead have to use CruiseControl.NET,
NUnit, NAnt, etc to work in an Agile fashion. Not only does Microsoft
not understand this, but the majority of Microsoft programmers don't.
They have been weaned on being "Morts" and having wizards, stored
procedures, drag & drop forced on them and not required to learn the
solid skills that make up what we think of as a developer. I am one of
those myself that is very close to moving out.

3. Drop off in clients, Mike Two on Windows Workflow
Steve came up to me very excited about the statistics where you guys
have been getting a much bigger percentage of jobs in ROR. That's
exciting! I have been working a lot with Windows Workflow and I love it
but there are a large number of issues with it that are frustrating that
I have been blogging about. Everyone is excited about Linq but I can't
get so excited about something that is essentially Foxpro abstracted out
to the masses. Yawn is correct and many are bored. Out of this, I think
you see a loud vocal, but small, community on Code Better and people
like Ayende talk about using other things.

4. Microsoft's reaction to open source
Yes, the gaps are being filled in but Microsoft refuses to promote them
and people like us. The example you give, NUnit is the most glaring one.
Microsoft's solution is so like it but just enough to be incompatible.
Moreover, it's solution inside VSTS is not able to be used in a way that
supports TDD as we know it, with its emphasis on generating tests from
code. Many of us in the community refuse to use it. I, and my team still
have 1900+ NUNit tests not VS tests.

5. Leadership fundamentally opposed
It's been explained to me that they are frightened out of their gourd
about some developer bringing in GPL code, having it get checked into
the SQL Server or Windows source trees and then SQL Server being free.
This is at least what they say. I'm sure they view it as a threat on
other levels especially in the case of Linux.


Posted Thu, May 31 2007 9:19 AM by Sam Gentile

[Advertisement]

Devlicio.us