What is application block?
When you start to develop more than 2 applications, you will see that we have some part of code in common. All this common part, db layer, caching system, authentication process, File export, reporting, file import, configuration, log system, … are the block application!
In a lot of firm we used a Toolbox where we find all this kind of application block to share it across all project.
In another part of the web, you have something marvelous which release name Ruby on Rails which is a framework + Tools to generate all by template. It is good for web but nothing for Winforms, only on ruby. But a lot of other little son appeared for other language (Monorails for .NET, Django for python, …)
What we see here is that Ruby made something totally expandable with some basic example. Sharing tempalte is really important and the issue with basic ToolBox is that it is used only in one entreprise. So we have not the power of community. Community is always better above all. Wikipedia, open-source project,… are just few example of community powerful. Tool are not linked to a non free IDE (do not need Visual Studio…). Ruby not have only template of business class but too for view part. Ruby make the structure too. So lot of other things in ruby in fact…
At the End VS2005 make snipset in VS2005 to have small template system. But we still have nothing for structure and db layer and view template, business template…
Microsoft have released some framework WWF(workflow) , WCF(communication), WPF & Silverlight(presentation), LINQ(database and Xml), … And finally it is not so good.WWF bring work-flow but is far from a work-flow application as Worky or WorkflowGen. WCF only manage service to trigger action but we have nothing about data file transfer. WPF is realy cute but no template or automation here.To much complicated and no console tool or good GUI… You always have to write XML file so we change the language to gain some lines but nothing as good as ruby. No auto generation thanks to template system.
MS have done too profiler for .NET 2.0. So a lot of thing but nothing really easy to used /user friendly and quick. Nothing which rox all. We have framework syndrome with some expandable class but no real business class to used. It give some authentication process but nothing to say, I want to authenticate via user table in DB or via Active directory, or even via config file…
So, .NET need a real tool to make not only template as ruby but to manage small template (snipset) , middle template ( controller, viewer, model) and Big template (authentication process, File importation, Search Engine, File exportation, work-flow, …). So all we see is different little framework but not a big framework which done all, expandable, centralized, pluginable , which can be linked to IDE or console, cross-language, cross-platform, open source,… To sum up which take power of community with all basic things in it.
I hope I will see something similar in Mono. I know that just a dream but we really need it to have not to always reinvent the wheel.