Wetter.com - Symfony Shines Bright on Weather Forecasting in Germany
Wetter, Germany's leading weather portal, has been a long-standing user of Symfony. Thanks to Symfony, Wetter can develop applications easily, even for complex, large-scale projects, and to progressively integrate new features into its portal.
The Project
Wetter.com, the leading weather forecasting portal in Germany, was built over 10 years ago. To address the issue of the aging PHP technologies that were used at that time, the company decided to launch an entirely new website using more advanced tools and programming languages.
The team at Wetter.com therefore chose the Symfony framework and several of its components for the release of a faster, more flexible, and more user-friendly site that could handle several million visitors a month. With support from the SensioLabs team, the Stuttgart, Germany-based company, 100 Days GmbH, was called upon to develop and launch this massive Symfony application, with the support of the SensioLabs’ teams.
Primary benefits:
The use of Symfony as a data provider from different sources (CMS, localization data bases, cards servers, etc.)
Richness and reliability of Symfony components to develop a project on a high scale:
Performances of Twig's templates engine
Complementarity with caching tools (i.e Varnish)
Simplicity to adopt Symfony, thanks to a comprehensive documentation that facilitates and accelerates applications development
The Stakes
Boasting several million monthly unique visitors, Wetter.com is the leading weather forecasting site in Germany. Built more than ten years ago, the site was beginning to show signs of age, in both its obsolete interface and the basic PHP technologies used at the time. There was therefore a need for Wetter.com teams to re-architect the site to deliver enhanced services and to modernize its interface, while ensuring a smooth and transparent migration.
The challenge for 100 Days GmbH, the company based in Stuttgart, Germany specialized in PHP development that was tasked to develop the selected Symfony2 framework, was therefore the sheer size of the project. "When we first started the project in 2011, Symfony 2 was still in beta," explained Andreas Streichardt, the lead developer at 100 Days and consultant for the Wetter.com project. "We had some experience with Symfony 1, but it was our first big project with the new version."
This massive project, which needed to make the site content fully editable via a CMS, had to also include a number of very complex features: a new location-based search engine, the ability to display maps and weather data, manage banner ads, user profiles, etc.
Many of the components we used for this project are simple and well-documented. Symfony makes it very easy to develop applications, even for large-scale projects.
Andreas Streichardt, Symfony Consultant for Wetter.com
The Solution
To meet this challenge, 100 Days naturally first turned to SensioLabs to learn Symfony. "The SensioLabs teams in France helped us a lot," remembers Andreas Streichardt. "They are experts in their field; all of the consultants we met were at our sides the whole way and always responded quickly to our questions. That saved us a lot of time during the project."
Wetter.com's goal was to implement an architecture model that could handle streams of information from multiple sources. Symfony made it possible to aggregate, within the site pages, all of the content and layout coming from the CMS, all of the location data (e.g., cities, countries) from the database, and last but not least all of the information from the map and weather forecast server. "Symfony basically simplifies the connection to external data, wherever it may reside," said Gaylord Aulke, founder of 100 Days.
For this project, 100 Days also used several Symfony components, including Twig, "the best template engine," according to Andreas Streichardt. "Twig is well-written, fast, and scales easily. And the "block" system really allows you to organize pages better" he said. The built-in cache manager in Symfony, which doesn't require any special coding and which was optimized using Varnish (through ESI support), was essential for a site of this magnitude.
The Benefits
The new version of the Wetter.com website went live in March 2012, and quickly became very popular amongst internet users. Its greatly modernized interface and set of features give the site a whole new dynamic. By decoupling various components, Symfony made it possible to deploy an incredibly rich and easy-to-use site, on the front and back ends: the ability to deploy maps from different geographical areas, customize the interface through a Favorites system, automatically generate content and manage widgets, etc.
100 Days had an equally positive experience: "We really enjoyed using Symfony and learned a lot during the project," said Andreas Streichardt. "Many of the components we used for this project are simple and well-documented. Symfony makes it very easy to develop applications, even for large-scale projects," he added.