/// Wednesday, November 30
I should have formally announced what Gamba is. Gamba is a web framework built on a well understood design pattern, MVC2. MVC2, unlike ASP.NET which is a simple page controller model, has a front controller directing actions to sub controllers. The duty of the front controller is to further separate the concerns of what a page has to do from what an infrastructure should provide. Every page should not be concerned with user authentication or how to handle exceptions. In the ASP.NET model where users are accessing the page directly, you're forced to handle it on the page or by inheritance. Ideally a page should only be concerned about rendering data its given, nothing more. The front controller also insulates your users from changes in the backend since URLs are logical paths not physical paths as in ASP.NET. I would highly recommend googling front controller or MVC2 to get a better understanding of this pattern.
My goal for Gamba is to create a web framework suitable for consulting work. Gamba has first class infrastructure support for things like branding. The HTML templates will be editable in design tools like DreamWeaver. The data templates will use normal SQL queries or stored procedures making it easier to integrate with legacy data. Gamba is based on Boo because I believe and have shown it to be more flexible than any other .NET language. In the end, I'll show how you can build a blog in less time than Ruby on Rails and have a fully compiled application with no templates. It will be more scalable and faster.