The people who use our boards.

352 interviews since 2018

Victoria Tsai

Hazptr Stan; Systems Appreciator

Who are you, and what do you do? What do you like to do outside of work?

Hi! I’m Victoria. I currently do embedded development at an autonomous vehicle startup. Prior to pivoting to firmware, I spent a few years working on distributed systems, such as a strongly consistent, distributed key-value store where I mostly focused on garbage collection. I’ve also contributed to various miscellany around scheduling and dispatch in a distributed compute library for parallelizing Python workloads, a task that until recently had been impossible to do within the language itself, due to the presence of the global interpreter lock. I am really excited to have once written Haskell in an internship, and to notice later that Simon Marlow touched a file I had worked on, for marshalling chained byte buffers between Haskell and C++.

Outside of computer stuff, I primarily figure skate, but I do like to read, write, and walk up mountains when I get the chance. In general, I enjoy experiencing different cultures (especially the mundane), gazing at nature, gazing at buildings, and walking a few 10K steps a day— all, or perhaps the only, things I do when I travel. At rest, I demonstrate surprising interest in tea, language, architecture, and Slavic culture.

Growing up, our household consisted exclusively of Taiwanese hardware. My family has since relaxed that constraint (in any case, my parents no longer have jurisdiction over my hardware), but I still appreciate that ZSA makes your keyboards in Taiwan. Coincidentally, another Taiwanese-American friend of mine who also grew up in a Taiwanese-hardware-only household was the first to bring the Moonlander to my attention. Maybe she will appear in a future interview!

Victoria Tsai's setup from above
Reading, Kandinsky, and a cup of tea: This photo represents Victoria's indoor interests in addition to her work-at-home space

What hardware do you use?

Waking up every day to the prospect of using my Moonlander is so exciting that I keep one at my office and another at home, of different colors. To the joint dismay of everyone in my life, I recently and completely superfluously purchased a curved Alienware 32 4K OLED monitor which I now use at home, occasionally with a vertical Dell UltraSharp 27 QHD on the side. Most of the time, the machine ends up being the ThinkPad X1 I requested for work, though sometimes it is my personal Dell XPS 13 (my next laptop purchase will absolutely be a ThinkPad), or the Lego project downstairs that I spec’d out with a Threadripper, dual RTX 3090s + NVLink, and an obscene quantity of RAM and NVMe, to remain undisclosed. I also bought her a Noctua fan.

Victoria Tsai in profile, building a PC
Victoria builds a PC

At the office, I also use dual monitors with the side monitor vertical, connected to a company-provided desktop, as well as whatever board and JTAG debugger I’m currently developing on. I can’t speak to any particular conscious choice of mouse: Depending on the weather, I may reach for the trackpad, the trackpoint, the Moonlander mouse layer, or the physical mouse lying around my office desk, which I suspect to be Logitech. In case of gaming, I keep a single wireless Xbox controller to fight over at home. All my desks are some form of sit-stand.

Victoria Tsai's desk, side view, closer up
An attractive sit-stand desk marries form to function

I do own a decrepit set of Bose 700s for audio, and also for cancelling the noise of my clicky keys.

Victoria Tsai's PC
And now for the software to put a PC through its paces

And what software?

My default distro and window manager are Fedora and i3 + dmenu, with urxvt as terminal and VS Code with Vim keybindings as editor, plus clangd, GitLens, and Copilot among the more useful extensions. For shell, I stick with Zsh and its default emacs bindings, then slap on fzf, zsh-git-prompt, and zsh-syntax-highlighting. Mosh + tmux remain invaluable for remoting, and of course there is always GDB for debugging and Git for version control. The browser is any Chromium-like with the Vimium, uBlock, and password manager plugins. I have a few.

I’m very curious about NixOS, but I haven’t gotten around to playing with it. I used to use Arch in undergrad, but it became too much of a hassle at the most inconvenient times. You’ll notice a general theme in my choices of highly configurable tools that work reasonably well out of the box. I do have an XMonad configuration from an experimental few weeks; maybe someday I’ll go back. I will probably switch to Sway when people stop claiming that Wayland breaks everything. Regarding llm-integrated editors: I should eventually try Cursor, but I don’t feel the need for it in my current work.

My notes are a combination of Obsidian and Google Keep.

What’s your keyboard setup like? Do you use a custom layout or custom keycaps?

I just use the default blank keycaps on both Moonlanders. For aesthetic reasons, I’ve fully swapped the caps between my two boards on the right half, and half-swapped them in a checkerboard pattern on the left. As cool as tenting looks, my hands work better with the thumb clusters tilted up and infrequently used functionality mapped to the red keys. There are a few other keys like the bottom-row pinky that I generally don’t map important keys to because I find them hard to reach. My layout includes an unreachable reference layer color-coded by difficulty to reach on one side, and relative actuation force bucket on the other (inversely correlated with reachability). Unsurprisingly, the set of most reachable keys looks a lot like a Voyager.

Victoria Tsai's keyboards
Having two Moonlanders lets Victoria create a checkerboard effect without buying extra keycaps

My favorite switch for limited use is still the Kailh Box Navy, but for the amount of time that I spend typing, I’ve found the Box Jade much more sustainable, with Cherry Browns on the alphabetic keys to rate-limit clicking. I would say that the fun of mixed switches outweighs the inconvenience of uneven feedback.

Out of a sense of self-preservation, masked as consideration for my colleagues, I’ve outfitted the office Moonlander with mostly Gateron Silent Browns and a few Kailh Silvers.

Layout-wise, I’ve largely stuck to the standard QWERTY on the base layer to maintain compatibility with debugging on other people’s machines, or working on my laptop when I take it around. I also only know how to touch-type Cyrillic in QWERTY, so if I changed the alpha layout too much, I would have to add another layer just for Russian, which I don’t use frequently enough to justify relearning. I would also have to remap the Vim navigation-derived shortcuts to the new home row in every single software config I have, which wouldn’t actually take that long, but would be annoying by virtue of necessarily missing one or two configs the first iteration through, and having to special case for whether an external keyboard is even connected.

As the layout evolves, I’ve converged on a few basic principles to abide by. I already mentioned assigning cold functionality to the awkward or distant keys. It obviously also makes sense to optimize for average keypresses in my typical workflow. Since there aren’t that many keys on a keyboard and switching to another layer already requires one keypress, two keypresses is generally the best you can do. But with the right assignment of modifiers, layer switches, macros, and double-tap and hold mappings, two is generally the worst you need to do. For instance, as of the day I was informed of this interview, I have macros for vim write, vim write and quit, and gdb tui toggle, while my tmux prefix is a base-layer hold.

Because I often carry laptops without an external keyboard, I try to keep a lot of shortcuts and mappings on the computer rather than the keyboard. For instance, I don’t really make use of combos on Oryx because I would like to assign them in a keyboard-independent way.

Due to severe LED allergy, I keep the base layer dark with a purple Reactive Cross animation, and apply colors for semantic highlighting on the remaining layers. All photos I’ve furnished with backlit keyboards are staged. The only other animations I’ve enabled are Typing Heatmap, Reactive Nexus, and Breathing.

What would be your dream setup?

At this point I’m the limiting factor, not my setup. But I will admit to eyeing the Voyager.

Victoria Tsai building a PC
Thanks, Victoria! But if you build your own setup, and your setup doesn't limit your dreams, then doesn't that mean your dreams have no limits?

© 2025 ZSA Technology Labs, Inc.