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), 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 have recently revamped the networking in my homelab due to upgrading and migration of my router from the RB750Gr3 to a RB5009, and have yet to fully update the write up for it (even my ISP supplied ONR has changed due to contract renewal) so it may be a little outdated. The old configs and setup are still functional though, the changes are mostly quality of life like revamping the VLAN planning, switch configs, firewall filters, new VPN layout, IP subnet migrations, NIC upgrades to 2.5G and some other small stuff. I'll write a migration article to consolidate what I did and what I learnt for future reference.
I run self-hosted services in my homelab built from the ground up — full of services I use daily like git and jellyfin, networks I broke and fixed, and more cost than I'd like to admit. It started with building a 'cold' raid-10 windows machine, to a FreeNAS/TrueNAS machine using second hand parts, and has turned into an ecosystem of different machines and networking gear.
From NAS and Docker orchestration to VLANs, WireGuard tunnels, DNS layering, media and game servers; it’s where I experiment and learn outside of the University. And of course occasionally break my own internet (prep rollbacks and don't prematurely set a non functioning DNS resolver or DNS server or delete them by accident - Its an experience itself to have internet and no access).
Full List of Homelab stuff: A breakdown of my self-hosted infrastructure, hardware specs, and services running across my custom servers and network stack. Cood read if you have the time (imo), some of my pain points experienced while building, setting up and running the homelab, as well as my future plans with it.
What I'm Currently Working On
Some snippets of my ongoing projects.
- Singapore Bus Route Project: A fun ongoing project where I’ve been analyzing and mapping Singapore's bus routes using real-time data to figure out the best way to visit every bus stop.
- C JSON Parser: An ongoing C-based JSON parser built from scratch, designed to read, parse, and handle JSON data. This project is a fun dive into systems programming, as well as learning how to handle JSON data from scratch.
Completed/Archived Projects
A few things I’ve finished and I thought were cool.
- SUTD Pathfinding Project: I explored pathfinding algorithms from scratch and used them to map out the SUTD campus more efficiently. Download the report here.
- Custom C Shell: Tiny Unix POSIX compliant shell with job control & tab‑completion. Wrote it for 50.005 with a bunch of built in programs and utilities.
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 timeless text-first clarity. I also borrowed from McMaster-Carr — not in style, but in attitude: get to the point fast, no distractions.
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 on projects using vim in Debian 12 through WSL on Windows 11, and I swap between Windows 11, Debian 12, Ubuntu 22.04 and Arch on my laptops on the go.
Check out the full details of my setup here →
Comfort Languages:
C, Python 3, Java
Software stuff:
Git, Vim, tmux
Hardware:
ESP32, Arduino, Raspberry Pi, 3D Printing
Books I've Read (or Am Reading)
A random collection of books — technical, philosophical, casual, or just thought-provoking. No particular order.
- The C Programming Language – Kernighan & Ritchie
- Introduction to Algorithms – Cormen, Leiserson, Rivest, Stein (CLRS)
- UNIX Systems Programming – Kay A. Robbins & Steven Robbins
- Digraphs: Theory, Algorithms and Applications – Jørgen Bang-Jensen & Gregory Z. Gutin
- Meditations – Marcus Aurelius
Contact
You can reach me via email at ryan_pek@mymail.sutd.edu.sg.
Check out my projects on Github.
Connect with me on LinkedIn.