Victus Spiritus


The Freedom to Create is at the Heart of Design

23 Apr 2010

Today’s post is a critical look at design elements, in particular the artistic elements of web programming and code design. I’d like to thank Ronen for challenging me to evaluate my design philosophies.

Open Design is a Way of Thinking

There are hard decisions that need to be made when crafting an interface and linked data flow model. Open design translates as a sculpted default flow, with a rich form that is fully modifiable by users who are so inclined. Simply stated, I strive for maximum flexibility and minimum user frustration. Much of my recent inspiration’s origin is Ruby, an elegant programming language that manages to do what I expect a majority of the time. This follows the principle of least surprise, with a caveat that it’s from Matz’s perspective. Although Ruby compilers and interpreters may perform relatively poorly in benchmarks today, there are inherent elements of freedom built into the core of the language that are not easily discarded.

One of the trends I predict to dominate code design over the coming years is a shift to higher level programming languages and interfaces. Already a larger group than ever is capable of programming enough to tweak designs (CSS, JavaScript, & JQuery), and startup their own web server with a database backend (Rails, Grails, Play, Tornado). Although the technology has become more diverse and complex, the surface layer that is easiest to new users garners the greatest community support. Given sufficient interest, open programming languages take on a life of their own.

Visualization’s Relation to Design

In my quest to construct a design for a fast and fluid open social browser I have explored several incredibly well received interfaces. Google Earth continues to be a data interface I strive to match in instinctual understanding and functionality. I’d like to share a few of the dominant design criteria that inspire me: