Large Scale Webapps: Managing Releases and DevTeam Infrastructure

Jonathan Oxer, Technical Director, Internet Vision Technologies

Track: Web Apps
Date: Tuesday, July 25
Time: 8:30am - 12:00pm
Location: Portland 255

PHP, Perl, and Python are all now being used for some very large-scale projects involving many developers collaborating on common codebases. While this is a common scenario for developers working in other languages such as C, P[HP|erl|ython] developers often have less experience working as part of a development team and using a supporting infrastructure. As a result many large-scale web applications are developed and released in an ad-hoc manner.

This tutorial examines some of the software engineering practices relating to managing or working within a team on a medium to large project, and covers topics such as automatically generating internal documentation, managing your codebase using a revision control system, ensuring consistent coding practices using coding standards, and using a bug/task tracking system.

Covered will be problems related to managing the release process for large-scale applications and the way the tools previously discussed can be tied together to create a semi-automated development and release management infrastructure. Oxer will demonstrate various scripts and systems used to manage development and releases for the SiteBuilder project, where a team of developers collaborate on a codebase consisting of over 600,000 lines of PHP.