So the last few classes were probably confusing. I understand that a lot of you guys were lost from the first sentence that Sang said, which is fine. But learning how to do this is likely going to be one of the most important takeaways from this program.
So here’s a little guide. If you find it to be remedia, stop reading and do something better with your time.
Why This Is Important:
I realize that making the claim that this is the most important thing we learn in this program is large, but I promise it’s not hyperbole. Here’s why:
All of you are going to need a nice looking portfolio/website so that you can prove to future employers that you’re good at what we do. Some of us are going to be the web leads for fly ins. Everyone is going to need a website for your capstone. And come May 18th, you’re going to want a site that doesn’t start with student.elon.edu, as you will no longer be a student at Elon.
The CMS Cheat Sheet
Hosting is literally buying hard drive space on someone else’s computer. I know a lot of people are hung up on buying it, but if you want to get ahead in the industry (or just in the industry), you’re going to need a website. If you really, really don’t want to pay that $5-10 a month, I could teach you how to convert an old computer into an Apache server. Or you could just forgo one cup of Starbucks a month and go the cheaper, less nerdy, more reliable method and just pay someone.
There’s a majillion hosting services out there, but I use Dreamhost. Technically I also use BlueHost and GoDaddy, but I primarily use Dreamhost. It’s just the best. I don’t care who you end up picking, it’s just important that you have somewhere for you to show your work to the world.
If you decide you want to pony up the money for Dreamhost (it’s about $120 per year) I can get you $90 off if you follow enter the promo code IMEDIA12 when you sign up. So that means hosting is $30 for the year. After that year though, the price will jump back up to about $10 per month.
Other things to consider:
Most web hosting services offer you two server options: Windows and Linux. That’s not in reference to the software that you personally use, but the software a server is running. Get a Linux server, unless you know what .NET is. If you don’t know what that means, go Linux. Open source applications, like Drupal and WordPress, are built to run on Apache- the Linux Server software.
A lot of hosting companies offer “one-click installs” where you can select a product (WordPress, Joomla, Drupal, etc.) and their little robots create a database and install the product for you. This is the option I usually use, because it’s simple and doesn’t require as much of my life.
If your hosting company doesn’t provide something like that (I know that GoDaddy, Dreamhost, HostGator and BlueHost all do), you can just follow the various instructions available from the CMSs’ websites.
File Transfer Protocol (FTP) is how you access and manage your remote files that are on a happy hosting service like Dreamhost or whatever. For the most part, WordPress allows you to upload files through their dashboard interface, but if you want to put up any of the sites that you’ve worked on so far (in bootcamp or whatever) to the internet, you need to have an FTP client.
Much like hosting companies, there are a bunch FTP clients. FileZilla is good. So is CyberDuck. If you’d like to pay for an FTP client, consider Transmit or Fetch. I actually think Fetch might be free. Most good code editors have FTP built into them. Dreamweaver and Coda do, for sure.
FTP is just a way to upload files from your personal computer to your host server.
What you need to access your server remotely:
Server address (usually formatted like this- something.something.com)
And an FTP username/password (usually the same as your hosting login)
Once you have a server to transfer files to, it’s pretty much as easy as drag and drop. Again, Dreamweaver has this functionality built into it, so there’s no need to get anything else.
Download a CMS-
Sang went over WordPress, which is my personal favorite CMS because it has the best support out there, the most themes and plug-ins and the best organization. It, however, is not the “best” CMS. That’s dependant on what you’re trying to do.
There are dozens of CMS programs. Drupal or Joomla is probably the best for website creation. ZenCart or Magento are the best for ECommerce. Any blog should be done on WordPress. It really just depends on what you’re trying to do with the site.
CMS applications use a database and query system to make their sites. The primary languages are MySQL (the database) and PHP (the querying language).
So you might be confused why you need a server to store files and a database to store files. You saw Inception, right? The answer is 42. Don’t really worry about it.
The truth is you can go happily through your life without ever having to know SQL or any of its (evil) children. And that’s fine. All you need to know is that hosting companies have little robots that install these for you, or they will take you by the hand and walk you through the process. Simple as that.
This is the server-side language that most CMS projects use. And it’s nice. The reason it’s nice is because you can write code for the different sections of a page (header, body, sidebar, footer, etc) and have them automatically generate new pages on a blog. The posts and other content gets stored in the database and a line of PHP calls the content and assembles it together. Again. The internet is magical.
So what do you need to do?
1. Get a hosting service
-A domain (yourname.com) is not a hosting service. It’s a domain. And you don’t have to buy your domain from the hosting company (or vice versa). If you buy a domain on a service like Namecheap or GoDaddy, you can host the content on BlueHost or Dreamhost. The internet is magical.
2. Download WordPress.org or do a one-click install
-Any hosting company worth its salt will have a software installation section on its control panel that will install your CMS. You don’t have to use WordPress, it’s just the easiest to use and has the best community support. But installation instructions are available from the CMS websites if you can’t one click.
3. At this point you have a functional website. You can pick a theme and quit if you want.
4. If you want to mess around with your theme, get an FTP client.
It’s just 1000 times easier to do this in your favorite editor, than through the editor available online through WordPress. All the styling on your page is CSS. You don’t need to know a stitch of PHP to do it.
If you’re still having trouble getting hosting/domains/CMS/whatever, feel free to come up and ask me about it. I’m always willing to help.