-=//mawi.org//=-
 Thursday, January 04, 2007
ReSharper is the best refactoring tool for Visual Studio (it radically enhances the built in refactoring support of 2005) and it includes some killer features such as a very fast test runner (sorry Jamie, but on the other hand - you still need Testdriven to get at its wonderful reflector based debugging, among other killer features).

However, it does not natively support the awesome MbUnit test framework... until now - Albert Weinert has created a plugin that make the R# testrunner "mbunit aware"! This is great news. Check it out here. It is fresh and not complete but we really should cheer on herr Weinerts effort.

Meanwhile, Jetbrains have not been totally lazy ;) - if you have not upgraded to 2.5 I recommend it - the speed improvements are substantial to say the least. The difference compared to a vanilla 2005 install is not noticeable on my machine.

Oh, and if you haven't checked out mbunit, do so. They just got a new release off the compilers some weeks ago and it is looking better all the time.

In other blabla, just back from vacation and the mound of work is still just sitting there, I tried screaming at it but it just won't go away.
1/4/2007 2:22:18 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  |  Trackback
 Thursday, December 07, 2006
Christoffer announced our agile group meetings at the SNUG meeting yesterday. In case you missed the whole URL and ended up here, the link is:

http://mawi.org/agileoresund/

See you there!

12/7/2006 11:27:17 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  |  Trackback
 Friday, November 17, 2006
Dev Days 2006, Stockholm in December

Microsoft is arranging a asp.net focused event, Dev Days 2006,  in Stockholm december 5th. I have agreed to talk about databinding in ASP.NET 2.0. Tobias Fjälling will be talking about AJAX. There is little info on the site, and no abstracts, but Johan Lindfors has put up the info on his blog, here, among other posts. Note that neither me, nor Tobias are cornerstone employees - despite what Johans post may indicate.

 

If you're doing ASP.NET development, come check it out - it's an inexpensive event, and there will be lots to choose from.

SPA 2007, Cambridge in March

The 2007 edition of the Software Practice Advancement conference is held in Cambridge. I will be giving a session in the form of a short workshop exploring testability, encapsulation and how they relate to each other. The idea is that the topic will serve as the starting point for a short collaborative exploration of these concepts, and we will all leave with a clearer understanding of them.

 

Check out the awesome programme here, and details of my session here. The conference is actually very inexpensive, and whereever you are in Europe, catching a flight to the UK is dirt cheap nowadays - so give it some consideration. The lineup includes names like Dave Thomas (of pragmatic programmers fame), Michael Feathers, Tony Hoare, Brian Marick (brilliant test specialist, known to go out of his way to give non-planning swedes rides to airports), Kevlin Henney, and a host of others.

11/17/2006 12:20:37 AM (Romance Standard Time, UTC+01:00)  #    Comments [3]  |  Trackback
 Thursday, November 16, 2006

Martin Fowler, Erik Doernenburg, James CoplienØredev 2006 is over, and it was pretty great - despite several last minute  (quite literally last day) cancellations from some high profile speakers. I talked to alot of people and many agree with me that the social atmosphere was very good. The panel on the last day rounded off the whole event nicely. In the picture you see Martin Fowler, Erik Doernenburg and James Coplien.

 

My presentation went pretty well, it seems alot of people enjoyed it. Here is the slidedeck for it.

 

I forgot a couple of things: First, I forgot to announce the next SNUG meeting, which is December 6th in Malmö - sorry chris. I also forgot to underline the steps after vou've got the code you're interested in under test. I managed to cover alot, but there are so many important ideas that I did not have time to cover.

 

The last thing I missed was the resources slide, you will find it in the download. I have also put out an older version of this talk in an older blog entry, look for it. As you probably noticed, the sessions where recorded, and I hear that there are plans to make them available to all attendees. Time will tell.

11/16/2006 11:38:48 PM (Romance Standard Time, UTC+01:00)  #    Comments [4]  |  Trackback
 Tuesday, November 14, 2006

What a party it is! Even though the actual start is tomorrow and today was "just" workshops, I am already having a great time!

 

Todays highlight was definitely meeting Jim Coplien and listening to his provocative style as he recounted seven ways agile teams fail. It was all business, hard facts and no play (well, aside from the provocations and caricatures).

 

Tomorrow, I will be giving my talk on changing software with tests to back you up. It's kind of at odds with what Coplien talked about today, because I don't "care" much for the either the specification directed nor the fault directed aspects of using tests as a developer tool. I think the great benefit are the behavioral aspects. None the less, tomorrows talk will be pretty code-centric, not like my previous attempts - come check it out!

 

Speaking of the benefits of tests, we reflected on the Copliens talk on the way back in Niclas car, and missed the design and behavioral aspects: In saying that TDD is no better than code reviews (and other techniques)* I do believe that we are missing the point. It reminded me of Martin Rinard on failure oblivious computing: TDD adresses the fault-prone part of developers, I feel most older techniques lean back to the space of a more elitist view (uncompromising it seems to me). I find that it does not work, we need methods that help us with the human side of things. Most of the cases, none of the methods give us bug free software - and my take on TDD is that it neither finds faults nor guarantees behavior according to spec. It does, however, help us move forward when developing.

 

Am I too pessimistic?

 

On another note, namely speaking: I will be giving a workshop at the SPA 2007 conference in Cambridge in march, more on that later.

*I am being sloppy with the details here, it does not detract from my point, I think.

11/14/2006 6:35:02 PM (Romance Standard Time, UTC+01:00)  #    Comments [8]  |  Trackback
 Thursday, November 02, 2006

About a month ago, I started to explore some of the options available to us CLR coders if we want to use  BDD/specification style testing from a dynamic environment. Sadly, the executive summary is that currently, there aren't any working solutions available. Or - happily, I was thrilled to discover that there are many efforts underway that will provide us with such tools, and they will be complete pretty soon!

 

First off, I looked at the C# non dynamic BDD oriented tools: Nspecify and nspec. NSpecify is nice. I didn't like the external (extra compilation step) approach taken by nspec. Anyhow, what I really want is some dynamism!


So, then comes specter to the rescue. Specter is written in boo (a pythonesque like language) that offers many dynamic features beyond what C# 3.0 has (even some that ruby doesn't have, but then there are many that ruby has and boo has not), for example ducktyping. Specter is a specification style framework that lets you create NUnit test assemblies using a very concise and nice syntax. So, all was great until I hit some of the limitations: Boo does not support generics. So, I cannot test methods that return a generic list of something.

 

As soon as boo becomes ready for primetime, specter is the best choice I have seen so far because of it's nice environment where there is ample support (sharpdevelop 2 is really not bad).

 

Lastly, I thought - why not use rspec to test CLR code? I figured, I want to try that ruby CLR compiler they made in australia. Well, I downloaded it and took it for a spin, and checked the docs. It looks promising but it turns out that it does not create standard CLR assemblies yet, and it cannot access CLR assemblies: Whatever you create with the compiler lives it's own independent life.

 

Well, another thing that looks really promising, but alas, at this point in time there is no real solution. Boo is making progress on the generics side, and I assume that the garden point ruby compiler for the CLR will advance as well.

 

The future looks bright, we'll just have to calm down and relax a little longer.

11/2/2006 1:18:31 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  |  Trackback