How did I make my personal Website? (Part Two)

August 14th, 2020

Blog Image

If you are reading this blog without reading the first part, please read the first part and come here again because it discusses how I started the website, what challenges I faced in designing it, and what languages I had to use for certain features. This part of the blog contains how I hosted the website and the challenges I faced during and after hosting it.

I chose AWS to host my website because of their super fast hosting services. I was even more impressed when I started to learn about their CloudFront service, or Route 53 service; I was able to visualize the benefits that came with AWS just looking at the setup. It’s always nice to use Platform as a Service (PaaS) because we’ll know how it will work in real life without having to worry about the hardware. Before hosting the website, I got the domain name from “godaddy.com,” so I didn’t have to purchase the domain from AWS. I also had to make sure the website has an SSL certificate, so I decided to set it up using the certificate manager service in AWS. First and foremost, I began by creating a bucket in the S3 service and added all of the files to the bucket. I named the bucket “krishbavana” because it has to be globally unique. I made the bucket accessible to the public, and removed all permissions. Once I was able to make it public, I used the S3 link for testing the website. After I was sure all the files were moved and the testing was done, I got the SSL certificate for the website and added it to the Route 53 service, a service that helps maintain all DNS records. I was able to set all the DNS records and proceeded to add my domain to the service. Once I was done setting up all the records, I used the CloudFront service to set the cache and then deployed the website. The entire hosting process took less than 3 hours including deployment, thanks to AWS. The struggle was alright until here, but the real tension began now.

When I first deployed the website, there were many things that were malfunctioning or incomplete; I didn’t have a hamburger menu, the slider on the homepage was not working, the resume page had no content, and I only had 18 days until my deadline. I didn’t want to touch the slider just yet, so I began working on the hamburger menu. I was keen on not using Bootstrap or any of the libraries for the, so I decided to just use Javascript and write the hamburger menu. I worked on the hamburger for two days and implemented it on every single page. Now I was onto the most important part of the website: the slider on the homepage. When I was explaining it to one of my friends, he asked me why I was being so stubborn about the slider. My only goal was coding the best website possible, but it was only possible with the slider. Finally, after many suggestions from my friends and fellow coders, I decided to use the Bootstrap Slider.. I think it was the best decision I ever made; I took two days to read the Bootstrap, and I implemented it in less than a day. I was almost done with everything and there were no more issues on my part. .The only thing left was my resume page, but I wasn’t really worried about it because it only took an only hour to complete. I shared my website with my closest friends and family and asked them to make sure it works and loads properly on their devices. In troubleshooting all the problems we faced, I found the most difficult of them all to be the header jumper, which was malfunctioning because of the Bootstrap layout. I tried a variety of different things and finally implemented Bootstrap on every page to fix the jumps. There were a few hiccups but thankfully no major issues in the process. I am not sure of the exact number, but we tested it in more than 30 different devices before I was happy with the output. It took more than seven days to fix all the bugs and create a resume page. I added analytics, as well as the search console to the website. I constantly checked the website SEO scores and tried to fix the bugs I found. I used the Lighthouse tool for testing and fixed some more bugs, since I wanted to give the best output I can. Finally I decided the date to launch the website and successfully launched on July 27th. All in all, the process was a very small journey, but every day was challenging and interesting. I don’t really know if I will go into front-end development, but I enjoyed this space.