Okay, let me back up and try to diagram how this stuff works together, near as I can figure it. Corrections gratefully accepted. (Psych! No they’re not –
I hate being corrected). Drawing pictures of things always helps me understand. Especially bunnies. I like bunnies. Don’t you?
All these components interact to make the site work. You don’t have to master them all, but a basic understanding, at least, will help you grasp how the hell you blew away your entire site with one keystroke.
From the bottom up, then, it’s:
Hardware. You don’t actually interact with hardware, but sooner or later it’s going to go down, and then you’ll find yourself standing stranded in the middle of the room thinking, “why are my legs so weak? And why am I so pale?” Be prepared. I keep a tot of whisky on hand.
Operating System. The control panel means never having to touch your operating system, but a lot of housekeeping chores are more easily done from the command line. Everyone should know a little Unix. It’s like driving a stick-shift or handling a firearm — you may never need it, but you’ll need it badly when you do.
Server. The server software stands between your little piece of hardware and the internet and mediates how the two interact. It’s another piece you don’t have to touch, but if you want to hide things from public view or set a custom “not found” page, this is the dingus you’ll have to fiddle. With an Apache server, most of your customization is done in a file called .htaccess (which you may or may not have permission to fiddle — check with your host!).
Database. A database is a program for storing and organizing chunks of information. All of the content of a WordPress blog is stored in a mySQL database: posts and comments, but also your metadata, categories links…all the stuff that makes your junk your thing. You should know how to back this up, at least.
Scripting language. A scripting language is (generally) a simple programming language written and stored in (more or less) plain text and executed (usually) on the fly. WordPress sites consist of a series of files written in php — a scripting language specifically for creating HTML. When the computer sees the .php extension, it knows that it should execute the instructions and spit out HTML. When someone calls index.php, it pulls the requested content elements out of the database, assembles all the pieces of your blog (header.php, footer.php, sidebar.php and so on…each of which contain their own instructions) and hands it to the browser as one unified HTML document.
HTML. HyperTextMarkupLanguage. A markup language is a way of combining text with annotations. Annotations about appearance (make this word <b>bold!</b>), annotations about structure (<title>My blog!</title>). Browser software knows how to take these annotations and show them to you as a document. Time was, HTML was all you needed to know to build a website. It was a simple time. A simple, simple time. A simple, butt-ugly time. HTML is short, easy to learn, and a booger to get good results with.
CSS. Okay, so your browser knows that stuff surrounded by a b in angle brackets, <b>thusly</b>, should be bold. But what does bold mean? Your browser probably wants it to mean “thick”. But what if you want it to mean red? Or a different font? A stylesheet is a separate file that tells the browser how to display your document. A style sheet gives much more precise control over type and related design elements.
It’s called a “Cascading” Style Sheet because control of the document can be overridden successively: your browser has a default way of displaying a tag, the stylesheet supercedes that, style commands in the header of an HTML document supercedes that, and style commands embedded in the body of the HTML document supercedes THAT. In fact, when you pay to edit the style sheet on a free WordPress blog, you aren’t editing the style sheet at all — you’re writing a separate style sheet that’s applied after the one in your chosen theme. (A WordPress theme consists of a set of .php element files and widgets that comprise all the components of the blog, plus a style sheet).
So you can change the look of every file in your whole site by editing that one .css file. But you can also make exceptions by fiddling some commands in-line. Neat-o.
The Internet. The less said about this, the better, really. It is what it is and you can’t do anything about that.
Browser. Yeah, there’s variation, even now. There’s no sense trying to get your graphic elements lined up just so, because what looks right in Firefox may not cut it in Explorer. And what looks good in Explorer 6 may not in Explorer 7.
Me, I use Opera, because I’m a Gates-hater from way back. And there are dozens more, if you count Linux and Mac (which, you know, somebody might). Windows makes it very difficult to keep multiple versions of Explorer on one machine (thanks, Bill!), but you’d better at least look at your site with one version of IE and, say, Firefox. It may break your heart.
Eyeballs. Ahhhhhhh! Eyeballs! Eyeballs!! Quick, bunny me!
January 22, 2007 at 8:46 pm
Don’t be a hater, man! Stop the hate!
Nice bunny. Hmmm, bunny windows…
January 23, 2007 at 2:19 am
Ooooh! You got all gummed up in the spam filter. I don’t think Akismet believes you’re Bill Gates…!
January 23, 2007 at 3:43 am
Excellent post! I took a course in this a while back, but I don’t remember much about the mechanics of how it all worked. This was just before XML and CSS really got started. I do remember that Cold Fusion was easier to work with than the Apache / PHP setup.
At work we use Oracle and Cold Fusion. Part of my job is to figure out the Oracle side of things and hook up tables from that system to tables in our databases to extract data for research purposes. You wouldn’t believe how crazy these database designs can get! Other times I get to develop quick applications to hold us over until the real programmers can get around to incorporating them into our main application. Fun stuff!
March 8, 2007 at 5:57 pm
CSS is an evilous invention that made all websites look shiny. Don’t believe in CSS, otherwise you WILL go to hell!
And don’t accept sweeties from starngers.