This is my first experience working with WordPress, and I have to say, I am impressed. It is a framework that serves 2 entirely distinct groups. For starters, you can install and go. Pick a theme and start typing. For the average user, it is a fabulous way to have a website. But there is a second layer. WordPress is a rather customizable CMS in disguise. For the mid-level programmer (HTML, CSS, basic PHP), you can create a theme that a basic end-user can add to (via drag-n-drop) through the use of widgets. So, as I am writing this, I have much more to learn.