Log in

No account? Create an account
bird poops on plum branch


Buster Benson

No advice column.

Previous Entry Share Next Entry
potential meme: try to explain something difficult that you're familiar with in simple terms
bird poops on plum branch
In my campaign to get everyone to start more official websites about their passions, professions, and interests, I've had a couple conversations in the last week about how websites work.  I remember when I bought my first domain in 2000 (ianomalous.com) it took me a long time to wrap my head around how websites worked, and since I'm not really that technically talented in my core, I feel like I eventually ended up understanding this only after a lot of effort. 

It's a topic that is never explained in simple terms.  Here's my best attempt at explaining it.

The big picture

All of this works together something like this:
  1. A browser requests a domain (like, say, bustermcleod.com)
  2. The browser checks to see where that domain is hosted (by asking one of repositories of domain information that are saved around the internet).  Those repositories then tell it to check a certain particular computer that's sitting somewhere in the world, always on, always waiting.
  3. That computer sitting somewhere in the world then notices that someone wants a certain page (specified by the URL) and checks its own internal settings to see where on the computer that page lives.  Depending on the settings, that page may have to be interpreted before being served.  For example, if the file is written in Perl, or Java, or Ruby, it will first interpret the code and then return the result in text or HTML format.
  4. Your browser then takes that HTML, CSS, javascript, etc and translates it into the visual elements that you are used to seeing as a web page
That's basically how it works. 

Here are the steps you would need to take in order to buy and host your own website.

1. Register a domain at a registrar (like joker.com)

Anyone can register a domain for somewhere between $5-$20/year.  I recommend Joker.com (and really like services like Eric Case and Cameron Walter's domai.nr to help pick a domain) because they're not too expensive, and their interface is really simple to use.  These places that you buy domains are called registrars and often also come with tools to host your website, though, in order to keep things simple, I generally register my domains in a place that is best at registering domains and host my websites at places best for hosting websites.  Places that try to do both usually do one better than the other.

2. Find a web hosting service (like site5.com)

So, you've got a domain, and you're not sure what to do with it.  The next step is to find somewhere that you want to host it.  Hosting a website usually costs between $3-$100 a month, depending on how much you want to do with it, and how much power that requires.  For most people, a $5/month hosting service is more than enough.  I currently really like site5.com's service, since they're cheap, have good customer service, a well-designed set of tools, and can handle more than one domain at a time without charging you more.  If you want to host a website, you can try asking me too...

To make your domain point to the web host of your selecting, you often have to change its "nameservers".  When you find somewhere to host your site, they will usually give you instructions something like "change your nameservers to point to DNS.SITE5.COM and DNS2.SITE5.COM".  At which point, you'll need to go back to the place that you registered your domain, and figure out how to do that.  When I logged in to godaddy.com yesterday (where Brian bought his domain) (and where nobody should buy their domains) it wasn't easy to figure out how to change the nameserver, and there were no obvious helpful signs explaining that you might want to do so (mostly because they will try to host the site for you and take more of your money).  But, if you hunt for help docs on changing nameservers, most likely you'll be able to find a way.

Oh, and changing nameservers isn't the only way to host a domain, it's just my prefered method.  Most webhosting services seem to support this way, and since I have like 3 different webhosts and 12 different domains, I just go with this method.

3. Find an FTP program (like Transmit or SmartFTP)

Once you have a domain, a web host, and are pointing the domain at the web host, you can now probably access your website through a browser after a few hours (information about your domain has to spread out across the internet, which takes a few hours).  You'll probably get a blank page, a directory listing, or some other placeholder page.

The next step is to figure out how to edit files on your web host.  Your web host will have information on how to connect to it through what they call an FTP program.  FTP stands for file transfer protocol, and is just a way to move files from your computer to the web host.  This is the most common way to edit files on your web site.  If you're on a Mac, Transmit is awesome and easy to use (and worth the money).  If you're on a PC, I don't know what the best program to use is.... SmartFTP seems to be good. 

An FTP client usually has two windows, one with files on your computer, and another with files on the server.  You can move them back and forth by hitting upload or download.  

4. Find a text editor (like SubEthaEdit)

If you're going to be writing your site in HTML, you just need to find a text editor that will help you do this.  You can use something as simple as Notepad on the Mac or Textpad (or whatever it's called) on a PC.  Write html, save, upload, check it in your browser.  That's the cycle that everyone who works on websites is very familiar with.  Some FTP programs (like Transmit) will let you edit the files directly on the server, thus eliminating the need to upload files, but having a good text editor is still required.

This explanation isn't perfect, and far from complete, but I think it's all you really need to know to get a sense of the general way that sites are hosted.

Now, if everyone explained one topic that they were familiar with (but that people outside of their area of expertise didn't really ever bother trying to fully understand) we'd all reach our quota to learn something new every day pretty easily!

  • 1
This makes me think of our IT department's description of how VPN works: "An analogy might be to send an elephant, undetected, to someone in Patagonia. At the sending end, a machine would mail a combination, and then break the elephant into uniform chunks, label each chunk, and then place each chunk into a locked trunk. The machine would ship each of the trunks along the most rapid routes. In Patagonia, another machine would receive the trunks, each secured with a combination lock. It would open each trunk with the combination, read the label, and follow the instructions to reassemble the elephant."

I understand VPN a lot more now than I would have trying to figure it out on my own. Although I'm sort of grossed out by the image of leaky elephant boxes.

If you had leaky elephant boxes, it would ruin the whole Patagonia mission. And the elephant too, I guess.


Explaining things I'm familiar with in simple terms is MY JOB! I love it! Name a historical topic, and I'll tell you about it. Wait! HEY!!!!! That's going to be my method for studying for that big test I was telling you about! Since I have to know everything about every kind of history, I'll just turn my friends into walking flash cards!

In 1893, a famous professor named Frederick Jackson Turner said that the American frontier had disappeared. He was right, if you ask me. There was no more new land to discover, and the American government had taken charge of the whole continent. Poor natives. Here are the reasons why people in the East flooded to the West:
1. Too many damn people in the cities of the East
2. Too much damn bloodshed during the Civil War
3. Too many damn landlords keeping the people down--everyone wanted to own their own land
4. As demonstrated in the immortal "Far and Away," too many damn immigrants coming from even further east, looking for jobs and land and freedom from oppression.
5. Too many damn capitalists trying to broker deals between industries. Railroads, steel, and the American Government being the most obvious. Railroad towns, Chinese workers, etc. etc.
6. The newspapers made a lot of money selling "Go West, young man!" ads, which were funded by the people in #5, and which were wildly successful.
7. Too many damn treaties with Mexicans and Indians, which opened up the whole freakin' American west (and contributed to the Civil War, but to explain that would take me too far afield)
8. Too many damn rumors about GOLD!!!! in California and FERTILE SOIL!! in Oregon.

I just realized that this is Buster's post, not mine. I will stop now.

for those who aren't expecting to have popular websites, I've found that nearlyfreespeech.net is great because you only pay for the bandwidth that is used.

(TextWrangler is also pretty good and free for simple editing, and it connects directly via FTP.)

Filezilla is a great free, open-source FTP client for the PC. Plus it supports SSH.

Thanks for the kind words! I might do these in a slightly different order (http://blog.domai.nr/2009/02/web-sites-explained-simply.html), however. :)


  • 1