I get a lot of people asking me how to create a website. They see this page, or the site I run for the Southern Arizona Greyhound Adoption group, or my professional site, and wonder what they need to do to play. It can be confusing to a neophyte, but hopefully I can clear the confusion.
First, you need to honestly assess your technical ability. Do you view yourself as a bit of a nerd? Are you comfortable with supporting yourself on your computer, do you like to tinker? Then you might want to look to hosting and running a site on your own. But if you get nervous when you hear terms like FTP, SSH, linux, apache, PHP or the like, you might want to go with one of the completely managed solutions.
Second you need to decide what you want to publish to the web. Most common is the blog format. This is a series of articles that can be arranged by category, and give you flexibility on what you want to post (text? photos? videos? all of the above). Or do you want to be a bit more formal, run a site that is more of a portal or a magazine or newspaper. The Greyhound site that I run is like this. Most of the content is static, but there are dynamic parts of the site. Additionally, there are tools to help less skilled people contribute without giving them access to the back end. Do you want to do e-commerce? Integrate ads to help offset your costs? It is best to get this down on paper up front.
If you are a neophyte, and you are scared of terms like FTP and PHP you can go with one of the hosted solutions. Both Blogger (a google property) or WordPress.com will be able to get you up and running very quickly. Both sites give a reasonable service for free, and are very simple to use and setup. Both can host your own domain name (your address on the web). The wordpress service is what I am using here, and it is pretty solid. One downside is that they will constantly try to get you to buy extra services (custom typography, custom templates). Still, for many people, this is the best path.
If you are curious, and not afraid of computers and technology, you might decide to roll your own. Typically you buy hosting from one of the major hosting services (Hostgator, GoDaddy, MediaTemple) and then setup your site. Fortunately, it isn’t too geeky, as you can easily FTP your files over, create a database, and run the built in installer and you will be up with a basic site.
There are some terms to learn. The software that runs on the host to deliver your website to the visitors is called a CMS (content management system). A content management system (CMS) is a package that provides the logic, the maintenance behind the scenes, and utilities for adding content. They typically have a front end (what the public sees) and a back end (where you add articles, posts, or pages).
Templates are sets of files that alter the look and feel of the website. The packages typically have a couple of default (read: ugly) templates to get you started, but you are probably going to want to use a different template. Don’t worry, you don’t have to create your own, there are tons of free and paid templates for all the major packages.
Plugins/components are additions to the web CMS that extend and enhance the experience. Things like a tag cloud, or a twitter feed, or archive access are common. But there are other plugins that can be used. Perhaps you want Disqus for comments to your posts. Or you want to have Facebook “Like” icons. You can add these and more and not have to know anything about HTML.
All the major CMS platforms have some common attributes – they store their content and settings in a database (typically MySql), they have some type of hierarchy or taxonomy to arrange and group content, and they are typically built on PHP code that creates the HTML and styles that are seen by the public.
The major CMS’s
WordPress: The most used CMS. It is very simple to setup (I can get a new site up in about a half hour), and straightforward to manage. It doesn’t require a lot of skill to keep it going. There are an amazing number of plugins that gives you infinite flexibility in layout and pizzaz. Additionally there are thousands of templates to give you a site that stands out from the riff-raff. I started with WordPress.
Joomla!: The second most popular CMS software, Joomla! is quite flexible. It is what I use for my tralfaz site, and the Greyhound site. It is more of a general purpose CMS, unlike the “blog” focus that WordPress takes. There are lots of automation options for contributors, and a very rich user management environment that allows you to have many different access groups and control who sees what (I don’t really use this, but private sites, and member sites are trivial to setup in Joomla.) Joomla also has a very powerful ecommerce option, called Virtuemart that is pretty easy to setup, but very powerful.
Drupal: Drupal is probably the least friendly CMS that is commonly used. It is more for web professionals, and keeping it up to date is a pretty hefty job. The basics are easy to get up, and built in are things like forums, and some great content bits built in. But the major sites that use Drupal have a lot of customization, and a full IT staff to keep it going. One site that does use Drupal, is the Economist. It is a good example of what can be achieved with Drupal. I have played with it a little, but it really is not for a hobbyist.
In the next article, I will discuss how to choose a hosting company, and the basic steps required to get online, and sharing your passions. I will also touch on maintenance and how to avoid being hacked.