I've been asked to do a presentation on NHibernate for a group of developers (not sure if i'm allowed to mention the details yet so i won't). My presentation would be part of a larger session, but i would get about 45 minutes to talk about NHibernate. You could cover a lot in 45 minutes, but then again, i can't assume that the audience has prior knowledge about NHibernate. So now i'm wondering how i should approach the presentation... i don't just want to do simple Hello World stuff, but it might be hard to get into the really interesting topics if most of the audience doesn't already know some NHibernate basics.
I probably should start with a relatively simple example, but i want to be able to quickly work my way up to the more interesting/advanced stuff since that is where NHibernate truly shines, in my opinion. I was thinking of starting with a small domain (maybe the online auction example from NHibernate in Action), explaining the basics of the mappings, showing the transparent persistence, doing some querying with Criteria/HQL and perhaps even LINQ (it might be really usable by the time of the presentation), and then i would like to cover topics like query batching (you know how much i love that), the batching of DML statements (yeah, love that as well) and explaining some things about the first and second level cache (love those as well). I don't know if i can squeeze all of that in 45 minutes, but then again, this isn't a workshop or anything so if i can demo all of that stuff and just talk a bit about those things, it should be doable, right? I'd then complete the presentation by mentioning a bunch of other cool features and strengths, along with some references on where they can learn more.
What do you guys think? Are there any topics you think i should definitely discuss? What i just mentioned is just the first i could come up with and i definitely haven't made my mind up yet so i would definitely appreciate some suggestions from you guys.