This guest post was written by Peter Offringa, VP of engineering, Zoosk.
Zoosk is a fast-growing romantic social network site with a twist. We not only help singles browse, flirt, or find their soul mates. We also help them keep romance alive once they've become a couple by allowing them to share experiences and photos with their friends, create a couple's profile, and more.
Once our users have filled out their ‘date card' (or dating profile), they're presented with a screen that has multiple tabs, allowing them to search a database of tens of millions of members (in more than twenty-five different languages), call up individual profiles, send messages, chat, wink, or break the ice. There are also numerous conditions where pop-up windows must appear to offer members an upgrade that provides new capabilities.
Google Closure to the rescue
- A compiler that removes dead code, rewrites and minimizes what's left, and also performs other crucial functions like syntax, variable reference, and type checking.
As we worked with Closure, a subtle principal of the tools came into focus: this system is designed to scale. Not just in terms of site traffic (which of course it can handle) but in terms of code size, team size, and code re-use. After our humble beginnings with one full-time JS developer, we've advanced. Today, every member of our web team works primarily in Closure; we've added 100K lines of source to our JS codebase; other Closure-based projects are springing up around the company; and code reuse is happening between teams (thanks to shared training and the well-modularized JS code style that Closure allows).
In addition to these major benefits, Closure has lots of small but important features that add up to a smooth and speedy development process. For example, the power of the Compiler allows the use of readable names. Therefore the code becomes self-documenting, so newcomers to a project don't have to struggle to get up to speed. We've also taken advantage of Closure's extension points for L18N.
Keep your engineering skills up to date by signing up for TechRepublic's free Software Engineer newsletter, delivered each Tuesday.