As my friend Dino already announced, the Northwind Starter Kit has finally been released. Let me just bore you with a little bit of history. During the last years, I noticed a growing interest within the .NET community for topics (I'm in love with) like: design patterns, unit testing, (agile) methodologies and so on. Being a regular speaker at Microsoft events here in Italy, I found myself in need to set up presentations and demos covering these topics. Instead of creating "synthetic" code, I decided to create a simple "reference" application in order to show it during my talks. This app:
- Should be based on a layered architecture, implemented as a service layer and sporting a "real world" domain model
- Should use well-known design patterns and eventually idiomatic design considerations, showing the rationale behind all these choices
- Should use Northwind as its default database, in order to easen its deploy. It should also be decoupled from the physical structure of the database, in order to allow to use different stores
- Should offer unit tests
- Should be available with both web-based and smart client GUIs
- Should be documented in... some way :-)
Since I'm not a full time speaker/trainer/author (I must confess that in my real life I work as a software architect at Managed Designs), I could only use spare time in order to implement the the application: I had some working code, but it was far from being (and still is, to be honest) the "reference app" I dreamt about. So I looked around in order to make this app a community supported project, christening it "Northwind Starter Kit" (NSK) and releasing it under the Common Public License. Then I contacted luKa and Ricky that accepted to be part of the "core team" of the project, and later even Dino joined the project. Last week we released a first drop of the code, on which we're still working. So, what re we going to do from now on? We won't save the world. We'll simply continue to work on the project, hoping to see both the app and the team growing as time passes. There's still a *lot* of work to do. Would you like to help us? Download the archive, expand it, modify the connection string stored within the config file, and run your favourite flavour of the GUI (windows or web). Should you: have trouble doing this, experience exceptions using the application or spot errors within the source code, please contact me or discuss the issue(s) using the forums in order to give us feedback. We hope we will be able to set up a collaborative development process: time will tell, but in the meanwhile, we'll continue to work onto NSK.
Technorati Tags: NSK