I wanted to share with you guys some very exciting news regarding a new alternative development experience which we are developing as a request from many developers that really like the VWG pipeline but prefer the web development experience flavor, which means developing using markup languages and allowing on demand compilation and as a result “notepad” style ftp editing.
As the architect of VWG the development experience or rather paradigms was never the essence of VWG. The actual essence is the productivity and the fully event base programming developing AJAX style applications which are provided with the security of a pure server app. While ASP.NET provides an event base approach it is completely dismissed when working with AJAX and the richness of the server is lost and replaced with JavaScript programming and with that comes a very high security risk. Visual WebGui returns the power of the server to AJAX development and provides a statefull yet scalable, server centric architecture that provides the benefits and user productivity of AJAX with the security and developer productivity we had before AJAX stormed into our lives.
When I first came up with the concept of Visual WebGui, I was frustrated by the fragile and complex nature of developing web applications. The contrast in productivity between working in a fully OOP compiled environment vs scripting even today with JQuery, Dojo and such, is still huge. Even today the greatest sponsor of JavaScript programming, Google, is offering a framework to avoid JavaScript using Java that compiles to JavaScript (GWT).
So being frustrated from existing state of web development I decided to find a way to abstract the complexity or rather delegate the complex job to enable developers to concentrate on the “What” instead of the “How”. Choosing the form based approach was intuitive when I considered the greatest value to be for enterprise LOB apps… So I embraced the Form based approach for the developer experience and obviously it provides classic enterprise developers a familiar and productive environment they are used to get from their desktop developments.
While the traditional OOP development still rules the enterprise, the differences between web sites and web applications have blurred and as the differences between classic developers and web developers. So we see declarative languages in desktop / backend development environments (WPF / WF) and we see OOP gaining more and more power in web development (ASP.NET MVC / ASP.NET DOM). What has not changed is enterprise need for security, development ROI, reach, highly responsive and interactive UIs and scalability. The advantages declarative languages and on demand compiling provide over classic development is in my view mostly change flexibility and a more readable initialize component.
So what we are working on is kind of like a replacement of the designer initialize component with Xaml code that allows the developer to work with easily. The first stage will be providing a fully working SDK that can be completely designed using Xaml. We are going to provide a new project template called Visual WebGui Site which is the equivalent to ASP.NET web application vs. ASP.NET web site. The code in the new project template will be compiled on demand using the build provider mechanism ASP.NET has. This means that the performance hit is only on the first request and after that the performance is the same as a prebuilt solution. This will allow the flexibility of a dynamically updated sites and the power of fully blown enterprise applications over web. You can also use prebuilt features available in ASP.NET to enjoy both worlds in production.
The development will gradually be added to the SDK as it does not affect stability as it just a different language to work which the same core. We believe that the first workable preview version will be released in a few weeks 3-4, which will allow you guys to play with. As VWG version progresses it will be more and more integrated into the development environment and to the core. Features such as Form.SaveToXaml or Form.LoadFromXaml can be of great advantage even if using Xaml as a designing paradigm is not required.
VWG Xaml implementation will be the first truly compliable Xaml implementation as Microsoft implemented Silverlight and WPF as a runtime markup interpretation as opposed to the ASP.NET markup implementation which is compiled to CLR code once. We have chosen to implement the VWG Xaml parser as a different way to create CLR code which provides greater performance over the reflection alternative. VWG Xaml will also be the first server side Xaml side UI engine which while giving the power Xaml will not required any plug-ins or installations on the client side.
You can see here a short video demonstrating VWG Xaml markup in action.
We have also uploaded the "cloud IDE" sample here, so you can play with it.
I would be glad to hear your inputs on the new concept,
Cheers,
Guy