.

Agile mobility

I am Alexander Viken and i am a technology evangelist on Microsoft mobile technology, mobility development, TDD in mobility projects, lean methodologies and scrum processes

Agile mobility header image 2

NDC 2009 Day 2


Date: June 19th, 2009 • No Comments
Category: Technology
Tags:

Morning glory

Day two of NDC begins as a rainy day, but i am looking forward to getting out to Telenor Arena, Today the topics starts with issues i really care about – Test Driven Development and Unit Testing of code.

It´s a proven, working concept that increases code quality and it saves you a whole lot of money. Something that should make the TDD argument extremely easy to sell to your manager. Added benefit here is that your customer will find less errors and bugs, this makes them happy and more prone to ask for more functionality and upgrades. 

Understanding Test Driven Development with Roy Osherove

RoyOsheroveThis was a level 100 session so it was a basic intro to unit testing and TDD. If you are new to unit testing and TDD principles you should have been there. Some advice on your way as a happier coder; You should learn unit testing first, and when you know how to write tests and use unit testing frameworks you start using Test Driven Development as a development method. This makes it a lot easier for you as a developer. Also, only write tests for public methods that contain logic. Code that has public accessors and contains if statements, switches and loops etc, there is no value in testing the rest in a unit test.

Added benefit to testing… it will be easier to use the SVN blame feature ;) when your tests fail and you know you did no to it yourself – finding the culprit is easy.

TDD best practices with Roy Osherove

Osherove continues his series on Test Driven Development from where he left it in the previous session, giving us some insights on  the dos and donts of TDD.

He is a really good conference speaker and i personally think he manages to get the message through, both on how important it is to do automated testing and showing how much better code quality you get by using TDD as a development method.

Something i think it is hard for people to understand  is the concept of trusting tests, not their own tho, but trusting tests from other developers and that if there is no commonly acknowledged system requirement that changes functionality, you do not make changes to your tests.

If you have the chance i really recommend you attend one of his TDD Master class courses, usually held at Programutvikling AS if you are in Oslo.

Breaking out from the Dependency Hell by Ayende Rahien

AyendeRahienResponding to change is the holy grail of software development. Inversion of Control (IoC) and Dependency Injection (DI) are two related patterns that allows to make significant changes to an application without having to touch every part of the application. IoC and DI encourage breaking the application into discrete, highly cohesive parts, so a change, when it eventually comes, is very local. 

Another benefit of IoC and DI is that all your code is testable, you can easily do Unit test on your code when it has a single responsibility. It will be a unit test, and not an integration test between two pieces of code.

Ayende shows us how to create maintainable code using the Castle Windsor  IoC container framework. A lot of code review in this session and i´have “tagged” this session also as one i´ll be review again when the videos become available. A good preparation for this session could be the project getting started, gives you an overview of the basics.

Lunch

After the 3 sessions it was time for lunch, and as yesterday we got sandwiches. I had a sting of envy when i overheard someone talk about the menu on JavaZone a few years ago, with whole grilled meat… When lunch was consumed i decided to take a session break to walk around and see what the exhibitors were offering – not really much, it´s the same exhibits as always on MS based events. Why doesn´t anyone else see the value here?? have anyone been offered this? or are there a XX  year sponsor deal where you get exclusivity on stands?

Architectural use of Business Intelligence in Application Design by Rafal Lukawiecki

RafalLukawieckiSession about how we cope with unpredicable conditions without failing, dealing with non-transactional but analytical data and make our apps more intelligent and considering BI for application design. Probability development sounds like a cool line work.

I am not very experienced with BI, but this session spiked my interest and curiosity so i am going to re-view this when it comes out on video. As it begins on level 100 and ends at level 300 you get a beginners guide to BI. I have never heard Rafal in any sessions before and found hin to be interesting and somewhat funny with his geeky side comments. Think i have to watch this session again on video.

XML Messaging in .NET using Windows Communication Foundation with Ted Neward

TedNewardWindows Communication Foundation (WCF) is Microsoft’s future technology base for all program–to–program communication, and while it provides a convenient RPC–like model, some of the real power behind WCF lies in its messaging–based pipeline under the covers.

HTTP isn´t the be-all, end-all protocol for doing things across the web. It has flaws, you need a sever up 24/7, limited to 7-bit ASCII text encoding. It does not handle asynchronicity well. In the lates round of thinking, we want web services to virtualize the transport, being able to use any transport protocol.

In a WCF cenario you should not think in a traditional server-client communication platform,  I like this concept, and i find it more logical than the traditional server-client way of thinking. When summer is over and it´s time to dig in again i´ll take the MS certification on WCF,  very useful in the world of mobility.

.NET rocks live radio show with Richard Campbell and Carl Franklin!

.NET Rocks! Live from NDC 2009 with Richard Campbell and Carl Franklin! Last session for the day on day 2 kicks it off with a can of beer and an interview with the HaaHa brothers. By the sound of the audience, they were having fun, hour long chit-chat on technology and occationally on porn whenever Haack was asked to comment :)

Party with Datarock and Love Shack

DatarockParty started off with a nice dinner, that was quite good. At dinner everyone got their two beer coupons and the bar was open!  Datarock play for about an hour on the main conference hall stage. Cool gig, I like this band, even tho it´s way off my normal taste for music that evolves around metal and stoner rock. When Datarock was done everyone moved over to the bar inside what must be the Stabæææk Fotball VIP area, there it was more beer and a cover band named Love Shack played up-beat, rock version of 80´s hits like Material Girl and every crappy german 80´s one hit wonder artist you could name. On twitter there seemed to rise a drinking competition between Capgemini and ErgoGroup, wonder what happened with that one…. 

Summary of day 2

Today i instead of sitting high up on the arena having problems see what happened on the screens i rather tried to use the wireless headsets watching the sessions on the outside screen. That way i got more out of the sessions hearing everything, but i wasn´t able to participate in Q&A. Added benefit to the day was that it looks like the colleague i attended with also has “seen the TDD/Unit test” light. Hopefully this will make it easier to make it work at the office, being two of us.

Except for the TDD sessions with Osherove, today was more out of my technical comfort zone, witch is good, i am learning something new. I am a noob on IoC containers, BI and also on WCF. These are issues i find interesting and definitely will look more into. I know some of the theory around IoC containers but have not been able to understand it enough to implement it in projects. BI and mining services was a WOW session, this  IS something i need to look more into – i find this highly relevant from a mobile perspective. Ted Newards talk on XML messaging was another wow´er, there are flaws in the current XML web services architecture and the soap protocol.

Just before the .net rocks show i ran into Roy Osherove and wow, he remembered me.. i had 5 days in a TDD class last September, and he remember me! the man must have an elephant´s memory :)

DeliciousFacebookDiggStumbleUponTwitter

0 responses so far ↓

  • There are no comments yet...Kick things off by filling out the form below.

Leave a Comment