Hello!We'd love to chat. Get in touch at or follow us on Twitter, Facebook or LinkedIn or sign up for our Newsletter!

Previous ProjectPrevious Post:
What makes good design stand out?
Previous ProjectNext Post:
Germany 2011 - Day 2
Comments Topics: Technology

Germany 2011 - Day 3

Germany 2011 - Day 3

Friday, 30 September 2011

Symposium 2011

Cologne, Germany

The first day of the Symposium began with a taxi ride from the art'otel to the KOMED MediaPark with Allen Chang and Michael Eichelsdörfer. We gathered as a group of about a couple dozen people, to mingle over breakfast, to hear Allen Chang's Keynote speech, to engage in Barcamp-style presentation sessions where the floor was opened to anyone who had ideas or projects to present, to “speed date” as a way for the veterans to engage with attendees who might be new to the Symphony community, and to generate a list of discussion topics for the coming days of the Symposium.

Allen Chang, Keynote

  • Symposium's Purpose: To prove that we are real human beings (except Nick Dunn)
  • Working Group Growth
  • Contributions as of Symposium 2010 compared to Symposium 2011
    • Showcases 285 -> 422
    • Extensions 200 -> 307
    • XSLT Utilities 51 -> 87
  • Community Numbers
    • 4,286 forum posts
    • 42,540 replies
    • 10,095 members
  • Wise Words from Brendan: Thanks to all who are attending. It's a testament to how far Symphony has come in the last year. Also, thanks to everyone for their efforts in testing, creating extensions, answering forum posts, spreading the love on Twitter and believing in Symphony. It's nothing without the community.


  • Stephen Bau (bauhouse), Using Symphony to improve design and development processes
  • Nils Werner (phoque), XSLT key() function
  • Timo Kleemann (Tintin81),
  • Michael Eichelsdörfer (michael-e), large members-based, multi-domain Symphony install for a German political party
  • Nick Dunn (nickdunn), 15 Things to Make Symphony Better
  • David Oliver (DavidOliver),, bilingual site
  • Stuart Palmer (stuartgpalmer), Why Symphony? Swimming Club, Estate Agent, Visa Sourcing Company, My ideas for Symphony: page manager, Symphony academy, job board
  • Marco Sampellegrini (alpacaaa), xpathr site
  • Simone Economo (eKoeS), Extensions Custom Preferences, Better Forms, EDUI, Backend Views
  • Jonas Coch (klaftertief), Nested Set extension
  • Nils Hörrmann (Nils), Subsection Tabs extension (
  • Johanna Hörrmann (Johanna), Introducing Symphony, Documenter extension

Using Symphony to improve design and development processes

Johanna Hörrmann started off the presentation sessions by selecting me as the first to present. I gave a rather off-the-cuff tour of some of my projects, experiments and processes involving the use of Symphony to address common design and workflow issues in front-end design and development. I explained how my ideal process involves using web technologies to design and build for the web.

Apparently a very common issue among those present involved the challenge of having to design without content. If clients do not have a clear content strategy and have not done the hard work of collecting and creating the content required to inform the design process, this inevitably results in an initial design based on guess work, which will need to be redesigned based on the actual content that is submitted for integration later in the process.

Nick Dunn gave an example of a travel site they had worked on at Airlock that involved using Symphony to gather content well in advance of the design process. The clear separation of the data and presentation layers in Symphony provided the flexibility to easily transform the submitted content into a successful design that continues to perform well even now, two years after being completed.

15 Things to Make Symphony Better

Nick Dunn's presentation, in particular, generated a fair amount of discussion, as people responded to ideas such as the pragmatic approach to use PHP functions to complement XSLT on the one hand and the desire to maintain a pure separation between the data and presentation layers on the other.

  1. Content Negotiation (Set “Responds To” for a page) Zend, Ruby on Rails
  2. Routing and URLs Nested URL Parameters for pages
  3. PHP functions in XSLT
  4. View helpers
  5. POST data
  6. Event form HTML
  7. Backend XSLT
  8. Logging and monitoring
  9. Core object caching
  10. Async task queue
  11. WYSIWYG winner
  12. HTML5 video (Ankoder, zencoder, panda)
  13. Filtering syntax
  14. Environment config
  15. Deployment (Capistrano, Deploy, Apache Ant, Phing)

Discussion Topics

Johanna wrote down the group's suggestions for a list of topics that may be up for discussion in the following days.

  • History and future of Symphony
  • Author workflow in the backend
  • Symphony extensions
  • Symphony 2.3 UI
  • Default ensemble
  • Working groups
  • Static page content
  • Job board
  • Training materials
  • Symphony network
  • Multi-lingual sites
  • Section relationship management

Sightseeing and Dinner

We finished the day by walking to the Cologne Cathedral and finding our way to a restaurant to enjoy a beer and dinner together.

(Photos on Flickr.)