We're live!
We’re live!
Welcome to my blog.
My intention with this blog is to publish posts on subjects related to software engineering. These will range from tutorials, opinion articles, lessons I’ve learned, and notes from technical readings.
I built this blog using Jekyll, and AWS. It is hosted in a public S3 bucket, and delivered with CloudFront’s Content Delivery Network. The CDN redirects HTTP requests to HTTPS ones, and allows for faster delivery from edge locations. I used Route53 to reserve my DNS record (matthewlk.com).
The reasons why I decided to use Jekyll and AWS as opposed to Wordpress or some static host website like CloudFlare is that I wanted to own the source code, and have more control over the infrastructure. Additionally, a main requirement of mine was to be able to write in markdown as opposed to using WordPress. In hindsight, using a hosting provider like CloudFlare would have been faster and easier thanks to their off-the-shelf deployment pipeline. However, I do save some money if I manage the infrastructure myself with AWS. The overhead to deploy the infrastructure myself was only around 3 hours of work anyway.
If I ever want to make things easier for myself, I can easily make the switch because I own the source code. Additionally, if I want to make my site more complex, I could migrate and use AWS Amplify to have CI/CD. For now, using that would be overkill. My development consists of making changes locally while a jekyll server serves new changes, then building the site with jekyll, and uploading the build artifacts to s3 with the AWS CLI when I’m satisfied with my changes. It’s simple, cheap, and I’m satisfied with it.