WebLion:

Open Source Content Management for Penn State

Christian Vinten-Johansen

Penn State University

S5 Presentation Controls
Next slide: space bar, right or down cursor keys
Previous slide: left or up cursor keys

Feeling the Pain

Academic and Service Units Have Common Problems

How to manage the flood of content?
How to manage content quality?
How to meet standards and accessibility?
How to support collaboration?
How can we afford this?

Web sites Aren't Usable

Non-intuitive navigation, broken links, orphaned pages
Inconsistent content quality; stale and untimely content
Non-standard, invalid markup — pages inaccessible
Emphasis on visual design at the expense of functionality and usability
No interactivity, participation, collaboration or personalization

Search for Causes

The webmaster bottleneck - inadequate staffing?
Inadequate tools?
Inadequate and outdated skills?
Shortage of resources — sub-optimal deployment of existing resources?
Broken workflow — inadequate processes from content creator through editor and publisher?
Redesign cycles out of control?

What We Need

Basic functional requirements for a CMS
Distributed, through-the-web content authoring
Role-based workflow, integrates with infrastructure (e.g., LDAP)
Protected templates — no access to markup by content providers and editors
Content reusability and scheduling
Extensibility — plug-in architecture, open API
Scalability — use in many sites and services

This list is the minimal feature set for an application to be called a content management system.

What We Need

Integrates with existing network and security infrastructure
Internationalization and localization
Host platform independence: Linux, OS X, FreeBSD, Windows, Solaris
Browser independence: Firefox, IE, Safari, Opera...
Support for all popular SQL-based RDBMS
Syndication, aggregation, web services, WebDAV
Collaborative applications — Wikis, blogs, publications, analysis, reporting...

Accessibility/Nondescrimination
Statements Affect Requirements

Standards-compliant markup
XHTML Specification (W3C)
CSS visual design
W3C Cascading Style Sheets Specification
Accessible (Section 508)
Web Content Accessibility Guidelines 2.0
Standards-compliant sites cost less!
Standards and accessibility, and separation of content and design should be minimal requirements for a CMS, but alas, very few generate standard, much less accessible, code.

The Open-Source Option

Zope Users Group
Members wrote a white paper making the case for a community development model for customizing an open source CMS for Penn State
ZUG membership — experienced developers, system administrators and content authors/editors
Experience with Zope, Plone and other CMS

Introducing the WebLion Project

Monty, the WebLion (charicature)
Open source content management system
Zope 2 application framework
Plone CMS
Development community
Agile programming project management
Self-supporting business model
Seed money offers service
Partnerships support costs and salaries

WebLion Application

WebLion is a Customization of Zope and Plone for the Penn State Web environment

Complies with Policy AD54 Web Page Design and Image
Complies with W3C XHTML markup recommendations (i.e., "standards")
Complies with ADA Section 508 requirements
Branding and page element requirements

WebLion Application

Zope application framework, plug-in architecture
Plone CMS: plug-in for Zope
Python macros and scripts: extensible functionality
ZODB: Zope Database is object oriented
Template language for easy customization of content views and page design
Security: finely granular, customizable and extensible; integrates with existing infrastructure

WebLion Plug-in Products

FlexTemplate — easy CSS customization
Authentication — integration with Web Access
Faculty/Staff Directory — searchable directory and CVs
SQIConnector — federated search web service
Mobilize — page views for mobile devices
Design and installation tools
User interface components

Zope Application Framework

Many applications — one plug-in architecture
Plone CMS
Silva document management system
Course management: eduCommons course authoring and delivery; Rhaptos Just-In-Time publication system
Specialized academic and service sites
Conference, training and seminar registration system

Business Model

Vision: build a long-lived, sustainable development community around an open source application framework
Seed money from ITS and partners starts the project
Partners dedicate funds and IT staff to the development community
Partnerships —
Departments, small units and projects: 2-year $5k
Colleges and large units: 2-year, $25k
A growing community creates credibility and attracts new partners
Cooperating units commit staff to projects

WebLion Development Community

Members: core team, partners, Zope Users Group
Developers, designers, content providers, stakeholders
Stakeholders: sysadmins, marketing representatives, financial officers, scientists, unit administrators, faculty, ...
Colonizers: anonymous users who download and customize the product

WebLion Development Community

Code Repository and Best Development Practices

Subversion source code management system
"Safe" collaboration tools
Version control, backup and controlled access
WebLion Subversion repository: anonymous access to project code
Peer training for best development practices
Automation and code generation, code management, reuse, and testing

WebLion Development Community

Support and Training

Peer training and collaboration
Community maintains the WebLion Wiki the central point for trouble tickets, documentation, and project management
Intensive training sessions:
Joel Burton, Plone Foundation and consultant
Mark Lutz, Python language author and trainer

WebLion Development Community

Support and Training

Coding sprints provide format for training
Select project for general usefulness or pedagogical value
Activities coordinated with other user groups, e.g., Web Standards Users Group
Support forums
WebLion IRC channel and user group listserve
Plone IRC channel and lists are extrememly active

WebLion Community Growth

Date Community
size
April 2005 3
April 2006 23
September 2006 45
-->

WebLion is Open Source

Defining characteristics: access to final product source code and license structure
Open source licenses specify terms of ownership and distribution of original and derivative products
Plone and WebLion distributed under the GNU GPL license.
Derivative products - your modifications of existing code, and the new code you create
More information at Open Source Initiative
Comparison of OS licenses
Open Source A.K.A free software, free/open source software (FOSS), among others

Evaluating Open Source Software

Size and activity of the development community
Membership, events, new releases, support, institutional involvement, international presence
Support: membership support via forum and lists
Technology "fit" with your organization
Project maturity and history
Sponsorship and leadership — a clear roadmap
Security vulnerabilities — a clean bill of health
Commercial support and independent application developers
More on the technology "fit":
Highly diverse technologies (especially for large staff): choose Best-Of-Breed technology
Concentrated scope of technologies (especially for small staff): choose technologies of competance

WebLion is Agile

(Agile Project Management)

Iterative development of functioning software
Short iteration times (measured in weeks)
Requirements gathering is iterative and adaptive
Developers and stakeholders involved in planning and review
Functional requirements identified and prioritized
Developer collaboration
Pair programming, flexible workspace, code repository

Future Projects: ThinkTank

Tools for Research Project Management
Faculty contact information, CVs, project and expertise search
Collaborative grant and proposal, reports, and publications writing and versioning tools
Templates for grants, proposals, reports, and publications
Secure repositories and federated search — e.g., LionShare, CiteSeer

Future Projects: ThinkTank

Document bundling, workflow and bibliography tools
Data analysis and management
Glossary, manual and help resources
Research custom types, e.g., data, images, code
Team communication tools
Workshop and meeting workshop registration tools

Interest in ThinkTank

College of Information Science and Technology

Population Research Institute

Mellon Foundation

What roles for GEaRS?

Stakeholder in development of research management and collaboration tools
Development of new applications on a common platform
Leveraging existing templates and products
Interoperability with web resources

Plone & WebLion Gallery

Zope & Plone Projects in Education

Presentation URL:

cjohansen.com/weblion-project