My observation, despite seeing slides that throw â€˜nhibernateâ€™ into them, is that, of course, the new technologies I see emerging from Microsoft is really geared toward the Entity Framework. That doesnâ€™t surprise me, I do think it provides some rather seamless integration.
However, I do think it tends to push these great open source projects out of the fold.
One of the most interesting projects Iâ€™ve seen come out of Microsoft has been the asp.net mvc project. Rather than push out these open source projects, they embraced them, and even added support for them (the biggest one being jQuery). Granted, the community took the ball and ran with it with the MVCContrib project. The MVCContrib project for asp.net mvc, to me, represents a great community involvement into the asp.net mvc development process. It excels with different view engine options, different validation options, new controls, different Inversion of control container support, etcâ€¦ On top of that, we have developers building templates like the Sharp Architecture (oh never mind, looks like they moved away from codeplex to googleâ€¦ which maybe highlights what Iâ€™m trying to say hereâ€¦)
I know RIA.NET is very new, and my guess is that it was probably pushed as hard as possible to make it out the door by Mix 09 (my guess, I have no idea what happens internally at MS â€“ lol), but the success of this IMO is the ability to pull off what asp.net mvc did by embracing the community, getting them involved.
Showing â€˜how to use RIA.NET with NHibernateâ€™ is one great example â€“ (even a â€˜here is how to use this with DAABâ€™ would be nice â€“ create database connectivity).
So, what Iâ€™m trying to say â€¦ : we need to see from MS the continuation of what we saw from the asp.net mvc team â€“ the willingness to go outside of â€˜just the core ORM EF/Linq2SQLâ€™. Just to give an idea, Iâ€™ve seen one example of ADO.NET DataServices with NHibernate out on the web â€“ done by Shawn Wildermuth. That is about all Iâ€™ve seen , and even in that post (none of the needed NHibernate.Linq libraries were included). Perhaps it is due to NHibernate moving slowly on the Linq front â€“ it is there now as a wrapper around the ICriteria, but it is critical imo to getting developers interested in technologies such as RIA.NET. Shawnâ€™s example shows â€˜here is the EF version, here is the NHibernate versionâ€™.
Iâ€™d like to see more of this â€“ just including the verbage of â€˜oh, and you can do that with NHibernateâ€™ isnâ€™t very helpful, it comes across to me as just giving lip service to the open source community when there isnâ€™t any examples or concentration on the matter :) Nikhil gave great examples of RIA with Azure, Linq2SQL, even jQuery in his slides and talks from Mix 09â€¦ I encourage them to extend that into the technologies such as DAAB and NHibernate to really show how RIA can be the â€˜glueâ€™ between those layers and the UI.
I guess I do see from Brad Abramâ€™s blog post â€˜What is RIA.NET Servicesâ€™ that these items I address are in the pipeline and just not ready yet.
System.Web.DomainServices.Providers.dll – the LINQ2SQL and EF providerâ€¦ we hope between us and the community to provide much more in the future such as Azure, Dataset, nHibernate, etc
Soâ€¦ it sounds like the missing piece right now is that an nHibernate DomainService Provider must be written.
I would love to see someone(s) from the RIA.NET team really engaging the community, answering questions, posting information â€“ become very transparent â€“ as I see a ton of potential in what MS has done with RIA.NET. I think after the release at Mix 09 it will continue to produce many questions by developers interested in learning more about it ie. with Nikhil Kothari showing jQuery calling RIA.NET services it opens the door up to many more possibilities outside of â€˜just Silverlightâ€™.
I think there is a great opportunity to really show and promote this â€˜prescriptive patternâ€™â€˜. In the rich applications (ie. asp.net mvc with jquery, asp.net webforms needing richer client side capability, then finally the silverlight controls) Iâ€™ve built, the RIA.NET capabilities would have filled that much needed space.
Basicallyâ€¦ Iâ€™m very interested in learning more about slide shown from Nikhilâ€™s talk:
I hope to see the RIA.NET team continue to flush this out with examples, demo code, etcâ€¦ filling in the voids 🙂