First things first 
Software is about the people. Scott, Tom, Bill, Peter, Brian, Tim S, Mo, Tim O, Hisham, Paul, Rohit, Prashant, Mani, and Kyle - you all rock. The team has pulled together a release that carries forward the best of the “Application Blocks” initiative that started within the patterns & practices years ago, but have added so much on top the result is overwhelmingly pleasing. I am happy, I am proud of working in a team like this, and I'm jazzed about working in a company that allows a team of this caliber to come together and focus on results and customer impact. 

Enterprise Library is out. While the general concept is an evolution from the existing Application Blocks for .NET, I hope you will see the engineering that has gone into these application blocks and the user experience is a qualitative jump. All blocks have tests. All blocks use each other in a consistent way. All blocks use configuration and provide integrated tooling around it.

Get It here

Here’s the link to MSDN. Do not let the registration scare you. If we know something about you, we can provide a much better experience...

So what's in EntLib?
There’s plenty of content out there so here’s the 30 second pitch..
Included Application Blocks
- Data Access
- Configuration
- Cryptography
- Logging and Instrumentation
- Exception Handling
- Caching
- Security (Authentication, Authorization, Profile, and a Security Cache)
Included Tooling
- Configuration console - to manage the configuration of the blocks above, and any other appblock you may build
Documentation
- Improved and consistent docs for all the blocks (to help you evaluate, adapt, use and operate the blocks)
- "How to make your own application block" documentation, to help you build blocks that plug into the tool and use other blocks consistently


Shipping Anxiety? Not with this release...
Personally, doing all this carried a generous amount of uncertainty to manage for me. Part of the original mottos of the olde BlueBricks project was "Easy to adopt, easy to adapt" (Michael Stuart coined that one I think) Would this new release be easy to adopt?

In the beginning, I was somewhat conservative about the approach. Were we making the right tradoeffs? I mean, DAAB was originally a small appblock, and it grew. Config schemas grew. From config-less support we went to having defaults provided by the tool. Using any block pretty much meant you'd be using the Config Block. 

Sometimes just because of some instinct, but most times helped by the trust in our dev team, PdM team, Kyle and customers we worked with, we made huge leaps in the way the blocks were built and delivered. Having such a team was essential, since I had an accident and was out of the circuit for a number of months around mid-last year, so I missed a lot of the fun, which to me means I missed a lot of the moments in which important turns were taken. All in all, we all got to a better place, and we blew away our own expectations.

I believe we made the right tradeoffs… I have no doubt this is a better release for our overall customer base.


So what's next?
It’s been a year since I started floating some “Library” concept slides around and the project, and then the partnerships, and the team and eventually the code gelled. The real work was done by the team… but anyways, I plan on kicking back this weekend and keep tabs on the blogsphere, monitoring how it reacts to EntLib downloads and evaluations.

The team has already been planning the work needed to go do Application Blocks on Whidbey (Whidbey is the MS codename for .NET Framework & Visual Studio 2005 ). This release targets Everett (.NET 1.1) (and thus shows bets practices for Everett applications), and we are going to start the work involved in moving over to whidbey. 'Moving over', however , won't be 'porting' - we don't just want to 'get it to run', since this is guidance, we need to illustrate best practices of using .NET 2.0.  This means re-engineering to use language, framework, and tool features. We have the intention of keeping this process in the open, so you can also use the information to move your own applications to Whidbey once it rolls out.

Also, the Smart Client program will be releasing the Updater v2 release, which is also an Enterprise Library - compliant App Block - which means it uses the config console for design-time config editing, and follows the general design & coding guidelines of the other blocks.

Thanks for letting us help you with your .NET development. It's been a privilege to be able to work for the community this way, and if you ask for more of it loud & clear, we'll keep on doing it.