There is no general rule as to which one to choose a CMS or a framework for a better web developer freelancing career
A wonderful question. Let me try to answer it and also answer what I would have chosen a CMS or a Framework if I had to start as a freelancer now.
What is CMS?
CMS stands for Content management systems. CMS over the web is an application when installed on the webserver helps you manage and create content in an easy to use the website and interface for its users.
You can learn more about CMS here.
What is a PHP Framework?
PHP Frameworks are a rapid application development framework to assist web developers in building web applications much faster than PHP programming. They are easy to manage and maintain, highly scalable, and secured.
Check out: 7 Widely Used PHP Frameworks
How CMSes Differ from Frameworks?
There is no similarity between a CMS and a web framework. They both are different in every aspect.
You write code in web frameworks, CMSes are meant to be used out of the box without the need to deal with code or even HTML. So CMS is for the non-tech people to create a website whereas, frameworks are for developers.
Frameworks are for rapid application development. CMSes are for the rapid implementation of the website.
The only similarity from a web developer freelancer point of view is, both may need to extend functionality and so both need to hire developers.
For CMSes, the enhancement in functionality is either termed differently, as a plugin for WordPress or add-on for XenForo or an extension in Joomla.
Web frameworks, on the other hand, out of the box aren’t handy and need a developer to implement the custom solution required in the site.
CMS or Frameworks – The Choice For a Developer?
Which one is the right choice for a web developer who is willing to freelance?
There is no general rule as to which one to choose from either one of them. If there would have been a single answer that will fit all, the other option may not even exist.
Ideally, it will depend on your choice as an individual and a willingness to learn.
If you choose CMSes, WordPress will be the ideal choice, but again it also means too much competition in the top freelancing sites.
As a PHP developer, Laravel is undoubtedly gaining popularity, and so can be looked at for sure, but it is not the only option. You have to choose the framework wisely and build expertise over time.
If I had started right now, I would have chosen a CMS over a framework. I did the same in 2004, starting with vBulletin. They help users build a website out of the box.
Frameworks, on the other hand, are the developers’ choice. In the freelancing world, clients aren’t too technical, and so unless they have an existing website, developers choose the framework they want to build the site with.