Jul 282011

I find that with the extension support in VS2010, programmers don’t really have an excuse for not using tools to increase their productivity and to increase the overall quality of their work. I am a really lazy programmer, in the sense that I don’t’ like to do repetitive boring tasks. Extensions are one of the solutions to being a happy lazy programmer. The other one is writing quality code, but that’s another story. So here is a list of all Extensions that I use in day-to-day work

Shout it
Continue reading »

May 182011


One of our main requirements when performing the migration was to have the same level of integration with our Team Build system. This means that the build should run all tests and fail if any test fails. Also we should be able to see in the build log which tests have failed.

This step is the most complicated one so here is a quick breakdown of all the steps involved:

  1. Setting up the build server
  2. Changing the build template
  3. Add a new ForEach sequence to iterate through all test assemblies
  4. Add a sequence to run all tests in a single test assembly
  5. Invoke NUnit
  6. Publish NUnit results
  7. Mark the build as broken if not all tests pass
  8. Modify the workflow to support projects without a test settings file
  9. Check in the build template file.

Continue reading »

May 182011


I am working in a large WPF project that is in a continuous evolution. Initially when we started the project we didn’t have any kind of unit testing in mind, then later we switched to an (almost) TDD approach. Since we use TFS for source control and automated builds, the natural decision was to use MSUnit as the test framework. Although this approach has some benefits, after the project has grown in size we have reached several limitations.

Continue reading »

May 172011


I often work on various branches of the same project (using TFS). This means that I have folders setup like:


[root]/Branch A/Project

[root]/Branch X/Project

Sometimes I have to keep multiple Visual Studio instances open at the same time with branches of the same project and because by default VS2010 only displays the solution name in the title bar, switching between different windows can become very confusing.

Continue reading »

Feb 122011


In this blog post I am presenting a simple validation framework that you can reuse in your code. Also I will be putting here two code snippets that will make it easier for you to add preconditions to your code.

When Visual Studio 2010 was first realeased, one of the features that I expected the most was code contracts. Unfortunately after including them in one of my large projects, it became more clear that at this moment it is not mature enough to be used. Build time increases rapidly when having a lot of source code files and using the code contracts. Enabling static contract validation is even worse, almost doubling the build time on an average development machine.

All that being said, I really like the code contracts way of specifying preconditions. Most of the time I don’t use post-conditions, but being able to specify validation criteria means that the code will be more robust.

Continue reading »

Jul 232010


Puteti descarca de la adresele de mai jos prezentarea Moles si proiectul demo:

Cerinte minime pentru proiectul demo:

– Visual Studio 2010 Professional

– Moles plug-in (http://research.microsoft.com/en-us/projects/moles/)

Astept comentariile voastre si feedback.

Disclaimer: Nu lucrez pentru Microsoft si nici nu sunt implicat in vreun fel in dezvoltarea acestui proiect. Notele si proiectul demo reprezinta punctul meu personal de vedere.


You can download my Moles presentation and demo project from the links below. Unfortunately at this moment the presentation is only in Romanian but I will translate it and provide an English version the next few days.This is a translation of the original presentation in Romanian

Minimum requirements for running the demo:

– Visual Studio 2010 Professional

– Moles plug-in (http://research.microsoft.com/en-us/projects/moles/)

I am waiting for your comments and feedback.

Disclaimer: I am not working for Microsoft, nor am I involved in this project. The slides and demo project are strictly my point of view and I am doing this to share something that I feel can be useful.

Shout it