Another TechEd has come and gone - and as always it was tiring but lots of fun. For me this is one of the best opportunities to meet with lots of people and find out how everyone is using our stuff and what we can do to make it better. Thanks to everyone who took the time to stop by and talk to us at the p&p booth and the architecture cabana, and for all of those who put up with watching Ron and me argue with the projectors during the Enterprise Library presentation!
Those of you who made it to the Enterprise Library presentation at TechEd (or any other similar sessions we've run) will find the slide at the bottom of this post very familiar. It has served us well - we first put it together even before Enterprise Library was launched, and it's featured in many presentations since then. The point of the slide is pretty simple, and it's that we view Enterprise Library as a starting point, not a finishing point. We know that every organization is different and that we couldn't possibly meet all of your requirements with a generic reusable asset library, so we built in extensibility as a feature - both for individual blocks and for the library as a whole. So right from the start we have been trying to foster an "ecosystem" of customers, partners and the community building their own assets that integrate well with Enterprise Library.
Now that EntLib has been out for five months, we are very happy with how things are going. Avanade has released a new version of their ACA.NET offering built on top of Enterprise Library, many customers have built their own blocks and frameworks around it, and the community have dropped all sorts of interesting things into our GotDotNet User Samples area and other forums. Here are few of my favorite community submissions, in case you have missed them:
- Lenny Fenster (a Microsoft Consulting Services employee who works with the p&p team from time to time) built an entire new block called the Data Mapper Application Block which helps you build data access layers at a higher level of abstaction to the Data Access Application Block
- Mark Seemann (another Microsoftie out of Denmark) has also built a new block, called the Service Locator Application Block. It demonstrates an implementation of the Inversion of Control pattern in a block that provides a general-use object factory which can load component dependencies in a configurable manner.
- Hisham Baz (from Avanade) has built a great extension to the logging block - a Rolling File Sink that lets you log to a text file using flexible policies for starting new log files at appropriate times
- ThisBytes5 (occasionally known as Wayne) has put together the Enterprise Library Configuration Console Module Generator which is a tool that makes it much easier to build a design-time experience for new blocks and extensions
- Many people have submitted extensions to the Data Access Application Block to make it work better with Oracle, as well as complete implementations for MySql, Sybase and Firebird (and I don't even know what that is!)
- The good people at enterpriselibrary.jp have built new resource files to localize Enterprise Library into Japanese. They have also built a number of tutorials and other great content that I am unable to understand a word of 🙂
And this is just the tip of the iceberg - thanks to everyone else who has contributed to our "ecosystem" vision, even if I forgot to mention it or haven't yet seen it. We're really looking forward to seeing where this goes next!