My Background
I started creating software in 2010 as a naive sophomore in high school, full of hope for the possibilities technology offered for the future. Armed with a shitty laptop and a cursory knowledge of C++, I began my tour of duty in the deepest trenches of despair: Windows Forms applications 🤡 Now, a decade and a half later, I have learned much and applied better. Welcome to the show.My interests revolve around agentic and generative AI applications, DevOps tooling, automation, orchestration, scientific computing, and embedded systems programming - particularly in the context of IoT and home automation. I also like to solder and cannibalize circuits and every now and then.
Below are common project templates prepackaged with a robust local setup - and they completely self-configure! These repos are well-suited to be the basis of your next idea.
Tip
With just three clicks, you can immediately spin up any of these prototypes in the cloud, for free 😎
All of these templates are GitHub Codespaces compatible - and you receive free GitHub Codespace time! They can also spin up in just two clicks using Docker if you want to develop locally. You could even spin these up in Codespaces from your phone, if you were so bold.
Repository | Description |
---|---|
next-app-template | NextJS app development with TypeScript and PostgreSQL. |
jupyter-notebook-template | Jupyter notebook development with an Ollama server and Ollama web UI. |
django-app-template | Django app development with a PostgreSQL database. |
rust-app-template | Rust application or library development. |
electron-app-template | Electron app development with XQuartz. Codespaces will not spawn windows. |
go-app-template | Go application or library development. |
rails-app-template | Rails app development with a PostgreSQL database. |
Repository | Description |
---|---|
genesis | An efficient, parallelizable, Docker-based CI/CD pipeline runner. Create and run both simple and complex workflows with a directed acyclic graph configuration using containers, commands, and mounted volumes. This tooling implements another public library of mine, gograph, to power an elegant lifecycle loop. |
SujuNN | A convolutional neural network that can identify the number of sides in a polygon. |
mailbucket | An email server that uploads incoming emails to an S3 bucket. Useful for email data processing. |
tugboat | A microservice provisioning automation tool. Automates the creation and configuration of service dependencies for new microservices. |
Repository | Language | Description |
---|---|---|
conduit | Go | A minimal, concurrent, asynchronous file processing ETL library for AWS S3 |
gograph | Go | A library providing graph theory primitives and operations |
If you're looking to create, maintain, extend, and secure a proper engineering-org scale AWS infrastructure with Terraform, these modules will get you far.
But how?
These modules follow a DNS zone strategy as devised here, and implement ingress domains with a maintainable, extensible, and practical strategy for service-based application architectures. Essentially, an organization is tied to a domain name, and there's a heirarchy of subdomains thereafter that correspond to operating environments (e.g. prod, stage). For each operating environment, services are delegated a unique subdomain (e.g. web.dev.yourdomain.com, api.prod.yourdomain.com).
Proper IP space CIDR boundaries accompany all of these logical subdivisions. This strategy ensures strict layer 3 data boundaries while optimizing network performance.
Repository | Description |
---|---|
terraform-aws-organizations | Deploy infrastructure for an organization with a domain name |
terraform-aws-operations | Deploy infrastructure for an operation within an organization (e.g. stage, prod) |
terraform-aws-applications | Deploy infrastructure for an application within an operation |
Below are technologies I've implemented and maintained in a professional capacity; feel free to reach out if you need a hand with something!