Sep 2013

Toulon and CATPM websites were the most challenging web projects I had to face.

The project

We had to develop two websites based on the same structure, one for the city of Toulon (France) and the other for the CATPM (Agglomeration community of Toulon Provence Mediterranean). Drupal was chosen and again we were contacted because of our expertise on the subject.

The design

We received a incredible amount of graphical designs for the 2 websites and each page had its specificity. After analysis a lot of content types appeared on several pages with a different look (for example, the articles could appear in portal 1 horizontally and in portal 2 vertically and in portal 3 with smaller pictures and less text). In the end we counted about 50 different images styles (an image style is the representation of an original image with a different size) and often with different proportions. So when a contributor would like to add an image to an article in 4:3, it should look good both in a 16:9 and a 1:1 ratio in the portals.

Both clients chose a different solution, one chose to keep a 4:3 ratio everywhere to avoid cropping and the other chose to refocus manually each image for each image style after the upload. These solutions were not perfect but allowed us to be as close as possible to the original design.

This was a difficult point to implement and I think it could have been avoided by determining the picture formats before making the design. You can also reduce such an impact by designing your site with modular responsive blocks instead of static pages.

CATPM websiteCity of Toulon website



The team

The team was composed of about 12 developers and many different profiles.

I had to evaluate each profile and assign the right tasks to the right person according to the planning. I also coached some developers, helping them to progress with Drupal. I reviewed the developers code with the architect and a developer.

The processes

We first tried to separate the module development from the theming but we had too many back and forth between the teams and I often found myself filling in the gaps. So we decided to reduce the size of the team and give each developer the responsibility of a functionality. I also proposed that each developer demonstrate their work to others to insure good functionality testing.

I coached another project manager on SCRUM methodology applied to Drupal since he was used to another technology and methods.

I supervised the theming and graphics quality and made a lot of functional tests. Each time I found something wrong I taught the developer a good method to avoid this issue in the future.

The code

The template was based on portals and blocks that lead to listing pages. There were a lot of content types and their look could change from a portal to another, so we used Display Suite module in combination with Panels to create a very modular tool to create specific portals with different looks. We used a lot of Drupal modules and created features that allowed us to export the configuration quite well. We made some scripts to rebuild the 2 websites with the developers work, thus creating a continuous integration platform. We also developed several specific modules such as a node proxy module made by Guillaume "Bès" Bec and an Image editing tool made by me.

The result

This was a difficult project but we kept improving and we learned so much through the year! This was a great experience.

Feel free to visit the new City of Toulon website and the new CATPM website.


I have worked with Charles for four years at Linagora as an expert Drupal developer. There, we were in charge of the realization of web projects using SCRUM and agile methods.
He became quickly efficient and autonomous when using and developing advanced features for Drupal thanks to his already solid technical skills. His acquired expertise allowed him to become a leader of the developer teams.
During our meetings with our clients, I noticed that Charles has also excellent listening and analysis skills. He created high quality documents that were a great help to the team.
I also greatly appreciated the graphical quality Charles took care to include when creating his documents as well as developing user interfaces. It is apparent in Charles' work that he knows very well the constraints of designing and implementing GUI.
During the first two years we worked together, we were in charge of all the stages of our projects as a duo. Charles was always available, organized, and cheerful. He was very pleasant to work with.
When our team expanded, Charles continued his progress by taking charge of the training of the new developers and participating in the pre-sales of new projects.
Charles is very versatile and I would be delighted to work with him again.

Guillaume Bec, Drupal lover