MCN 2004 Conference Presentation Notes
This is a detailed outline of what we covered in our presentation at MCN 2004. For the condensed outline that was passed out at the conference, please see the Session Outline?.
3:30-5:00 - Room 3 Content Reuse For Multiple Output Devices
Session Chair: Brent Gustafson, New Media, Walker Art Center
Panelists: Eric Williams, Walker Art Center Nate Schroeder, Walker Art Center
For the past year, the Walker Art Center has been redesigning its Web site and implementing a technical infrastructure that changes the way we work and think about our data and its output. The new site is database driven and generated using an XML application server called Ax Kit?. The XML can be translated to display on numerous devices, and is being used by the Walker for various output such as XHTML on walkerart.org, interactive Flash pieces, RSS news feeds, e-mail newsletters, dynamic signage in galleries, interactive telephony applications, and preformatted and edited texts for print. All data is administered through a centralized custom-built admin system accessed via the Web. This discussion will involve the thoughts and ideas behind this process.
So from that, I think we should focus our talk broadly into these sections: (brainstorming)
- Intro - "here's what we're going to talk about" (~10 minutes)
- Who we are. Who the Walker is and how we fit into the Walker’s mission.
- handouts - 50
- Briefly get feel for participants' experience and expectations
- How many of you have worked with XML?
- Get a feel for what they're using:
- How many of you are using flat html files, maybe with some CSS?
- How about php / CF / asp / cgi, etc?
- Full application server solution?
- Who is looking at doing a redesign in the near future?
- Have you decided on a platform?
- Main Presentation
- a brief history of the Walker online
- New Media Initiatives department was started in 1996 by Steve Dietz.
- Founded with responsibilities of presenting operational information, contextual information and using the web as a presentation space for commissioned work.
- Commisioned work is important because it meant that we needed to move an archive forward.
- As web technology advanced it became clear we needed to rework our web presence from the ground up.
- Old site had static files, framesets, non-dynamic content. A big mess for updates and maintenance. (show archive)
- Goals for redesign
- Put data entry and content generation into the hands of producers
- More up to date content
- Frees the New Media staffs time for other tasks
- Empowers producers and allows them to take more ownership of the site.
- Create accessible pages -- no framesets, etc.
- Continue to give access to previously produced content and artwork.
- Reuse content to leverage producers time most effectively
- Reduced turnaround on new sites.
- Put data entry and content generation into the hands of producers
- Implementation Strategies
- Database driven to create a reservoir of content separate from the web-presentation
- Neighborhood design style
- Using an urban metaphor the sites were designed to fit into a larger system with out being strictly confined by a previous design system.
- Using a central navigation we could create a system of different sites with in the larger Walker neighborhood.
- Since all the sites would be different it would reflect on the Walker’s larger mission of being a diverse multidisciplinary institution.
- Technical Choices
- Databases
- Mysql
- postgreSQL
- Languages
- Mason (embedded PERL)
- PHP (embedded)
- XML/XSLT (transformation paradigm, explain)
- Axkit (appservers)
- Cocoon
- Deciding what implementation to use
- The Walker had done some Mason development previous to any of us being hired so there was some momentum in that direction. Eric had done some work with PHP and Brent had experience with XSL but not specifically with the XML server software.
- Embedded scripting vs. Separate Transformations
- Embedding Pros
- faster start up time for development
- Ideal for single developer or very small team
- PHP has a large labor/support pool
- Embedding Cons
- Developer and designer have to work in same mark-up document
- Less reuse
- Data logic mixed with presentation logic
- Pros for separate transformations
- Data logic and presentation logic are separate
- Developer and designer do not work in the same file
- More reuse of data and presentation markup.
- Cons for separate transformations
- Longer initial set up time
- More up front planning time agreeing on XML schema
- Theoretically slower because of the transformations.
- Embedding Pros
- Databases
- Why we decided on XSL with Axkit
- XSL in general fit our team size and skills and naturally matched our institutional goals.
- Axkit particularly was chosen because our developer had extensive perl knowledge
- Was open source, which we support
- Allowed multiple forms of output from the same data very easily
- By being so XML-centric we have incredible flexiblity for the future and new products / technology.
- What exactly is XSL and how does it work.
- XML background - standard format, extensible, etc
- XSL transforms one XML schema into another XML schema
- XSL is good for multiple outputs of data, as it can handle multiple XML schemas with the same data
- XSL is bad for one off output, because it's slower and doesn't leverage the benefits of XSL
- Show diagram and explain process
- Show extended diagram with multiple output/input
- Implementation
- Calendar
- Central repository for all event data
- Same data being used across in calendar and Flash movies. XML is providing image info and link info
- Explain the canopy concept
- Learn
- Gets the same data as Calendar
- Flash movie is populated by same data and displayed in a different format
- Teens using same data in and entirely flash format
- Garden
- Event Data (if there are any upcoming calendar events)
- RSS
- We can also send data in streams other than a web browser
- RSS is a simple method of syndicating information
- Users choose one of any number of news aggregators that retreive info
- It is a fast way for a person to review a lot of constantly updating content
- Since the Walker has a lot of events it is good for us to fit ourselves in that context.
- HTML e-mail
- Data from calendar in different style
- Adaptation of presentation code and application functions
- Press/Visit/About
- Application layer changed
- Presentation layer reused
- Site wide Navigation
- More info here
- Admin
- Had a bare bones admin for a while that ran a few of our websites
- Could have bought an off the shelf solution, but decided to build our own
- Gives us flexibility and full ownership, can gear it towards our smaller evironment better
- Decided to use the same tools as the site itself (axkit + XSL)
- It's a web app, not platform dependant, can be accesses from anywhere
- Allows access by multiple authors
- Allows editorial oversight but remains simple enough to be geared towards a relatively small number of authors (10-15) and editors (2-3)
- Allows producers to make last minute changes without going through us
- Folder system allows for simple groupings of content
- Ability to push important content through featuring
- Uses Per Form?, a plugin of Ax Kit? to deal w/ form fields easily.
- Connections allow one content record to appear in multiple neighborhoods.
- Show how it all works with live site
- Change Diva's record subtitle to "Girls in the Directors Chair"
- Image Administration and Re-use
- Manage media feature separate from content admin
- This allows media editors who are not content producers
- Media can be associated with multiple content items
- Standardization of media sizes speeds up the design and development processes
- Show rendition sizes
- Editors only need to worry about one size for upload, admin does the rest
- Designers can choose correct size for output
- Output to any device with any size
- Standardization of meta data speeds up the design and development processes
- XML schema is solidified, works the same across any application
- Manage media feature separate from content admin
- Importing XML into Flash
- Allows us to fit a flexible amount of images in finite space
- Enables content producers to provide more or less context to an event.
- While still enabling an efficient user experience
- Transforming with XSLT before importing into flash
- Styling with HTML 4.0 tags because of limitations inside of the Flash 6 plugin. This means Flash needs to get a separate XML from Axkit.
- Calendar
- The specifics
- Server and Nate’s stuff - Server setup / hardware / software
- briefly into mod_perl, Ax Kit??, hardware, proxy, etc.
- show diagram
- Axkit modules (Per Form??, etc)
- there are many free / opensource ways to extend the basic application - wiki, etc.
- Ax Kit? is not the end-all. Again, many ways to do this sort of thing - Enhydra, PHP, etc. This is just one way.
- Reality check - how it went, how's it going
- money / servers
- time investment - new technology
- Diacritics (partly solved, Mac characters biting us now)
- Server load
- caching
- Training staff
- Standardizing the XML schema
- took longer than hoped for, but it's pretty solid now
- Segue into moving forward: Print calendar
- Problems with this and workflow
- Moving forward
- Signage
- Passing images to display computers
- Show image of front of building
- Art on Call
- XML to voice
- Tickets
- Driven from our calendaring system
- Signage
- Benefits we are seeing
- XML schema is solidifying, reuse happening
- Ramp up time for sites decreased significantly
- Separation of application and presentation a reality
- Most data in centralized DB
- We're not having to fix content for producers any more - if an event time changes, they can handle it.
- a brief history of the Walker online
- Summary
- We are almost there
- Wrap up / Reiterate:
- This is a solution that's working for us, there are many options and they should be explored for your institution.
- By being so XML-centric we have incredible flexiblity for the future and new products / technology.
- Questions / discussion