title

Migrating from Legacy to Symfony? SensioLabs explains it all!

  • user
    Juliette
  •  09.11.2021
  •  8 MIN

SensioLabs is a French company well known to web developers, as it is the originator of one of the most widely used open-source PHP frameworks in France and abroad: Symfony!

In order to help developers and CTOs in their migration to Symfony, SensioLabs has made available a complete migration guide on this subject. From the PHP environment, to the advantages of Symfony and the legacy code, everything is explained to migrate smoothly.

 

SensioLabs: who are they?

In 1998, Gregory Pascal and Fabien Potencier created the digital agency Sensio. Faced with the redundancies in user management, ORM management, etc., they decided to develop a framework to meet their own needs at first.

 

Seeing that other developers were confronted with the same problems, the code was then made available to them in open-source. In 2005, the project took its name: Symfony, following the creator's wish to keep the initials of Sensio Framework, S and F.

 

In 2013, SensioLabs raises 5 million euros to take Symfony's success worldwide and the success story continues with the creation of numerous tools (Blackfire, SymfonyInisght, SymfonyCloud), the launch of an expertise and training offer (SensioLabs University). In 2019, SensioLabs will be joining forces with the Smile Group, sharing a common vision, values and ambitions, particularly in the area of open source. The two companies had already contributed together to the creation of the Open Source School and the organisation of the Paris Open Source Summit.

 

Today, SensioLabs is a fast-growing company with an international focus that is proud to have retained its start-up spirit. Specialized in the use of PHP and Symfony, the company pursues its dual objective of simplifying the life of developers, while pushing the limits of innovation. Today, the company has more than 100 passionate employees and a network of more than 50 partners in 20 different countries.

 

“We (SensioLabs) are open-source editors, and we are mainly involved in expertise, services and training around Symfony. Our goal is to make the use of this framework as efficient as possible and to grow the community.” Ludovic Duval, CEO of SensioLabs.

 

What is the Symfony framework?

“Symfony is an open-source PHP framework that speeds up the creation and maintenance of web applications by eliminating repetitive code steps. It is used to create robust applications for businesses and consumers by giving developers full control over configurations. With billions of daily downloads, it is one of the most widely used frameworks in the world.” The Migration Guide by SensioLabs.  

 

This framework was designed as a large collection of reusable PHP components. Each of these components allows developers to perform a specific task.

 

Beyond being a very useful tool, Symfony is also a philosophy and a community of more than 3000 contributors and 600,000 developers from over 120 different countries.

What is PHP?

Let's start at the beginning, PHP is a free programming language, used mainly to create dynamic web pages via an HTTP server. It is an object-oriented imperative language.

 

PHP has been used to create many famous websites, such as Facebook and Wikipedia. It is considered to be one of the foundations for creating dynamic websites* but also for creating web applications.

 

A bit of history:

The PHP language was invented by Rasmus Lerdorf in 1994 for his own use (to put his CV online). PHP originally stood for Personal HomePage. Today PHP is known as the abbreviation for Hypertext Preprocessor.

 

PHP is also one of the most flexible and cost-effective programming languages on the market. Thanks to its range of features, its range of add-ons, its large community and its open-source nature, it has become an essential tool for developers of all levels.        

*A dynamic website is a web page generated on demand, as opposed to a static web page. The content of a dynamic web page can therefore vary according to information that is only known at the time of viewing.

 

What are PHP frameworks?

To begin with, a framework is a platform for creating applications or websites. They provide their users with code libraries for the most common functions, which reduces the amount of original code that developers have to write.

 

For the PHP language, the most popular frameworks in 2021 are :

  • Laravel
  • Symfony
  • CodeIgniter
  • Zend Framework / Laminas Project
  • Yii (Framework)
  • CakePHP
  • Slim
  • Phalcon
  • FuelPHP
  • Fat-Free Framework

 

This list is obviously non-exhaustive as it is very difficult to list all the existing frameworks for this programming language. For example, Wikipedia lists more than forty, but some of them are more content management systems than real frameworks.

 

10 Signs that your code is rot according to SensioLabs

If you are facing the following problems, it may be time to explore new possibilities in terms of PHP framework:

 

1. Things don’t improve. Developing new features or fixing bugs is not cost-effective. Instead, you and your end-users will just have to live with how things are.

 

2. There is no innovation. Instead of fixing current bugs, innovating and planning new functionality, your developers’ time is spent on maintaining the uptime of existing code.

 

3. Your product or service stays behind. Increasing the scope of your offering is made difficult or impossible due to the current solution.

 

4. Help is not coming. Your existing setup is too old, cross-wired or obscure to get help from the PHP community when you need it.

 

5. There is no guide anymore. Documentation for the implementation, use and troubleshooting of your current code or framework can no longer be found internally or externally.

 

6. New plugins don’t work. Most, if not all new plugins are not compatible with your PHP version and either cause problems, or don’t install at all.

 

7. Productivity suffers. Working around annoying bugs and issues is affecting productivity and making simple tasks unnecessarily laborious.

 

