Site icon MonstersPost

ManageWP Orion – Rebuilding a Service From the Ground Up

One of the biggest problems with WordPress is backward compatibility; there is a lot of junk code in WordPress core that's used by older plugins that cannot be removed without breaking their functionality. As Matt himself admitted repeatedly. Automattic is aware of this issue, but until refactoring the WordPress core becomes a smart business move, Automattic will maintain a status quo.

But this does not have to be the way all WordPress developers should think. Just as the themes have a limited shelf life (just ask anyone modifying the Avada theme today), plugins and services should as well. As the developers and development teams gets better and larger over time, they usually regret the way they've written the code when they were younger, but keep building on that code anyway.

But what happens if you take that gamble? We're talking with Nemanja Aleksic, the Growth Engineer at ManageWP, and their attempt to refactor the ManageWP code for their upcoming Orion release.

Alex Bulat: Why did you decide to refactor your code? Was it an easy decision to make?
Nemanja Aleksic: By all means, it was a hard decision, but an inevitable one. ManageWP is a service with A LOT of moving parts, and we've reached a point where without new technologies we could no longer make any significant improvements. ManageWP was initially four people in 2010; We now have additional 5 years of experience, 16 people and technologies like AngularJS and Symfony at our disposal, and we can do a lot more.
Alex Bulat: What are the improvements your users will see in the Orion?
Nemanja Aleksic: User experience and reliability is our mantra. Our users need to enjoy managing their websites, and they need to trust our service - anything less we consider a failure. That's why we've redesigned the UI, and introduced AngularJS that allows multitasking on the user dashboard.
Alex Bulat: ManageWP has a lot of features. How will they be affected?
Nemanja Aleksic: Most of them will undergo major upgrades, and in some cases such as backup, a completely new feature will be built. Our research shows that PHP backup solutions such as ManageWP, BackupBuddy and similar are successful around 80% of the time. In order to get to the 99% we needed to start from scratch.
Alex Bulat: One of the gripes people have with ManageWP is the high price tag. Do you plan on addressing this in Orion?
Nemanja Aleksic: Yes. The people who use ManageWP know that they get the best bang for their buck, but there is a lack of flexibility that needs to be fixed: right now you can only choose one set of features for your ManageWP account. When Orion goes live, the pricing will be determined per site, i.e. you'll only pay for premium features on sites that need them, while the rest can be managed for free.
Alex Bulat: How long did the refactoring take?
Nemanja Aleksic: 4-6 months just for the back end. The front end is mostly new code, and aside from the new backup and client report, we still have a lot of features to improve. But it's a lot easier now that we've employed MongoDB, Symfony, AngularJS, and placed everything on the Amazon cloud infrastructure.
Alex Bulat: Do you have any advice for developers who are considering refactoring their code?
Nemanja Aleksic: Never refactor just for the sake of cleaner code. There will always be something new next year that will prompt you to do it all over again. Refactoring is primarily a business decision, and as such it needs you to be able to do things you couldn't before, because the time you spend doing it is the time you're not improving your current code.