Welcome

Ryan Pek (b. 2001) | 3rd Year Undergraduate SUTD | Canned food enjoyer

About Me

Hi there! I'm Ryan, a student who loves to tinker with code and explore new ideas. When I'm not diving into my latest project (or the dustbin for electronics - I'm serious, these University skip tanks embody the one man's trash is another's treasure), you can find me learning something new or figuring out creative/silly ways to solve problems. This site is a little peek into my world of coding and fun projects!

More →

Homelab

I run self-hosted services in my homelab as a long term side project. At this point it is less of "one old PC running Docker" and more of a small internal infrastructure stack: Proxmox, Terraform, Ansible, internal DNS, reverse proxying, monitoring, media services, GPU passthrough, and enough YAML to make me question my life choices.

The current main compute node is a Supermicro H12SSL-I system with an EPYC 7542, ECC memory, local NVMe, a 10G uplink, IPMI, an RTX 3090 for AI experiments, and a Quadro P2200 dedicated to Jellyfin transcoding. The older Z640 is now more of a proof-of-concept / spare Proxmox box rather than the centre of the lab.

The network is split into VLANs for services, VMs, NAS, management, DNS/infra, torrents, and IoT. Core DNS is no longer a random docker container I pray stays alive: I now run separate resolver VMs using AdGuard Home + Unbound, separate BIND9 authoritative DNS VMs for the internal peky zone, and a Caddy reverse proxy VM with an internal CA for HTTPS inside the lab.

Most new infrastructure is defined from Terraform and then configured with Ansible. Jenkins, Gitea, a Terraform controller VM, Prometheus/Grafana, and a K3s/Rancher/AWX experiment are all part of the current automation direction. Some parts are working cleanly, some parts are in the "I understand why this broke, but I am still mildly offended" stage.

This is still my playground for learning networking, Linux, service operation, backups, and systems design. It has broken my internet, eaten a ZFS partition once, taught me DNS the hard way, and generally paid back the pain by making abstract infra concepts feel very real.

Full List of Homelab stuff: current architecture, devices, network layout, automation state, and what I still need to clean up.

What I'm Currently Working On

Some snippets of my ongoing projects.

Completed/Archived Projects

A few things I’ve finished and I thought were cool.

Full List of projects →

Site Design Inspirations

This site is intentionally simple — no frameworks, no dark patterns, no extra JavaScript. Just good old HTML, some light CSS and Vim's auto indent to keep me sane.

No fancy graphics, no latest trends, just what I hope is easy to access and read.

The structure is inspired by Bjarne Stroustrup’s website, for its text-first clarity. I also borrowed some design choices from McMaster-Carr — straightforward, get to the point fast, no distractions.

More about the Site →

Setup

I built my own custom PC to handle everything from programming and simulations to hardware tinkering. It’s powered by a 5950X, 32GB, and a 7900 XTX.

I mostly work in Debian 13 stable on my workstation and T480, most of my homelab vms are on Debian 12 or 13 and the occasional Ubuntu Server. Some windows for my school work (so I can take the exam), to access acrobat to sign off documents.

Check out the full details of my setup here →

Other stuff

Comfort Languages:

C, Python 3, Go

Functional enough knowledge Languages:

C++, Java

I can do it with loads of googling/docs Languages:

Javascript, Typescript

Software stuff:

Git, Vim, tmux

Infra stuff:

Ansible, Terraform

Hardware stuff:

ESP32, Arduino, Raspberry Pi, 3D Printing