Libraries and Frameworks that make Development Hurt Less

Programming is hard; without good libraries and frameworks, it's harder.

Libraries and frameworks add to your programming vocabulary; they let you express a programming idea with fewer words and with more precision (watch Guy Steel's lecture on this idea). Usually, they also raise the level of abstraction; this lets you work closer to the problem which improves the odds that you'll actually solve it!

But with this power comes danger. Poorly designed libraries can result in more complexity than they are worth. And a poorly designed framework can paint you into a corner where your only option is to throw everything out and start again (did you ever wonder why there are about 30 Java web-app frameworks?!).

Vista's libraries and frameworks protect you from these dangers because they are derived from existing, enterprise-class applications. Perhaps even more important, they follow well-established principles of good systems design (see conceptual integrity).

P R O D U C T S

The Relational Template Library

The relational database model is at the same time extraordinarily powerful and incredibly simple. Unfortunately, harnessing relation database technology in ordinary applications has always been difficult.

Vista-RTL is a modern C++ library that liberates developers from antiquated relational interfaces, allowing them to easily move data back and forth between relational database management systems and the C++ environment.

Vista-RTL solves the impedance mismatch between the relational model and traditional programming languages. It provides a modern, type-safe, object-oriented, expressively-economical, and performant interface to relational database management systems.

Finally, an easy way for C++ programmers to interface with relational databases!

The Browser Application Framework

With modern tools like Dojo the line between local native applications and browser based applications has all but disappeared. But, without a well-designed framework, attempting to build a real application in the browser, is a huge and painful undertaking. The Vista Browser Application Framework (BAF) rescues you from this task.

Vista-BAF is dramatically different that almost everything else available today: all presentation and user-interface logic is handled at the browser. Seeing this design work for the first time causes one of those moments of epiphany--"why haven't we been doing this all along." Since the client and server lines of responsibility are drawn with a bright line (finely!), each is easier to implement, easier to augment, and easier to make more powerful.

Vista-BAF is the Dojo-based, client-side, Rich Internet Application framework that was originally sketched in the book Mastering Dojo. It's open source and includes a reference server framework.