skip to main content
Department of Computer Science University of Colorado Boulder
cu: home | engineering | mycuinfo | about | cu a-z | search cu | contact cu cs: about | calendar | directory | catalog | schedules | mobile | contact cs
home · events · colloquia · 2009-2010 · 

Colloquium - Basman

ECCR 265

The Fluid Project and the New State
University of Cambridge

The aim of the Fluid Project is to promote the development of accessible interfaces delivered over the web. However, since the broadest definition of "accessibility" comprises any kind of mismatch between the form of an interface and the capability of the user to achieve a particular task through it, this aim is unrestricted to the delivery of any particular form of excellence.

The web is notorious for exposing inadequacies of approach in software design. Delivered artifacts frequently are hard to maintain, and hard to repurpose, fail to be portable or to meet any reasonable breadth of requirements. Whilst the fundamentals of REST and the cross-domain function of markup were put in place with good forethought by the original architects of the Web, these values are typically turned upon by generations of developers who declare "the web is broken" and that they have a new, or else an old, methodology designed to fix it.

Antranig Basman photo

Fluid aims to create an architecture where fundamentals (markup, JavaScript, CSS, and plain data) can speak for themselves, and not to imprison them within object hierarchies or other inappropriate constraints. In order to provide a view to all stakeholders (user experience experts, markup mechanics, data curators, developers, and all the varieties of end user and user agents), ideas are drawn from some of the oldest (functional programming) and newest (IoC -- inversion of control) areas of software conception to weave an infrastructure where all of these viewpoints can be smoothly accommodated, free of painful shearing.

A direction more particular to Fluid centers on the primacy of data. One of the core values of software development over the past 20 years has been the importance of "encapsulating" data and state, the crucial lifeblood of an application, in a place where the primary stakeholders of a design cannot get at it. In contrast, Fluid aims to provide tools and idioms that facilitate working with designs where data is "on the surface", in units which are provisionally dubbed "state-bodies". These carry the idiom called REST at the HTTP level into the very heart of application design, creating a complete dehydration of the "controller" section of the traditional MVC triad.

At the practical and community level, Fluid is working with partners drawn from cultural institutions (museums, art galleries, libraries and others) as part of Fluid Engage to create both a self-contained software package as well as a decomposed tool set to enable the marvels of content which these institutions have stored up to be liberated for scholarly research, creation of new learning experiences and general public delight to the widest variety of users on the widest variety of devices. The choice of JavaScript at all layers of application design (in the client, within the middleware, and in the persistence layer) creates a unified and harmonious design that makes minimal demands on the mental space of developers and maintainers, and markup-centricism provides a direct route to delivering the same content tailored to a variety of agents (desktop browsers, in-museum kiosks, mobile devices) to users with a variety of accessibility concerns (sight impairment, cognitive impairment, motor impairment) with the least end-to-end effort and repetition of design and implementation work.

The Department holds colloquia throughout the Fall and Spring semesters. These colloquia, open to the public, are typically held on Thursday afternoons, but sometimes occur at other times as well. If you would like to receive email notification of upcoming colloquia, subscribe to our Colloquia Mailing List. If you would like to schedule a colloquium, see Colloquium Scheduling.

Sign language interpreters are available upon request. Please contact Stephanie Morris at least five days prior to the colloquium.

See also:
Department of Computer Science
College of Engineering and Applied Science
University of Colorado Boulder
Boulder, CO 80309-0430 USA
Send email to

Engineering Center Office Tower
ECOT 717
FAX +1-303-492-2844
XHTML 1.0/CSS2 ©2012 Regents of the University of Colorado
Privacy · Legal · Trademarks
May 5, 2012 (13:29)