Recent updates and additions to this section include:

  • Requirements for developing sites compatible with PBS's Amazon and internal Web server software and architecture.
  • The support level provided by PBS for Amazon hosted sites.
  • Other HTML specifications that may be used.
  • CDN and Memcached requirements for all producers.
  • A load and performance testing requirement for producers using Amazon hosting.
  • A UUA requirement for any site that requires registration and login.
  • Updates to the MovableType supported version list.
  • Migration of how-tos and technical specs to PBS Interactive's Product Documentation space, with links from this page's requirements.

Compatible Web Server Software and Architecture

Producers are required to develop sites and databases that are compatible with PBS's existing Web server software and architecture.  Specifications for sites and databases developed on PBS's dedicated Amazon servers is available at http://docs.pbs.org/x/fYCr, and specifications for sites and databases developed on PBS's internal servers is at http://docs.pbs.org/x/fQHB.

Support for Amazon EC2 Dedicated Hosting

In an effort to provide PBS producers greater flexibility to innovate as well as greater freedom to tackle emerging issues, PBS is providing selected producers with small high-performance dedicated servers. These dedicated servers provide content producers with greater technological freedom to innovate and experiment with new technologies. They also introduce isolation between producer sites, dramatically reducing the impact of adverse events.

With this additional freedom and flexibility the producer now has nearly complete control over their environment and the means to address all issues. This server is for the exclusive use of the producer to which it has been assigned. See PBS's Product Documentation space for detailed documentation on Amazon EC2 Dedicated hosts.

Technical support for Dedicated Hosts is limited to the following:

PBS does not, however, provide technical support for issues regarding the use, development, application, tuning, or customization of development and scripting languages, application frameworks, or applications developed by 3rd parties and/or the open source community. PBS relies upon its 3rd party developers to be self-sufficient in these areas.

Content Distribution Network (CDN)

All 3rd party developers and producers are expected to utilize the PBS Content Delivery Network which is currently hosted by Limelight.

Full use of the CDN is a launch requirement for the following media types:

Memcached

All database intensive sites must implement object based and/or page level server side caching as necessary in order to maintain high performance.

Performance and Load Testing

In order to maintain the highest level of user experience, PBS requires that all applications and sites developed by 3rd party developers on PBS's Amazon hosting services undergo (and pass) performance and load testing.

Performing this testing is the sole responsibility of the 3rd party producer or developer. The purpose of this load testing is to demonstrate that the application has been engineered to handle the high levels of traffic that the site may see at launch.

Documentation on how to perform load testing may be found at http://docs.pbs.org/x/UYPj

HTML Specifications

In order to reach the most users, sites should be developed using HTML specification 4.0 and cascading style sheet specification CSS1. Other HTML specifications may be used as long as the principals of Progressive Enhancement/Graceful Degradation are applied so that there is always a compelling and usable experience available for the site user. Compliance with The World Wide Web Consortium (W3C) guidelines and recommendations is required. HTML standards must be compliant for the doc-type it is declaring. If it is not, PBS reserves the right to not publish or to limit the site audience.

Supported Web Browsers

Sites must be developed to support PBS-approved Web browsers across platforms. Although it is not assumed that all users will have the identical experiences when using different browsers, it is vital that every user be able to experience the same content and as much visual richness and interactivity as possible.

PBS currently supports all "A-Grade" Browsers (http://developer.yahoo.com/yui/articles/gbs/), as defined by Yahoo!

Google Analytics Tagging

PBS uses Google Analytics as a preferred method of generating detailed statistics about visits to PBS.org Web sites.  It is the producer's responsibility to request a Google Analytics account from their content manger during site production; metrics will be unavailable to the producer otherwise.  To function properly, every page of a Web site on PBS.org must include the Google Analytics Tracking Code (GATC) through a Server Side Include.  For more information and implementation techniques, visit \[[http://docs.pbs.org/x/MICr|http://docs.pbs.org/x/MICr]\|\]

PBS Code Widgets

Standard interactive features must be created using tried-and-true code available in the PBS code widget library. If a relevant code widget exists, PBS code must be used. The PBS Product Documentation area (http://docs.pbs.org/x/sYCy ) lists the current products and applications for you to use.

Registration and Authentication

Any project wishing to provide registration or authentication services to its viewers must utilize the PBS Universal Authentication Service. Further information can be found at: http://docs.pbs.org/x/dQHB.

Additionally, by utilizing UUA you agree to abide by the UUA RP Agreement. Further information about PBS Interactive's data retention policy can be found in the UUA FAQ.

Blog Publishing Platforms

PBS supports blogs developed with MovableType 4.3.4 publishing platform with Pro Pack, Perl version 5.6.1 as well as legacy versions 4.1 and 3.2.

Plug-in Introductory Text

When a plug-in is required to view site content, the teaser must be accompanied by introduction text that:

Cookies

Use of any cookies is subject to the oversight of the PBS technical staff and cookies that extend beyond a user session must be developed in partnership with PBS technical staff.

As a rule, always scope your cookies with the most specific path component you can. This will reduce the overhead of the number of cookies that need to be sent by the client on each browser request. Where possible, cookies must be set in JavaScript instead of CGI script. Always prefix your cookies with a unique tag (such as programname.nameofcookie) that can identify your application in order help to avoid conflict on the server.

Airdate Code on PBS.org

When providing broadcast information, you must use PBS's airdates code. PBS's airdates code is a simple server-side include which can be customized by CSS. It automatically displays the correct broadcast dates and times for local stations, using data provided by TV Guide and cross-referenced with the episode titles and descriptions the producer provides to PBS Traffic and Operations.

For more information, read the detailed implementation steps on the PBS Product Documentation site at http://docs.pbs.org/x/OICr.