The Heart of a Website -- Technically speaking
What's "under the hood" of a website is loads of code a computer reads and converts to what you are viewing. To a computer, the pretty picture you are looking at and the text you are reading is all just code. Technically speaking, this code is the core or heart of a website -- it's what makes a website tick. Even if you never have to look at it, it's very, very important.
Web designers create the code of a website in one of three ways. The first way is writing it directly by hand. Websites that use this method are rightly proud of the fact and like to call themselves handmade, hand crafted, or coded by human. A second way is to use intermediary tools such as software programs, templates or kits. Adobe's Dreamweaver is a well known example among many web authoring software programs. In more recent times many large commercial web sites are turning to Content Management Systems (CMS) such as Drupal and Joomla! The third way employes a combination of these two, perhaps basing a website on a CMS program but using extensive hand coding to tweak and customize.
There has been passionate, at times vicious, discussion on the web about pros and cons of hand coding vs using these various software programs, kits, or templates to create websites, but personally, this is not the issue where I would choose to make my last stand. Rather than go pro and con on this topic, I'd rather just tell my own story in the hopes of empowering potential clients to make their own decisions.
I started designing for the web somewhere in the second half of the 1990s. At that time, both the web and computers were pretty new to me, and finding computer code intimidating I chose a software program called Adobe GoLive, which was one of the most sophisticated for its time, an ancestor of Dreamweaver. I rested happy and content with the thought I could be as creative as I wanted without ever having to look at raw HTML code and I think I created some pretty nice stuff for that time.
At about the turn of the millennium, cracks were starting to appear in my contentment. CSS was coming on the scene and software programs were not yet geared to handle it. Not wanting to wait, I ventured into the world of hand coding.
I've never looked back. I felt like I was touching into the heart of what I was creating in a way I had never done before. Also, I felt I was understanding what I was designing in a new, fresh, and fuller way. I was thrilled. I was tasting freedom, experiencing a new level of creativity. New dimensions were opening before my eyes. I touched into a far fuller understanding of the website creation process.
Effective SEO (Search Engine Optimization) and high performance are often listed as advantages of hand coding. Hand coding is mean and lean as it can be streamlined effectively to suit the task at hand. For those wanting to keep their website on the bleeding edge of new developments in web technology, hand coding is a plus as one doesn't have to wait for an upgrade to whatever software program or kit one might be using. Knowing exactly what's under the hood because you're the one who put it there is also a big plus when it comes time for maintenance, further development, or troubleshooting.
Likewise, a handcrafted website is immune to the fate of software programs or kits. These may change ownership, licensing policy, go unmaintained or even discontinued. A handcrafted website is free from any agendas these programs or kits may have.
Even so, as much as I prefer to hand code, if someone asked me to set up a blog for them, I would start with WordPress, a free and sophisticated open source blogging tool and Content Management System (CMS). I would also favor an open source PHP based CMS to build a shopping cart or BBS (Bulletin Board System). Being intimate with the HTML5, CSS1~3, and PHP that WordPress uses I know I could tweak and customize to my heart's content, getting my creative kicks while saving a huge amount of time. Even if making use of these programs I think it's very useful to have a good working feel and knowledge of the code that's under the hood. I would compare it to living in a foreign country and being fluent in the language.
The downside to using these tools is it's easy to churn out another one of the faceless, cookie cutter style, box-like websites void of identity that dot the world wide web landscape. On the other hand, knowledge of code does not automatically impart life and identity to a website. A web designer's creativity, imagination, and ability in accessible web design are as important as whatever tools are used.