Yesterday I held a talk at a cornerstone event titled Pimp My Code at Hard Rock Café in Göteborg. The talk was about convention over configuration. I began by quickly describing the design philosophy and it's origins (in for example ruby on rails) and after that it was all code demo.
The code demo was a walkthrough of an application I had written (with some bits requiring live coding) that showcased a bunch of conventions. The application uses a lot of frameworks, for example Fluent NHibernate, StructureMap and AutoMapper. My point was not to dig deep into these frameworks but show show how they provide support for conventions and how that can be utilized in your application architecture. Among other things I showed how a Command/Query WCF service with automatic handler lookup could be achieved.
The frontend part of the application was taken from Rob Eisenberg MVVM mix talk. I modified it a bit and connected it to a real backend system. This application is treasure trove of brilliant ideas. Ideas that later materialized in the excellent Caliburn Micro framework.Links
- The code and powerpoint is at github: http://github.com/torkelo/pimpmycode
- Rob Eisenberg MVVM talk from Mix: Build Your Own MVVM Framework
- Caliburn Micro: http://caliburnmicro.codeplex.com/
- AutoMapper: http://automapper.codeplex.com/
- MSDN Article Design For Convention Over Configuration (by Jeremy Miller)
- Fluent NHibernate: http://fluentnhibernate.org/
I will be doing the same presentation in Stockholm on december 6th at Debaser Medis. It is fully booked, so for those that have managed to get tickets, see you there!