(final) Summer of NHibernate Session 14: Migrating to NHibernate 2.0 is Available

For those following along, I have just posted the 15th (yes, I know it says ‘Session 14’, there was a ‘2a’, remember? smile_wink) and final installment in the Summer of NHibernate screencast series for download.

As promised, in this installment we port our data-access-layer code and related unit tests to the recently-minted NHibernate 2.0 release (well, actually my code is using the build from the trunk for the upcoming 2.1 release, but there’s no difference as far as the code in the sample project should be concerned smile_embaressed).  As part of this process, we take a look at some of the breaking changes between NHibernate 1.2 and 2.0 as well as discuss some of the new features that 2.0 offers to give viewers a good sense of where they will need to make changes in their existing projects to support an update from 1.2 to 2.0.

Since this is the last installment in a series whose focus was explicitly just on the basics needed to get started, we also take some time to discuss some on-line resources for learning more about NHibernate as well as list some other OSS frameworks and tools that can work with, depend on, and compliment NHIbernate in your development process.

Good luck on your continued journey!

If you are reading this post and have been watching this screencast series, the part of the NHibernate journey that you can take with me has reached its end, but recognize that you are just at the beginning of a much longer journey of learning that can take you into the much more advanced features of the NHibernate O/R Mapping framework.  There is a tremendous lot more out there to learn than the (relatively) small parts of the system that I attempted to cover in these sessions.

A Note of Thanks to the Community

I want to take a brief moment at the end of this series to offer heartfelt thanks to those who contributed any amount of money at all to help defer my bandwidth/hosting costs, feedback and input as to the content, quality, and structure of the screencasts, suggestions for additional topics, encouragement, constructive criticism, or any combination of all of the above.  And a special shout-out to Scott Hanselman who both helped publicize this effort on his blog (that gets A LOT more traffic than mine!) as well as talked some sense into me during a phone call that got me to create an easy-to-remember domain name for the content and host it somewhere legitimate even if it is costing me some money.

When I started this effort of releasing these to the community way back in late June, I really didn’t know what to expect.  Would anyone find value in these?  Would anyone follow along for 15 whole weeks (or even a bit more like 18-20 since I skipped about 2-3 weeks towards the end there when my other obligations got in the way) except our own employees who really sort of have to watch them smile_teeth?  Was it the right thing to expand from the original 5-6 installments to the eventual 15?

I have to say that the number of donations pleasantly surprised me (although sadly I still cannot quit my day job smile_tongue) as did the level of positive feedback I received.  But the numbers of viewers that are pointed to by my analysis of the bandwidth used on my hosting server is what really completely blew me away…

Download Metrics

Several of you have asked questions about how many people have been downloading the screencasts and I just wanted to share with you some quick approximate stats to give you a sense of the volumes:

  • average size of each of the 14 video files: 185MB
  • total bandwidth for downloads to-date: approximately 2TB

If you divide 2TB by 185MB, you get an amazing number of about 10,700 total individual downloads.  If you assume that every visitor has downloaded all 14 prior-posted installments exactly once, you get 10,700 downloads / 14 screencasts = about 760 individuals that would have downloaded the entire screencast series smile_whatchutalkingabout.

Personally, I find that to be an amazing number.  When I started to release these, it never dawned on me that there would be anything even approaching that level of interest.  Likely what’s going on here is that some will have downloaded just a few of the installments and still others may have downloaded a single installment more than once (to get it at home then also at work, for example), so these numbers really represent just a very crude approximation.  And in this era of podcatcher software I’m sure plenty of people have subscribed to the RSS feed and auto-downloaded the content but never bothered to actually watch it.

But if anyone can find fault with the conclusions I’ve reached with this bandwidth analysis, please chime in as I’m interested to hear where my conclusions may be flawed.  750+ viewers seems an incredible conclusion to me, but I don’t see any other viable explanation for the bandwidth levels I’m seeing from my site hosting service.  If my analysis is wrong and only 10 people are really watching these, that’s fine for my ego too smile_teeth but I’d like to understand where my bandwidth-analysis logic has gone astray.

As always in this and anything else I might post here, thoughts, comments, (constructive) criticism, and feedback are always appreciated~!

And I’ll hope to see you again during the hopefully soon-to-start Autumn of Agile series.