New beginnings
Starting truly is the most difficult part of doing anything.
As Samwise Gamgee's old gaffer used to say, “It's the job that's never started as takes longest to finish.”
I've read that "good is the enemy of great", but more often, my problem is "perfection is the enemy of progress." But enough quotes!
I started building a new personal website
I was embarrassed of my old website, but too paraylyzed by perfectionism to start anything new. So here it is, my new website.
AWS all the way… however painful
I started this project to learn and flex some web development knowledge I acquired the last few years. Namely, using "infrastructure as code" for the entire groundwork of the website.
My current job requires me to navigate the AWS console daily. At first this was an overwhelming maze of drop-down menus and strange names for their services, but now I find it fascinating. I hope to use a more-than-reasonable number of these products to learn more about them.
I settled on AWS Cloud Development Kit (CDK), a framework that allows you to use your coding language of choice to spin up AWS resources.
Yes, I could use a friendly service like Netlify, Vercel, Heroku, etc.—but what would I learn?! So far, I'm very pleased with this setup. I hope to share the CDK code so anyone could spin up a CloudFormation stack that serves up a static website. This way, I have a truly "full-stack" repository. Is this a good idea? Time will tell.
A static front-end
I love React, but I need a break. I've enjoyed building in Gatsby (like this recipes website for my current employer), but it often seemed a little heavy-handed to generate simple static websites.
I found I'm not alone in that, and 11ty was exactly what I needed. The simplicity is a breath of fresh air. HTML gets put in the _site/
folder, and I plop it into my S3 bucket—done!
Mistakes were made, and more will be made
This website is an exercise in fighting the paralysis of perfection. I plan to document my mistakes, learnings, and solutions as I build this small project in the open.
If you're reading this, thank you for joining me! 💖
Brainstorm
Some initial thoughts as I form a to-do list for this website. We're just spitballin' here.
- CI/CD for accessibility and performance (Lighthouse, etc.)
- Automated spelling and grammar checking (does Grammarly have an API? 🤔)
- Similar to 11ty's inclusive language plugin
- Use GitHub actions for deployments on merge
- A page where I openly track the billing and pricing for this website
/resume
page- Posts for projects since 2018 (yikes)
/uses
page/changelog
page- posts about Unraid learnings and NAS server build
- posts about Plex
- posts about Usenet
- OSINT related learnings
- page where publically available information of visitors is displayed to them
- integration with Medium for more-formal posts
- is that where the cool kids still post?
- Raspberry Pi learnings
- General connection to public GitHub repo
- 'last updated/deployed' badge in footer
- link to each page on GitHub
- share generic AWS CDK static site stack that anyone could spin up
- Article round-ups, resources, and inspiring people I follow
- CSS design fun
- Colors! Gradients! Fonts! Liberal use of emojis!
- Currently using a fun "fluid" typography scale generated by utopia.fyi