Previously Dave talked about why he prefers Drupal from a programmer's perspective. We approach websites completely differently. For example, Dave will write his blog posts in html and I prefer a WYSIWYG (what you see is what you get) style editor.
I first ventured into website design in the late 90s while working at a haunted house in Chicago. Dreamweaver was new and its interface looked like a lot of the video, photo, and design programs I was familiar with. It didn't take long before I wanted to do more than the program could handle. Dave swooped in and did some custom code, I learned some html, and I was able to make my ideas work.
Before I go into why Drupal, the real question is why use a CMS (content management system) to build a website? The number one reason I recommend a CMS based website is that customers can update and change their content at anytime. The second extremely important reason is that an entire site can be redesigned and restructured without losing any of that content. For me this is critical. We have one client who had an early, built in-house CMS that Dave coded from scratch. After we switched to Drupal, I had to reenter all of their content (and there was a lot of it!). Never again!
So if Dave has the skills to build a CMS why use Drupal? Because a group is more powerful together than any one person or company can ever be. In his recent article "The Assembled Web", Dries sums this up nicely.
The open source community is a perfect example of this. When Linux creator Linus Torvalds spoke about how it felt to get contributions from a worldwide network of people, he remarked "I had hoisted myself up on the shoulders of giants". I'm lucky enough to feel the same way.
I feel fortunate to be a part of this powerful community.
From the user standpoint, I love that I can decide that I want to change a word in my artist bio (yes, I do this frequently) hit edit, change that word, and voila updates.
Drupal makes it ridiculously easy to install, uninstall, and update the modules – Dave's lego pieces. I also can easily configure how many modules look and act. For example, we use the CKEditor module for WYSIWYG text editing and I can easily customize which buttons are visible, how they're grouped, the color of the frame (so frivolous, but yay!), and even if the site automatically checks spelling. And I can set these differently for multiple user types. All of this is done with an easy to understand visual interface – no coding required!
I also love that I can have an idea about adding functionality, search online, and find multiple modules to choose from that might make that idea function. For example, one of our clients has excellent Yelp reviews and wondered if there is a way to show them off on their site. Sure enough, there's a module that looks promising to integrate Yelp reviews that I can't wait to try out on a client site. Look out Dave – let's hope it's not a triangular lego piece.
That Drupal gives us the ability to customize details means a lot for our clients' back end experience. I can customize form field labels to help clients understand what the form does. I create in site training text within a form or stand alone pages that are visible for certain logged in users. I use these pages to outline workflow for a complex project, as a reminder of infrequently used form features, site wide hex colors, and target sizes for images.
My very favorite thing about Drupal is that we can tailor the back end to suit our clients and their needs. One of our clients during their Drupal training session stated, “It's as easy as posting on Craig's List”. And my work is done!