HTML and CSS Reference
So far, this topic has been about building things from scratch. This lesson, on the other
hand, is about applying tools to make building things a bit easier. However, as I've men-
tioned, using existing tools can be a job unto itself. Before you can start using
MediaWiki to manage your content, you have to download it and get it installed on a
server and configured properly. The same is true with any software package. Even if you
go with a hosted solution, you still have to set things up so that the software enables you
to accomplish your goals.
You may also be wondering at this point why you bothered to learn HTML, CSS,
work for you. This is one of the most common misconceptions about this kind of soft-
ware. Content management systems make some things more convenient, but you'll still
apply all the skills you learned over the course of the topic to make your pages look the
way you like.
Before discussing specific applications, I'm going to discuss some topics that pertain to
nearly all applications of this kind: relational databases and deployment issues.
In Lesson 21, “Taking Advantage of the Server,” and in this lesson, I've brought up the
subject of relational databases more than once, but I haven't explained what they are or
how they work. Relational databases are by far the most popular data repository for web
applications. There are a number of reasons for that:
They can scale from the smallest to the largest of applications —You can start a
website on a web hosting account on a server that's shared with 50 other people
and eventually wind up running 50 servers of your own and use a relational data-
base to store your data the entire way.
They are flexible when it comes to the types of data they can store —All rela-
tional databases store their data in tabular format. Each record is a row in a table,
and the columns describe the properties of each record. In other words, if you have
a table to store information about people, every person will have the same proper-
ties. The actual structure of your tables can be customized to suit just about any
task. You can create a table of links that has names, URLs, and descriptions for
each link, or a table of invoices that lists the customer, amount, shipping address,
and item ordered for each invoice. The columns in the table can be configured to
hold numbers, dates, short strings, large bodies of text, or even binary files.