Before starting a project, each web development team with its developers, project and site managers and business owners choose some preconditions — the development stack.
If simplified, the first precondition is the programming language, after it’s chosen the starting code base comes the next, it can be a framework or a ready product you can generate, add and change some pieces to make the desired final product.
While there are a lot of popular frameworks to choose for PHP development, such as YII, Laravel, Symfony, CakePHP, CodeIgniter, Zend Framework, Phalcon and more, there are only a few CMSs and CRMs and the most popular among them is the WordPress CMS.
WordPress is a CMS and it’s a ready product that can be considered as a good starting point for most of the PHP projects, depending on business needs. I’ll even take it a step further and say that the feeling that WordPress is not the best choice and will always keep a hand on the choice of PHP itself is wrong, like seen here.
From MVP to further development
As a standard scenario, the project starts with MVP and requires more and more features to be implemented, proving the business concepts as the time goes by. The chosen development stack accepts challenges and should also prove itself as the best choice, providing flexibility in terms of agile methodology.
With WordPress, the team has a ready to use blog site as a starting point, and it can easily become anything to cover the MVP functionality with some set of plugins and maybe with a multifunctional and customizable theme.
There are dozens of plugins, paid and free, simple to use or with advanced configuration, that power the end user’s site once installed, with reliability proven not only technically but from the business perspective too (I mean you may not think about the UX design, the buttons are in the right place or the good set of position is provided to choose from. And sometimes, solutions being applied in so many WordPress sites become standard).
For example, the WooCommerce plugin, once it has been installed, makes the blog be a web-shop, or WPML will make your product multilingual.
This is not about the WordPress but the project implementation process, so we’ll stop here introducing the WordPress.
Advantages in different phases of project implementation
So what does all the team have with the WordPress in different phases of the project implementation.
The business owners get the MVP and the concept proves very fast. Less time spent, less money spent, more time to experiment, more impressions.And the future development is also based on plugins choices and customizations, as WordPress is very flexible and modular, the process will again remain fast and cheap.
Project management and site administrators also get a great selection of administration pages and tools, extended by the plugins but still in the same logic, so that’s very easy to manage everything.
Dealing with the CMS standards, project managers easily convert business tasks to product features, knowing all the features can be got as plugins and customizations that should be done as tasks.
So, most of the job doesn’t require the developers to be superheroes to make small changes, mostly using the already given functionality, so many businessmen, managers and developers underrate WordPress development, but things become difficult when there are some features that should be implemented from scratch, or a main logic of a feature or a plugin has to be changed but you want to keep and use some other application layers, like an SDK for an API. And here is the point where developers can love or hate WordPress, become heroes or leave. A lot of developers that used to work with the framework just give up, blaming WordPress and its plugins to have a messy code, the others do the job and with fixing something they break another part of the application which can be discovered only months later or not at all. That’s like saying “I’m the best driver, but I only drive Ferrari and only on the highway”.
Only the true heroes dig inside, fight against the messy code WordPress really has to keep the backward compatibility and to provide flexibility.
This is a kind of description of WordPress development seniority, have patience, don’t be just smart but be wise, don’t be just a coder that already has a good car and the road is straight, but deal with the development stack you have, decide yourself which patterns to use and customize them for each separate problem, find a solution, the one that keeps everything scalable and flexible and doesn’t break anything else.
“A person who has had the bull by the tail once has learned sixty to seventy times as much as a person who hasn’t.” Mark Twain
Written by Hovhannes Ghurshudyan