Portfolio

This Website

August 2021

Throughout my college career I somehow ended up not taking any classes on web development. After having several project ideas involving websites and seeing how many job opportunities were available for web development I decided to teach myself a bit just to see how I liked it.

I decided that a personal website where I could host a portfolio of my projects would be a perfect place to start. I could also add other things like a dev log later if I chose to, which I did.

As a part of teaching myself web development I also wanted to learn about cloud computing. I went with an AWS EC2 instance because of the free year trail period and because of how commonly AWS seems to be used in the industry.

I used Django because I felt comfortable coding with Python and I liked the features that it offered. After a quick tutorial or two the backend stuff felt pretty straight forward to me. SQLite is the default database that came with Django and although I had only had experience with PostgreSQL the core concepts were pretty similar and easy to pick up.

The difficulties I ran into were with the frontend. I had never used HTML, CSS, or JavaScript before so everything was new to me. Learning the syntax of HTML and CSS wasn't an issue, but knowing how to use them to make something look good was a much harder ask. I could display the information I needed to display, but it looked very plain and boring. I spent some time trying learn basic design philosophy and how to implement it until I came across some advice that I should just find a template I like and tweak it until it fits my need. This accelerated the process of making the website look nice and taught me a lot more than I would've learned trying to build it from scratch.

Overall I learned a lot from this experience, and it's a project that I return to a few times a year to improve its look and content and to teach myself more about web development. In the future I hope to learn more about JavaScript specifically and to begin using a framework like React.