About

about me

I'm Yazeed Alharthi. Originally from Saudi Arabia, been in the US since 2019. I did my BS in Computer Science in Pittsburgh, and I'm currently doing a Master's in Computer Science at Virginia Tech.

I spend most of my time thinking about systems close to the machine. Memory hierarchies, storage layers, and the points where abstractions start to leak. A lot of current hardware trends, especially around memory disaggregation and CXL, are forcing operating systems to deal with assumptions that were stable for decades. Latency is no longer uniform. Memory is no longer local. And the OS is slowly becoming a bottleneck in places it wasn't before.

I read papers around tiered memory, remote paging, and storage systems because I want to understand where the cracks are and how people are trying to patch them. I'm deciding between a PhD in this area and going to industry. Both are appealing for different reasons, so the future is a bit cloudy.

I write mostly C and Go. I've used many other languages but I keep coming back to these two. They're small enough to hold in your head and they make cost visible. When something allocates, blocks, or copies, you usually know why.

when I'm not coding

I ride road bikes. Right now I have a Polygon Strattos S4D with a Tiagra groupset and a 12-28 cassette. Good bike for the money, but the 12-28 is rough on hills. I've been going back and forth on whether to upgrade the groupset to 105 or just swap the cassette to an 11-32 or 11-34 for more range. If the bank account ever cooperates, I'd love to jump to a Scott Addict or Trek Emonda with 105 and a carbon frame. For now the Polygon does the job.

I read a lot, mostly fiction, non-fiction, history, and psychology. I play chess (always up for a game), pool, and volleyball. If none of that is happening I'm probably out for a walk or catching up on a show. o

hardware

ThinkPad T14s Gen 3 with an AMD Ryzen 7. ErgoDox EZ keyboard. Single 27-inch monitor. I don't do multi-monitor, I use virtual desktops and tiling layouts to manage everything on one screen. Fewer distractions.

software

editor

Mostly Emacs. I use org-mode for reading papers and taking notes, and it handles the rest. My config is bare minimal, I stick close to defaults and avoid over-customizing. When I'm working with web stuff I switch to Zed.

os

Started on macOS, tried Ubuntu, ruled out Debian for being too slow-moving, landed on Arch Linux.

People love to glorify Arch users. I think that's silly. Arch isn't hard to use or maintain anymore, and it's nowhere near as fragile as some folks make it out to be. I've been daily driving it for about 4 years now, and it hasn't broken on me once. The Arch Wiki has literally everything detailed out for you.

The AUR and pacman are excellent. I can confidently run pacman -S [package] or yay -S [package] and find what I'm looking for. I've got both an LTS kernel and a rolling kernel installed, and I can switch between them just in case one decides to misbehave (hasn't happened yet). No desktop environment, just the tools I actually use.

window manager

Still on X11. Started with bspwm, used it for years, now I run zwm, a tiling window manager I wrote in C with XCB. Uses a BSP tree for layouts. Opinionated, but it fits how I work.

contact

Email: yazeed4n@gmail.com Discord: yazeed GitHub: yazeed1s