Jamie's Space

JP

Code Camp 2008

Thinking in WPF - Ivan Towlson

This talk was fantastic. My previous attempts at learning WPF failed miserably, but Ivan’s talk showed me that I was just thinking about programming a UI in WPF wrong. The programming model is very different to WinForms, and if you try to program in the old WinForms way you will have significant problems.

Test Driven Development and Dependency Injection - Robert Fonseca-Ensor

This was another excellent presentation. Robert covered the standard TDD stuff, but did a great job of explaining DI, as well as showing a short (~20 line) DI container that you can copy paste into any project. This tied in really well with the other talks.

ASP.Net MVC - Owen Evans

Owen covered most of the regular ASP.Net MVC stuff, but went into a little more detail than the last presentation I saw on it. There was a good discussion at the end about the difference between the MVC model and the WPF model of synchronising data between the View and the Model. The outcome of this discussion was that they are both useful, but for different areas. The stateless nature of HTTP means that the MVC pattern makes a lot of sense for websites, where as the use of data binding makes sense in a rich client application.

ASP.Net Dynamic Data - Scott Hanselman

This talk was a complete surprise for me. I hadn’t heard anything about Dynamic Data before this, and was very impressed with it. The gist of it is around scaffolding Linq entities. It has a bunch of built in logic for creating basic CRUD websites quickly.

The real surprise is the level of customisability - every single thing in this system is customisable. Every object is rendered by a template, but the automatic choices can all be overridden so if you don’t like that Category.Description renders with a TextArea, you can specify something else in code. The default templates are generated in your project, so you don’t like the default TextArea, you can change that template which changes the rendering for all of them.

Also Scott mentioned that this functionality will be making its way into the ASP.Net MVC project - once this happens, I will be completely sold. This is the sort of thing that would make CRUD style web development so easy without sacrificing customisabilty. Great stuff.

Silverlight - Jonas Follesco

An entertaining talk on some of the crazier things you can do with Silverlight. They have added support for using JavaScript objects in the C# code behind the silverlight application, and C# object in the JavaScript in the browser. He also demo’d a Silverlight - Javascript - Flash application using a webcam, which was a good end to the day.

He also covered Dependency Injection and TDD in silverlight.