Update on the secure messaging IronPigeon protocol and the Dart application

In my last post I mentioned I was focusing my attention on the IronPigeon protocol. Since then, the IronPigeon project has matured and added support for both…

Moving on… DotNetOpenAuth in search for new project leaders

Disclosure and disclaimer: I am a software engineer at Microsoft, but the following post (just like all other posts on this blog) is my own and in…

DotNetOpenAuth ships with Visual Studio 2012

Some of you may have already heard the announcement on .NET Rocks (time index 41:30), but in case you haven’t: Visual Studio 2012 will include DotNetOpenAuth in…

GC pressure series: hidden boxing

Last time we talked about GC pressure from enumerating collections using their interfaces rather than their concrete types.  It turns out that the garbage produced by using…

GC pressure series: Introduction and enumerators

As you may already know, I’m a Microsoft developer who works on Visual Studio.  Improved performance and responsiveness is a major goal for the 2012 release.  As…

A brief survey of the various .NET unit test frameworks

In summary, someone please fix NUnit to support async task methods. MSTest Pros: Best IDE experience for VS2010 and earlier (VS 2012 supports MSTest and other frameworks…

How to get meld working with git on Windows

Inspired by these instructions, I followed these steps: Install Python 2.6 Install PyGTK All-in-one installer Install meld Then you need to configure git to be able to…

Immutable collections with mutable performance

In my last post, I detailed the differences among read/write, read only, frozen and immutable collection types.  I described how immutable collections come with a hit to…

Read only, frozen, and immutable collections

[Update: a more recent post with new data on attainable performance of immutable collections] The topics of immutability and functional programming has fascinated me lately.  Mostly because…

C# await for MSBuild

The async CTP that adds the C# await keyword doesn’t include an awaitable MSBuild.  It’s easy to add yourself.  Just copy and paste the the BuildSubmissionAwaitExtensions class…