The Wayward WebLog

Oh, what a tangled web

Browse by Tags

Tagged Content List
  • Blog Post: 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...
  • Blog Post: 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...
  • Blog Post: 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...
  • Blog Post: 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...
  • Blog Post: 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...
  • Blog Post: 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 was sworn to secrecy...
  • Blog Post: 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...
  • Blog Post: 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...
  • Blog Post: 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 features that...
  • Blog Post: 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 cases, no asserts...
  • Blog Post: Style is Serious

    It's been difficult to focus on work lately, let alone find the time to contemplate something worthy of a blog post. The distraction of the presidential race is too compelling. My wife and I are glued to the television, CNN, FOX, MSNBC. I'm starting to have lucid dreams about dastardly swifti-boat word...
  • Blog Post: Focused on the Customer

    The top level management at Microsoft spend a lot of time keeping the rest of us focused on the mission, making sure that we never lose sight of the end goal, and that its all about the 'customer', not the fantastical whims of a few developers. Still, being one of those fantasy led whimsical developers...
  • Blog Post: Warped Weaving

    Aspect oriented programming uses a technique called 'weaving' to merge together and/or modify portions of functional/procedural code, to produce code that at the same time is both highly efficient and easy to understand in cases where normal procedural composition would have prohibited clean unification...
  • Blog Post: Xen meets its Omega

    I got a surprise in my inbox this morning. An email from Erik Meijer read: The impossible has happened: X# became Xen, Xen became Comega, and Comega has shipped. http://www.research.microsoft.com/research/downloads/default.aspx . Enjoy Matt
  • Blog Post: Stuck in the Slow Lane

    Been writing in C++ lately. Man, I feel disconnected, alone, naked. So many pointers, deref'ing, addresses, pseudo-maniacal linked lists all over the place. Where's ArrayList when you need it, or managed arrays. I want my managed code back. Please, give it back. Was this what is was like to program...
  • Blog Post: Enumerating Enums

    Why can't you enumerate Enums? You'd think you could, given the name! What would it look like? enum X { A, B, C, D } foreach( X x in X ) { ... } Okay, that won't fly because X is a type not an instance. How about: foreach( X x in X.GetValues() ) Now, that would be possible, since you...
  • Blog Post: Programming without Types

    Warning, actual serious content. This is not a joke. Repeat, this is not a joke. I don't want to get rid of types. I just don't want to have to explicitly say them all the time. I want more type inference in the language. Again, this is not some lead in to another silly post making fun of type inference...
  • Blog Post: Xen: SQL in the mainstream

    The X#/Xen (newly renamed c-omega) programming language has built in facilities to query data structures and databases. I had the pleasure to work on that project, implementing all the query features. The XML query features looked a bit like OPath from the recently reshuffled ObjectSpaces project, which...
  • Blog Post: Barnacle Bits

    I've been thinking of bits lately. You know, those fiendish critters that skitter around under the structures of our data. Take a peek. Look in the field and you'll see them; thirty-two in every integer. They are packed closely together, kind of like a swarm, each mindless without the others, or each...
  • Blog Post: Aspect Oriented Programming

    There’s been a lot of hype lately over this new fangled paradigm known as Aspect Oriented Programming. You might have heard it mentioned on another blog or in some technical article on the fringe of the mediaverse. You probably scratched your head and skimmed over the article, not certain what...
  • Blog Post: SQL: Mutually Assured Destruction

    I have been playing around with SQL lately, trying to get it to sit and roll over. Sure, I’m familiar with all the normal paradigms; all the usual crud. I can select with the best of them, slicing and dicing data with the efficiency of a ginsu knife. But I’ve never actually been much of a...
  • Blog Post: Lost in Translation

    A lot of the work that goes on inside a compiler is a bunch of translations that take the high-level conceptual idioms and turn them into stepwise instructions that are executed by the machine. Of course, this is often theoretical as many of these high-level constructs are nothing more than contextual...
  • Blog Post: X#: There and back again

    It looks like X# might just see the light of day afterall, as the foundation of a even more ambitious research language from Microsoft. This article actually gets most of all the facts right. Except it doesn't mention my brilliance anywhere. X# == Xen == C Omega == X Omega If you have a good idea...
  • Blog Post: Programming in the Blue

    It amazes me how difficult it is to design new features to a programming language. Once a language is baked in its original form it’s almost impossible to add new semantics let alone syntax rules. Operators are hellish. You want to invent new ones, but you are generally limited to the common symbols...
  • Blog Post: Language Inferencing

    I've been involved in a lot of debates over the last few years over the merits of strongly-typed languages versus loosely-types ones. For example, vbscript and java script are generally loosely-typed languages. Local variables defined within a body of code generally obtain their 'type' at runtime as...
Page 1 of 1 (25 items)