Engage Architecture meeting notes - 2009-04-30
The Shape of Engage:
Mobile
WebKit + JavaScriptCore
HTML, CSS, JavaScript for all UI & logic
Start with iPhone, another platform too (Android or Nokia Symbian). Infusion FSS could be extended.
concern about iPhone's accessibility
another platform not decided on yet
are visitors expected to come w/ their own devices? will museums buy new equip (realistic?)?
Mapping & Visualization
-visualizing relationships between objects & concepts. UI that work on desktop & mobile that can provide visitors w/ a sense of how the exhibit is organized in space
main tech:
HTML Canvas
Processing + Processing.js
parser for Processing code to be rendered in HTML canvas?
open web alternative to Flash
Service Layer
Foremost, ability to handle different data
-how to work w/ data in many systems so data can be presented to visitors in interesting ways
-how can visitors contribute to content (e.g. tagging, creating their own collections, connections w/ outside resources such as social networking)Affordable to museums
Open and accessible to contributors
Two forerunners:
1. Pure Python stackCherryPy, SpringPython, etc.
write a new renderer when needed
2. Server-side JavaScriptpractically, backed by the JVM
potentially could move to V8 for speed
all server-side code in JS
ChangeApplier will be key
Model infrastructure shared across both the client and server (i.e. awesome)
main code to write:
request handling and path parsing
opportunity to share code directly with the CollectionSpace project
Persistence:
1. CouchDBflexible schema
museum catalogs tend to change - but SQL quite rigid
MySQL - highly dynamic queries over static schema
Couch - queries static, schema more flexible, document-baseduseful intro to Couch: http://books.couchdb.org/relax/why-couchdb
2. Solr/Lucene
*Role of Infusion in Engage
-prominent (e.g. FSS for handheld experience)
-Web good for allowing access by many different platforms (e.g phone, kiosk, browsers)