How would you explain the difference between a PHP Framework and a CMS (like Wordpress) to someone who is very technically savvy, mostly on hardware/networking, but does little
You can check out this slide to see the difference:
To put it in simple words:
A CMS provides you with a back-end (with a host of plugins and components) like Joomla, Drupal, WordPress, etc that allow you to manage front-end. Where as a frameworks doesn't.
A framework such as CodeIgniter, Kohana, CakePHP, Symfony, etc: provides you with ready-made classes and libraries BUT you have to use them and build your own site ie: Front-end and Back-end.
I believe if you are building a simple or generic website use a CMS, but for more complicated projects (or web appliactions) with a substantial budget a framework is better suited.
ithands.com
A framework is just that.. something that you can combine pieces of to build an application.
A CMS is an application, that may or may not have been built on top of a framework.
You can build a CMS with a framework, but you cannot build a framework with a CMS.
A CMS is just that - a Content Management System.
A framework is a collection of libraries to build an application.
I think this article:
A Framework or a CMS? What is better to choose?
explains the difference between a CMS and a framework. Furthermore you can see 3 examples of where to use a CMS or framework and why. Also if you read the comments below the article, you can see pretty interesting discussions about CMS and Frameworks as well.
I've been working for years as a JOOMLA developer. You can do anything with all the most known content management systems(CMS).
MVC is the pattern there too. You can develop your own components, if you need something special.
Furthermore, you do not need to focus on developing common tasks, such as user management, Facebook co-operation, e.t.c.
Why reinvent the wheel? Anything that has been build before, can be bought or even downloaded for free from the repositories. There are so many components out there.
As for appearance, there are 1000s ready made templates that you can get and speed up your development and lower your cost.