Where's the Right Way to Ajax?

by Stian Solberg 20. April 2009 10:59

Dino Esposito has written an article on DotNetSlackers with an oveview of different Ajax Web Architectures. The article covers how Gaia Ajax fits into a "Active Server Pages" pattern, and why Gaia is a solid architecture for your next web application.

Gaia Ajax is an Ajax toolbox for ASP.NET and Mono. The library is dual licensed, where you can use the GPL license for building open source projects, and for your proprietary projects you can obtain a commercial license.

Read the complete article on DotNetSlackers

Principles of UI architecture for libraries

by Jan Blomquist 20. October 2008 12:40

In this article we shall discuss some of the core tenets when creating UI frameworks/libraries and how these principles guides us in the development of Gaia. Gaia is an Ajax library for the ASP.NET platform. It takes a philosophically radical different approach than it's platform counterparts, including Microsoft's own ASP.NET Ajax framework.

Many of the assertions here applies just as much to general software development as it does to framework development. It is however necessary with a stronger emphasis on a number of principles since you are now in the sphere of building software for other programmers and not general purpose end user applications. This leads us to one of the first postulates. The developer is the customer.

# The Developer Is The Customer

This gives us a little edge, because we are ourselves in fact developers. We know perfectly well how we want the product to be like. Unfortunately this statement does not always hold true. If it did, then all software libraries would be perfect which they are not. Another pitfall is not keeping your hands dirty, gradually moving away from day to day development work into abstract philosophical reflections in your ivory tower. Suddenly your product doesn't solve the developers itches anymore and it cannot survive.

The derived conclusion is to keep a close customer feedback loop with a focus on customer driven development. Including transparent tracking facilities, daily build system with unit tests and early/often releases. You must listen to the [voice of the customer].

This first postulate is mostly connected with the art of quality, but is deemed so important that leaving it out would make this work look poorer. Quality in your craft extends beyond the product itself and into the whole organization. The product is often just a manifestation of the quality.

Now that we know who the customer is, what can we do for him? This gives us the second postulate. More...

Suite, best of breed or in-house development

by Jan Blomquist 22. August 2008 19:49

In this blog I want to write about the pros and cons when choosing between suite, best of breed or in-house development when setting up the infrastructure of a developer shop. I will reason why we chose best of breed and the argumentation that lead to this conclusion.This blog will contain most references an examples to products on the Microsoft .NET platform, but the content was written to be read by anyone including non-developers. 

So what are the differences between the three alternatives. 

 Re-inventing the wheel

Alternatives

  • A Suite can be thought of as a collection of applications from a specific vendor. It doesn't have to be a commercial alternative and DotNetNuke is one example of a suite where all the major components are delivered in a single box (wiki, forum, blogs, cms, etc).
  • Best of breed are standalone applications that work isolated and doesn't rely on being part of different ecosystems. For these systems to be efficient they should provide a mechanism to be integrated with other systems. An example of a good best-of-breed system is YetAnotherForum which only focuses on delivering a good forum solution
  • In-House Development is building the stuff you need yourself. Skilled developers can rapidly build the desired functionality on an on-going basis and usually you build what you need as you go. 

"Personally I've experience with all three of the approaches and there are clear benefits and downsides to all of them. " More...