Desmond File

Blog archive

Digital Darwinism

One of the remarkable things about Microsoft has been its willingness to fail. By that, I don't mean that the company welcomes or admits defeat to competitors. One need only glance at efforts like Microsoft Network (MSN) or products like Microsoft Money and the Zune media player to realize that Redmond will invest what it takes, as long as it takes, to challenge incumbent technologies.

What I mean is that Microsoft is happy to pit competing, homegrown technologies against each other. It's the sort of tough-minded digital Darwinism that has helped make Microsoft a technology powerhouse, and should help ensure that it remains dominant for years to come. Consider the dueling 32-bit operating systems of Windows NT and Windows 95, which ultimately merged into the Windows XP OS. Or more recently, look at the multiple data access methods Microsoft has developed to support the growing demand for efficient, data-driven programming.

As Jeffrey Schwartz reports in his Data Driver blog, Microsoft is picking a winner between the popular LINQ to SQL technology, introduced with Visual Studio 2008 and .NET Framework 3.5, and the recently released ADO .NET Entity Framework. And if Jeffrey's report is any indication, some developers aren't terribly happy about it.

And that can be a problem. By promoting multiple, overlapping technologies, Microsoft often invites confusion and even disruption in the dev market.

I asked Anders Hejlsberg, technical fellow in the Developer Division at Microsoft and a driving force behind the creation of LINQ, for his thoughts on Microsoft's change of direction. He said this sort of competition between technologies is "unavoidable" in part because of Microsoft's sheer size.

"The bigger a company gets, the more there is to keep track of and the more overlap that you see because we are doing more things," Hejlsberg said. "Now the LINQ to SQL project was an interesting project because it was built by the C# team, but it is clearly in the data domain. We built it because we needed something real to validate LINQ, and we strongly felt that LINQ would be nothing without a strong O-R mapper to support it."

Once the C# team's work on LINQ to SQL was done, Hejlsberg said, the technology was handed over to the ADO.NET group.

Obviously Microsoft is making its choices, but that doesn't mean developers currently using LINQ to SQL have to drop everything and work with Entity Framework. Hejlsberg emphasized that LINQ to SQL will continue to be supported.

"LINQ to SQL is not dead. I can assure you, it is not dead. Nothing ever goes away. We have never done that and we never will," he said.

What do you think of Microsoft's decision to shift focus away from LINQ to SQL? Has your dev shop been burned Microsoft's internal competition in the past? E-mail me at

Posted by Michael Desmond on 12/11/2008 at 1:15 PM

comments powered by Disqus


  • Visual Studio Code Dev Team Cleans Up

    The Visual Studio Code development team focused on some housekeeping in the October update, closing more than 4,000 issues on GitHub, where the cross-platform, open-source editor lives.

  • ML.NET Model Builder Update Boosts Image Classification

    Microsoft announced an update to the Model Builder component of its ML.NET machine learning framework, boosting image classification and adding "try your model" functionality for predictions with sample input.

  • How to Do Naive Bayes with Numeric Data Using C#

    Dr. James McCaffrey of Microsoft Research uses a full code sample and screenshots to demonstrate how to create a naive Bayes classification system when the predictor values are numeric, using the C# language without any special code libraries.

  • Vortex

    Open Source 'Infrastructure-as-Code' SDK Adds .NET Core Support for Working with Azure

    Pulumi, known for its "Infrastructure-as-Code" cloud development tooling, has added support for .NET Core, letting .NET-centric developers use C#, F# and VB.NET to create, deploy, and manage Azure infrastructure.

  • .NET Framework Not Forgotten: Repair Tool Updated

    Even though Microsoft's development focus has shifted to the open-source, cross-platform .NET Core initiative -- with the aging, traditional, Windows-only .NET Framework relegated primarily to fixes and maintenance such as quality and reliability improvements -- the latter is still getting some other attention, as exemplified in a repair tool update.

.NET Insight

Sign up for our newsletter.

Terms and Privacy Policy consent

I agree to this site's Privacy Policy.

Upcoming Events