Blog
How we think Mautic 3 should be tackled
5 min read

How we think Mautic 3 should be tackled

I’m the General Manager of Webmecanik, a editor hosting and supporting Mautic open source version (as many other exist). It features maintenance, debug, support, training, partnering programs, etc. All of that managed from France and hosted in France, Switzerland or US depending on our customer needs. We count today more than 300 customers in 8 countries.

Today, I’d like to share the Webmecanik team’s opinion about the major challenge Mautic is facing. The arrival of Mautic 3. Please note that this is our opinion, not the best and not the only. Just a share of my team’s thoughts.

Introduction: Mautic needs to face 2 major challenges

David Hurley, the founder of Mautic has started a blog posts series to explain his vision of Mautic 3. Starting with these posts, Looking ahead to Mautic 3 and Headless marketing automation, the main highlighted challenges are:

  1. Maintenance: keep Mautic sustainable
  2. Performance: allow users to do whatever they want within the app

To answer those challenges, the workaround may be:

  • A major update of the framework (Symfony 2 won’t be maintained after 2018)
  • A better separated front-end from back-end for a better maintenance for an API first software management
  • Integrations kept out of the core that generates sustainability issues
  • Enhanced performance avoiding speed and scalability issues. That could be addressing DB concerns and or technologies chosen.

The conclusions from those articles and the several discussions on #core Mautic Slack channel between David and some community members seem to be selecting a new stack (Laravel + React) and consequently re-writing the app from scratch (except the experience from a user perspective of course). We think this is an excellent stack according to the highlighted challenges, maybe the best one up to today. But if you add on top of the balance the fact that it is not a new software but a major version of an existing software, the conclusion should be much more balanced.

In our opinion, restarting from scratch is not the best way to address those challenges and thus for several reasons. Let us detail them hereunder.

Symfony is a a Strong Framework: changing drastically would implie several concerns

First, Symfony is a great, strong and powerful framework, especially with a good use of Doctrine. So keeping away from the maintenance issue brought by the end of the Symfony 2 by moving to the LTS version of Symfony 3 offers any project great opportunities to reach success. You can count several big companies with web app using Symfony like Blablacar, Spotify or even YouPorn (source stfalcon.com).

Community developers experience

Mautic has been in service for 3 years now and as any open source project, it relies on a pool of community developers contributing on new features, bug fixes and enhancements. This community is precious and should be pampered, in my opinion. An open source community is made of two types of contributors – users and developers. They both bring important feedbacks – feature needs, bug reports, feature development, bug fixes, etc.

Taking the risk to drive some community members away by a drastic change is in our opinion harmful for the open source project itself. The experience of the community and especially on developers is now based on Symfony. Some would be excited to change, some others are not skilled and some more would maybe like to stay on this expertise field.

“Make sure everyone on your dev team feels comfortable with the coding language you’re using, and encourage developers to ask each other questions and address technical problems as they come up.”

This is also one of the key lessons given by Basecamp in one of their blog posts that underlines this point.

Time to deliver

Restarting from scratch would also mean redeveloping everything. Changing the stack would also mean changing the pattern, redesigning everything. The current version of Mautic (2.13.1) has been built in almost 3 years.

“Despite what you may think, rewriting your software will probably take almost as long the second time as it did the first time. Sure, you have more information now on what you need to build, but this information is already dated.”

This quote is from an interesting article explaining why you should (almost) never rewrite your softwareThey also highlight the reasons why you should not do it: the code sucks, you feel smarter now than before, you estimate that you picked the wrong stack.

Taking that into account, I don’t think we can objectively expect the delivery of this version within a couple of month with the same amount of features.

Facing the same and new issues again

Last but not least. It is related to what have been said previously. If you change your stack, your dev team will loose part of its experience. You are not smarter than before. The consequence is that you’ll meet the same issue and if not, some new issues.

They did it by making the single worst strategic mistake that any software company can make:

They did it by making the  single worst strategic mistake that any software company can make: They decided to rewrite the code from scratch.

The idea that new code is better than old is patently absurd. Old code has been  used. It has been  tested.  Lots of bugs have been found, and they’ve been  fixed. There’s nothing wrong with it.

Taken out from an article about Netscape strategy released by Joel Spolsky. And this is basically true. It is not because you decide to re-do carefully that you’ll do it better, simply because you get rid of your experience and several tests at the same time.

Webmecanik position about Mautic 3

This is a simple conclusion to the previous paragraphs and you probably already understood our point of view. We encourage the Mautic community to choose an improvement of the current legacy by better distinguishing front / back / api, update the framework to Symfony 3 LTS version.

Concerning our strategy -as a hoster of Mautic in the cloud- directly impacted by Mautic open source project choices:

  • if this is the chosen path by Mautic we’ll contribute as major contributor we are and we’ll offer this new version to all of our existing customers,
  • if they choose to go for a total creation of a new app. then we’ll never force our customers to change the software and loose all their data and campaigns. We’ll offer both Mautic 2 latest version supported by Webmecanik softwares, and Mautic 3 as two different products.

These options have been inspired by Basecamp when they launched Basecamp 3 after Basecamp 2. The philosophy and structure being different, they decided to keep both softwares (even Basecamp Classic, the first version).

 

Continuer d’explorer les articles

Do we really need double opt-in?

Since the enforcement of the GDPR (General Data Protection Regulation), we have heard a lot about the practice of opt-in, which is to obtain people’s consent to be able to send them marketing emails. But in all this, is the double opt-in practice important? First, let’s define what the double opt-in is. It is a […]

How much does Mautic cost? The true cost of Open Source

Many companies looking for an inexpensive marketing automation solution, embark on the adventure of Open Source with Mautic with the idea that Open Source (open application code) is free. This is partially correct. It is very easy to download the entire code (hosted on GitHub, here is our fork) which technically allows to have the application […]

Pipedrive and Webmecanik Automation Synchronization

A CRM solution can be an essential tool to make your sales strategy succeed. An easy-to-use tool, with many features that allow you to organise your sales pipeline as you wish. With Pipedrive, you tailor your CRM to your operation by only paying for the features you use. By combining it with Webmecanik Automation, your […]

Automation Update – December 2016

Content of the December Automation Update 2016 We have the pleasure to inform you that a new update to your Webmecanik Automation has arrived! Attention: this update cannot be applied to accounts using GoToWebinar. These accounts will be updated in our next release due at the end of December/beginning of January. This update comes with multiples […]

Enterprises need digital sovereignty for their marketing data

“Nobody wants to put its business and its customers at risk, do you?” Anyone can become a great sales and marketing manager with many tools and metrics at his disposal. But many companies experience martech solutions that have legal and compliance issues putting both their business and their customers at risk. Imagine how you could […]

How to build and manage your sales pipeline ?

Replace an old fashion Excel spreadsheet by a sales pipeline, good or bad idea? Come on, who is still using Excel? So leave your Excel spreadsheets (it also works for Google Sheets, we saw you!) and build the new Rolls-Royce of your sales people on your brand new (and maybe even free) CRM solution.  Sales […]

This site is registered on wpml.org as a development site. Switch to a production site key to remove this banner.