How Did I Make this Website? Pt. 1
Originally Posted: Oct. 15, 2022
Last Edited: Oct. 15, 2022 3:56 PM EST
Author: Mr. Siefen
Isn't Making Websites Really Difficult?
Basic web design is not terribly difficult when you have the right tools and workspace setup. This site (initial pages, store and first blog) were all written from scratch in less than 24 hours. No templates, no starter code, nothing. Web site design and building should be easy. While a myriad of tools exist to help web designers, none of them work just like you want and 90% of the time you end up writing alot of custom HTML, CSS and JS anyways. So why not just start from scratch?
Where is this Website Hosted?
Where web development gets tricky is in your choice of Hosting service and Domain Name service. I chose to do this in a more difficult way (but its super duper cheap!!!!). All websites work with a Client (the user) and a Server (some computer on the internet that serves webpages). How much that server can do, what code it can run, or its behaviors are all controlled by your hosting service. I am hosting via an AWS S3 (Scalable Cloud Storage) Bucket. As my site grows I can add more files to my online cloud storage bucket and my cost's only grow as the site grows.
S3 Buckets can be restricted to Amazon account users or the public for reading/writing or more. I chose to leave my website files (index.html, my image files, scripts and css) as publicly readable, but not writable. Any user can access the items in the bucket from a link here: http://mrsiefensrobotemporium.com.s3-website-us-east-1.amazonaws.com/ That works and people can see it publicly, but it is NOT a great link to send people to. I certainly wouldn't want to type that into my browser all the time. If you look really closely at the link you can also see which AWS server my bucket is located on (US East). NOT something the whole world needs to know when you are trying to go to my website. The answer to this is to get a proper domain (www.mrsiefensrobotemporium.com) that people can visit the site from.
What Domain Name Service is this Website Using?
Domain names can be leased from Domain Name Services like GoDaddy, Google Domains and others. They all work in the same fundamental ways with different fees or contracts. For simplicity and to support the other Google services I'm using (gmail, youtube, drive, business profile, etc) I chose Google Domains. I already had a new Google account set up for this purpose, but you can do this from personal accounts as well. In order to get the domain name mrsiefensrobotemporium.com I signed up for a limited time lease for X years at $12 a year. When someone on the internet types mrsiefensrobotemporium.com, Google Domains does the work of pointing the user to my S3 Bucket where the Website is hosted. Thats the core function of a DNS. Google Domains can also be tied into Analytics, AdWords and other useful business tools for web developers when the domain is there.
What's the Final Cost per Year to Have a Custom Website?
I've been a customer of AWS's S3 buckets for 6 years. I have 5 different websites hosted this way. Every month I get a bill from AWS for $1.60 x 12 months = $19.20. Then combined with my $12 per year for my domain lease means a grand total of $31.20 per year. While I completely expect my cost for S3 to grow with me, it's such a small amount per byte that you really make good use of that space you pay for. You can keep the AWS cost down by loading external files (use embedded youtube instead of hosted video files) instead of storing files in the S3 bucket. I did not factor in a labor cost, but that's because I did the labor myself. Any small business owner could follow the steps outlined in detail in future posts (parts 2, 3 and 4) and have a basic Webstore and Website for less than $35 a year.