Rotten to the Multi-Core

Everyone’s trying to figure out the next big software gimmick that’s going to make utilizing your multi-core machines super easy.  Let’s face it, having to write code with locks and threads is not going to be it.  We’ve had that capability for a long time and only the cream of the crop developers even dared…

6

IQueryable’s Deep Dark Secret

I love the IQueryable interface, but it’s got a dark checkered past that most of you might not know about.  IQueryable is a great way to expose your API or domain model for querying or provide a specialized query processor that can be used directly by LINQ.  It defines the pattern for you to gather-up…

7

The Origin of LINQ to SQL

LINQ to SQL, possibly Microsoft’s first ORM to actually ship in ten years of trying, was never even supposed to exist.  It started out as a humble Visual Studio project on my desktop machine way back in the fall of 2003, long before anyone heard about it, long before anyone even guessed what would come…

28

Beyond Dynamic Languages

Everywhere I turn, all I read about is dynamic languages. Apparently, there is a small yet growing contingent of programmers that think dynamic is the only way to go. These guys are frustrated with the shackles of static type systems that force them to write clean code. And apparently, there is also a small and…

27

Beyond the Query

I have been working a long time to bring queries into a modern programming language. Seven years ago I looked beyond ORM and saw the next horizon, a new world where boundaries between data are blurred and popular paradigms from different disciplines combine. Many have tried to convince me that it is simply a mirage,…

1

YODA the Programming Language

Now that LINQ is out the door, so to speak, I can start focusing my efforts on the next next technology here at Microsoft. Ever since I joined up with the C# team nearly two years ago I’ve been frustrated by my inability to wax poetic about all the goodness we were working on. I…

41

What the World is saying about LINQ

“LINQ is totally awesome. It’s like this thing that you use to condense your entire application into one line of demo code. Sweet!” – Stanley Morgan   “LINQ is divine but DLINQ is a delinquent. It gives programmers too much power and makes programming against data way too easy. Is nothing sacred anymore?” – Ned…

4

XML Generics

 Designing a programming language is like inventing a metaphor for thought.  Most of the time you struggle to find just the right metaphor, hoping the one you eventually choose will be the best at communicating the idea it is meant to represent.  So you can imagine the process of language design leaves a lot of…

15

Refashioning Software

In our never ending quest to provide you with better, faster, more powerful products and tools, we some time find it necessary to redo a little of what was done before, to revamp it so-to-speak, to spruce it up, to splash on a new coat of paint and add new life to the old tried-and-true…

1

Code Shock

The first time I ever saw code written in Java, it scared me.  The code looked awful.  I mean it.  There was no way this stuff could be for real.  The source code I saw looked as bug prone as anything I could imagine.  There were ‘new’s flying around everywhere, no clean up code, no error…

11