Before I made the switch to full-time freelancing, I had three years of full-time Java development experience and several years of dabbing into and extending different PHP and Python-based platforms.
My initial grande idea was selling websites with my custom built proprietary JSF CMS. It took me 2 weeks to discard my ludicrous business plan for three main reasons:
- My Java CMS was significantly heavier and eating up at least 256MB of RAM for a brand new project
- Building new features was taking me weeks (or more) as compared to 5–10 times shorter when replicating these in PHP
- The available Java hosting providers were drastically more expensive compared to their PHP equivalents
PHP Ranked Higher Than Java
My plan had no added benefits to small businesses and I had to jump back to the PHP stack.
After building PHP solutions for another 2 or 3 years, it was easy to recognize some of the areas that required a lot of time. Most were related to bugs showing up in our own frameworks or the additional layers on top of CakePHP, CodeIgniter, Kohana (which we’ve used at the time).
After all, we were actively building that ourselves. We had a limited number of customers testing different scenarios. Edge cases were popping up at all times.
WordPress as a Continuation of PHP
WordPress was the logical choice progressing forward. With over 70,000,000 websites out there nowadays, the QA process is offloaded to third parties who have already cleared out all sensible scenarios.
This is still our “tool of choice” for everything that falls under the CMS category. And the vast majority of the projects out there rely on different types of content, user management, admin dashboards, extensible UI, media assets, great SEO and other perks of WordPress provided out of the box. Let alone the ability to use existing third-party solutions out there or even fork and upgrade them as needed.
We Still Do Full-Time Development
The difference is in using a stable framework covering the default use cases and focusing on business logic and developing custom plugins, services, integrations for anything new.