Speakers
Description:
The Guitar Hero® community website (http://community.guitarhero.com) is one of the largest production RoR sites on the Internet with 600,000+ registered users. We will cover the process, programming, and infrastructure for the Guitar Hero® community site. You’ll see how we’ve been able to integrate data from three largely different Guitar Hero® titles in a consumable fashion on the web.
Process
Feature-driven development
o Breaking up Guitar Hero® into manageable units of work
o Modified SCRUM process
Guitar Hero® maintenance
o Migration from Rails 1.2.6 to Rails 2.x
o Removal of “skeletons” (aka appable plugins)
o Being too DRY
Programming
Overview of Guitar Hero® architecture
Rails initializers
o Supporting multiple Guitar Hero® title configurations
Dispatching data from game consoles to the web
o XBOX 360 and PS3 data movement and validation
o Wii data movement and validation
o Supporting components that allow the Wii to talk directly to our application servers
Guitar Hero® configurator
o Supporting multiple Guitar Hero® titles with a single application via meta-programming
o Supporting multiple databases for separate Guitar Hero® titles
Testing framework
o Long running tests
o Transactional fixtures across databases
Use of queuing/Sparrow to offload long-running processes
Caching
o Object caching
o Fragment caching
o Page caching
Infrastructure
* Capistrano deployment
Management of SVN for production, soft launch, and future-title branches
Environments
o Development, Staging, QA, Production
Supporting components
o Thin vs. Mongrel
o Monit
o HAProxy
o NGINX
o Memcache
Future
Splitting Guitar Hero® into separate applications for backend and frontend deployments
Supporting legacy Guitar Hero® titles
Supporting future Guitar Hero® titles
Links: Website

Leave a Comment