Dev Teach 2009 - Day 2


Sleeping like a baby but still being excited enough to wake up earlier is one of the greatest feelings that I experience in this sort of conferences. That and not having to vacuum-clean the floor for a whole week. Aaah, those little pleasures in live...

Introduction To MEF

My intention attending this talk was to answer the questions:

  • "Is it an IOC container?"
  • "Is it another reincarnation of ObjectBuilder?"
  • "Is it a plane or would it just brew some coffee for me?"

And I got pretty much all of them answered, which, for me, is enough to put a tick in the square "Productive Talk" (the coffee question was a No, but I see an open-source contrib-style project coming :-p).

A bit of a set back was that the chances of the team dropping the coolest feature (on-the-fly load of parts) are very high. Oh, that and the framework not offering any facilities for assembly unloading, apart from us developers managing our owns AppDomains. Still, a technology worth considering when the need arises.

Curiosity: amazing how "blue-badge" speakers can be distinguished from those who are not, even if they do not mention their employer.

A Lap Around Silverlight Toolkit

Another Microsofty and another fast-talker. And a very nice session.

It provided everything that was announced and the speaker was was very effective and energetic (once he loosened up).

Perfect session for someone with my knowledge on the subject: a live run-though most common controls that can be used in Silverlight, and, as it was coded literally in front of us, it provided the chance to show some tricks and reveal how "green" the tools provided by Visual Studio are.

DSLs and LOP

I had another Silverlight talk scheduled, but unfortunately was canceled, so I headed towards this one.

I am no expert in language design but I can recognize the value of a well designed and focused language to solve a concrete problem.

Too bad that F# is not one of my strong points either as the speaker showed some cool things that can be achieved with this language.

It also showed a bit of Oslo. Enough to keep my interest high for the upcoming sessions next day.

Even though it was on the Architecture track I missed some coding examples on how to create effective fluent interfaces, for instance (even though I have to admit it was not the purpose of the session).

Agreeing to Agree. DbC and TDD

Hot topic for my liking and I was not disappointed, although it was very high level with no concrete code.

Nonetheless it provided me with a lot of useful information that I can (and will) use as material for my upcoming talk on the subject. I hope it will trick my audience by making me look as if I know what I am talking about :-p

Apart from the core content of the talk (rounded-up with beautiful analogies) there were a lot of very interesting questions which turned a very interesting session into one of my favorites.

Confidence in Software Development

I knew for sure I was not going to see any code in this one but I attended for several reasons:

  • I am not only a code monkey (I use Outlook too :-p)
  • Last year I missed one of Donald's sessions and I am a regular reader of his blog.
  • I like what I read in his papers so I must like what he speaks, mustn't I?

Last "reason" is not always true, but it is in this particular case. He was very entertaining and although the session started kind of slow for my taste, it got better and better with the time.

He started adding more and more personal anecdotes and real cases that made all the attendance nod all at once while smiling with a "that is exactly what I am going through" sentiment.

In the end is about confidence: SOLID (with a big S), clean and intention-revealing code, good unit tests, continuous integration, no project management bullshit and a "can-do" attitude can make a difference. And will make a difference.

Top 10 Umbrellas

This is probably one of the weakest sessions I have attended. But to be honest, there were not many other interesting options.

Not that it was bad or anything, but the subject itself was not as promising as some other session and the speaker did not make it any more interesting (too much time spent explaining extension methods for a session that level).

I had already had a peek into this library and "borrowed" and modified/completed some of the utilities for my tool-belt-library but there were some parts of the project's architecture that were a bit esoteric and I wanted to know more.

Fortunately enough that is what I took away from the talk, a couple of ideas that will be implemented in my library: a provider architecture and some extension points to better organize my extensions.


Take-Aways and Highlights

Starting to "get" MEF, my growing interest in Oslo and the two great talk of the days about contracts and confidence in development.

You can recognize a common complaint of mine for several of the sessions, regarding the lack of code examples and more concrete information. so I am starting to think it is unrealistic of me to always expect coding sessions