8. No support. Your software version is no longer supported by the original developers, meaning that when you have issues, you’re on your own.

 

9. So. Slow. Performance is laggy or unresponsive, causing frustration and bad experiences for both end-users and developers.

 

10. No trust in the system. You simply can’t depend on your system and are constantly worried about crashes and freezes.

 

The advantages of migrating to Symfony

The Symfony framework offers many advantages to its users such as :

 

  • It is open-source. Having been released under the MIT license, Symfony is open-source. This means that it is free to redistribute and modify as needed, with no permissions needed.

 

  • There is a highly active community. With large numbers of daily comments and interactions on GitHub and other platforms, Symfony is one of the most discussed and used frameworks in the world.

 

“The biggest advantage of Symfony is its community. It's a framework where there are a huge number of active contributors. The worldwide community being estimated at over 600,000 developers and over 5,000 people actively contributing to the framework.” Ludovic Duval, Managing Director of SensioLabs.

 

  • Encourages best practice. As it is always current, developers using Symfony can stay on top of the latest object-oriented design patterns such as service-oriented architectures, dependency injections, interface abstractions and more.

 

  • Easy to debug. With a built-in toolbar called the Web Debug Toolbar, Symfony helps developers debug applications during development. The toolbar can also be augmented with new panels for further functionality.

 

  • Fast and flexible. Symfony components are quick and easy to download, with a directory structure that is easily abstracted and decoupled. This makes it easier to implement in large projects that need flexibility.

 

  • Modularity. The modular structure of Symfony allows users to build applications, step by step. This also means that they can be swapped in and out as needed.

 

  • Readiness. Symfony gives users a large number of applications, straight out of the box. This saves time and provides highly stable solutions with very little time investment.

 

  • Excellent documentation. Each release of Symfony comes with robust and detailed documentation to help with all matters around implementation, usage and operation.

 

  • Better hiring potential. Users of Symfony are in demand due to its prolific, powerful and flexible nature. The wider community also attracts high-level programmers looking to push their skills to the next level.

 

Moreover, in the tech ecosystem, almost all of the needs that we are asked to meet by Tech players when it comes to recruiting in PHP are with the following two frameworks: Symfony (French) and Laravel (US).

 

The other frameworks on the market, while still present and particularly in companies that have perhaps not renewed their tech, are almost anecdotal in terms of demand (Zend, CakePHP, Phalcon).  They are often an obstacle to recruitment, as PHP developers are much less interested in them. At Urban Linker, we have noticed that in French Tech: the majority of requests remain focused on Symfony.

 

“To give an idea, on the recruitments made by my teams for about 2 years, we have placed about 15% of developers on the Laravel framework for 85% on Symfony.” Florent Muller, Associate Manager and Senior Tech Recruiter at Urban Linker

 

  • Community-tested. Each Symfony package is tested by a large number of developers immediately after release, resulting in significantly higher chances of bug discovery and squashing.

 

  • Active communication. As a highly active framework, users of Symfony are highly informed about current trends and upcoming releases.

 

Happy end-customers. At the bottom line, it is all about serving the customer with meaningful experiences that help improve their work and lives. With security, reliability and speed covered, Symfony ensures your end-customers are happy with your services and digital products.

 

How to migrate to Symfony?

We finally come to THE question you are asking: How to safely migrate an old PHP application or an unmaintained PHP Framework application to Symfony?

 

To start, we recommend you to download the migration guide published by SensioLabs. (Link available at the end of the article).

 

“We realised that there were still a lot of companies that had launched development projects at a time when the notion of frameworks was not yet promoted and adopted by developers. So some companies either already had frameworks that are no longer up to date and whose community no longer exists or which present security risks. Or they have created their own frameworks, but they are more difficult to maintain and more time-consuming. That's why we decided to write a whole guide to help them migrate.” Ludovic Duval, CEO of SensioLabs.

 

Then, you may not have known it, but SensioLabs has set up migration services to help you migrate smoothly such as :

 

  • Migration workshops

If you have an existing application built with another technology and you want to learn how to switch to Symfony, this migration workshop offers a great starting point. It first helps you to distinguish between a gradual migration and a one-off, so-called "big bang" migration. The workshop also provides an analysis and audit of your application, and helps you identify and prioritise the main components to be migrated. As a result, you will learn how to design a coexistence environment for two applications, how to define your migration roadmap, how to assess costs and how to prevent risks.

 

  • Gradual migration

Once you have chosen a progressive migration to Symfony, this migration service offers you step-by-step support to execute your migration project faster and to the highest quality standards. This includes training, technical support, audit and analysis, code review, recommendations, implementation of a repository and management tools, regular team follow-ups and reporting. All in all, it will give your developers everything they need to improve their skills with best development practices to make your migration a complete success.

 

  • Expertise Solutions

As every application and project is different, SensioLabs offers a selection of professional solutions and turnkey custom services that focus on the start-up, design, build and execution phases.

 

For more information about Symfony and SensioLabs, visit their website!

Download the Migration Guide

This site uses cookies and gives you control over what you want to activate.