* What kind of software do you mainly develop with NHibernate?
Web Applications, ASP.NET v1.1 using Sql Server 2000. Also tried using MS Access, but quickly gave up.
* How would you qualify these softwares?
Both commercial websites and pet projects
* NHibernate experiences?
- The features you like / dislike (=> should be improved)
+ the pros & cons (that you have to deal with when using NHibernate)
* Speed is excellent, I am constantly amazed by how well NH performs.
* Have previously used Wilson OR Mapper - compare to that, I think NH performs faster, but OR Mapper is much easier to learn.
- The features you want (that aren't available)
* Null value attributes -
http://jira.nhibernate.org/browse/NH-311
* A "Count" method on ICriteria. That is, it would be nice to create an ICriteria, and then be able to execute a "GetCount()" type of method against it, so that it can be used for paging.
* About the documentation? (We are currently working hard to improve it...)
- How easy/hard is it to learn using NHibernate?
It's not so hard once you know where to look for answers (forums, other people's examples, Hibernate documentation). I think the hardest thing to find though are answers to
specific questions; the ones I struggled with the most were:
* What's the best practice for uisng NHibernate in an ASP.NET application? There are lots of different examples of ways you CAN do it, but is there a recommend/best way?
* How do I query a many-to-many relationship, eg. Tables A, B, AB - where table AB is NOT mapped (i.e. I don't have an "AB" object), and I want all the A's that have a certain property from B.
* Nullable types, default values, etc - see jira above.
- What are the parts you would like to see better documented?
Maybe port the Hibernate HQL documentation to better reflect which parts are available in NHibernate.
- What kind of samples / demo applications? With which features?
* As many different keys as possible
* Lazy loading
* ASP.NET "best practices" - something like a simple user manager, or blogging software, or a bug tracker would be a good template.
* HQL - start simple then get more complex
Hope that helps! Overall I think you've all done an awesome job; I love using NHibernate, and am trying to recruit as many people as I can to use it too :-)