Avega - I like it!

My company, Avega, is back from a conference on Iceland.

The conference in it self was a great success. Very well organised, good weather (which does NOT happen often at Iceland, from what i understand), great fun with great people.

But once again I come to think about how blessed I am with my surroundings. I’ll give you an picture which I have experienced several times the last year or so:

Think about when you have done something extra with others, for example went to a camp, a great vacation or some thing else of that kind. When you are traveling home you always get a strange feeling with a strong sense of wanting it to go on, don’t you?

Well, for me, it does!

This weekend I have had some great times with a great bunch of people. Lots of interesting, fun and engaging discussions and get...

Read More

2008 European Championships - the results

The European is now to an end and some shocking results was delivered…. Here is the complete results, where you can note that the Oberoesterreich Brass Band were placed 10/11 which is really strange since they got some raving reviews.

For our Swedish contender things didn’t work out to well. I think that the approach to a competition is shown very clear with the results. For band - with a lot of amateurs, like Stavanger, Cory or Willebroek - it’s life and death stuff. For bands with mostly pros things aren’t as serious. And then you don’t win any competitions against the other group. A 9 place for Stockholm Brass Band may have been a correct adjudication.

And for me things went quite well. My predictions had the right three top bands, but not in the right order. I am not a big fan...

Read More

2008 European Championships - my predictions

It’s that great time of the year when the best brass band competition in world takes place - the European Brass Band Championships. Historically this is where the best bands plays at the very highest level. This year the event takes place in Norway, in Stavanger.

We Swedes are of course strengthen by the win of WindCorp in Grenland, which from what I understand was a great display from the band. We’ve come to expect nothing less from that great band.

The Swedish band competing in Stavanger is Stockholm Brass Band. I wish them all the best and really hope that they can impress the judges - they sure have all the potential to do so. I’ll be keeping my thumbs crossed all weekend.

So how will it all go down? The test piece is quite modern and not very “brass bandy”. So that will probably promote...

Read More

In control

You have to see this amazing performance….

Took me a while to understand but she is recording herself and the replaying it while continue to add voices, rhythm etc… and finally produces a wonderful sound and a quite catchy song.

Don’t try this at home, boys and girls. She is a professional

Read More

How to fail a tfs-build on test failing

One thing that really surprised me was that when tests fail in my build script the build script happily ran along after that!? Isn’t one of the ideas with Continuous Integration that the build script only will emit working versions?

Well in this article Aaron Hallberg (Swedish relatives?) shows us how to handle this. What he basically does is to check the status of the test-run and then update the status of the complete build.

I extended his code to use the test-status-flag on the tasks that follow the test, i.e. the publish task. This task deploys the executables to my test server, update the documentation etc.

So now I’ve got my desired result which is that failing test leads to failing the whole build.

Read More

TFS, MSBuild and Code Coverage

When you have a testing framework in place you of course want to test it each build. But of course, you also want to know much code your tests are covering, a.k.a. CodeCoverage.

It is in a way quite easy to accomplish in your build script. The only catch is the complete lack of documentation. Benjamin Day led the way (he he - it rhymes).

What you need to do is two things:

  1. First configure the tests to run. This is easily done by adhering to good naming standards (all test assemblies ending with tests.dll). Then you can add create an item group called TestContainer, like below. This will run through all your tests.

    <ItemGroup> <TestContainer Include="$(OutDir)\%2aTests.dll" /> </ItemGroup> 
  2. Secondly (and here is the secret) you need to specify that the tests are to be run under code coverage....

Read More

Exclude generated code from code coverage result in Team System

One thing that have irritated me with the code coverage tool in Visual Studio 2005-8 is that you can’t exclude things from the code coverage result.

For example - in VB.NET the MySettings-class is generated for each assembly that is created. The code in it is automatically generated and you shouldn’t change it (it even says so in a comment from the tool…). However it is counted when the code coverage result is calculated.

The same thing applies for proxy-classes to web services for example.

This gives an incorrect picture on how much of your code that is tested. But now I’ve found an attribute that might help:

<debuggernonusercode()>

This attribute tells the compiler that the code that is decorated with the attribute is not written by the user and should not be step into during debugging sessions. So when the testing tool encounters the attribute it will simply not...

Read More

How to get equivalent proxy-classes to implement a shared interface

After reading the great patterns book i was talking about earlier i soon ran into a problem that at first seemed pattern-like but was not after some examination.

The case that we are integrating against a back end AS400 system, via Microsoft Transaction Integrator. The “problem” is that the department that is responsible for the integration is creating a web service for each program (“method”) we are accessing. I brushed on this in an earlier post about naming those web services.

A lot of the stuff we are sending back and forth are equivalent but not the same, for example an header that all methods expect. They are equivalent but not the same since they are located in different namespaces, since the header are generated once for each web service.

So what we wanted was to create an interface that all the headers could implement. To create...

Read More

Great Silverlight 2.0 Tutorial

Everybody who knows me knows my feelings on doing complex WebGUI. In short I think it is stupid - and also I have never met a developer yet who can show me a robust and simple way of managing the events of a web page. It is always, always fixes like; hidden fields, setting stuff in prerender etc etc.

So my personal opinion of this is - don’t do it! Web is for simple stuff. The moment a request about a tab control or thing posting back is being said I would raise a big warning flag. You’ll get into trouble. (Of course I can only speak for ASP.NET, and love to be convinced otherwise).

Luckily there is help on the way.

  • You could either stick with simple HTML and use [ASP.NET MVC](http://weblogs.asp.net/scottgu/archive/2007/10/14/asp-net-mvc-framework.aspx) which removes all the crazy event-handling from the ASP.NET WebForm model. Basically...
Read More