My 2023 Setup

25 Aug 2023

I always enjoy looking at other how other people have their workstations set up, from their battlestation to their hacked-together Linux setup, and more detailed looks at what people use. I’ve been pretty much settled on the same setup for a while now, and this post breaks it down.


I’ve got an AMD processor and some graphics card. I bought it off-the shelf and to be honest my days of hand-selecting individual components for the PC itself is mostly done. I did select an M2 drive for added speed, and later added a large SATA drive for more storage.

That’s the least interesting part of the hardware for me. The biggest part is the monitor setup - one Dell monitor in landscape and another in portrait to the left. This gives me a normal screen for browsing and standard applications, and a second which is purely for viewing code. Long documents work really well on a portrait orientation and I find it perfect for coding.

I’ve got a Keychron K8 Pro QMK/VIA which I’d anticipated tweaking with QMK, but that’s not proven necessary. Its slinky RGB backlighting and satisfying mechanical action’s enough for me. My other method of input is a Logitech trackball that’s been a stalwart of my setup since I began experiencing RSI from a mouse. I don’t use any of its additional buttons and aside from occasional clogging, it’s great.

I’ve recently bought a Sony WH-1000XM5 headset to replace Airpods Pro which had a load of noise when using noise canceling, ironically. This headset is fine, and comfortable, and does have a good feature where it will connect to both phone and desktop simultaneously.

Other than that, I have a small light above the desk, a deskpad from Ikea which has some cartoon animals on, and a docking station to charge my watch and phone. I’ve also got a Logitech Brio Ultra webcam.


I currently run EndeavorOS which is based on Arch. I settled on Arch varients after a brief foray into NixOS, since I like the simplicity. When I installed Endeavor, I picked the i3 install, which is my preferred window manager.

Why? Because I enjoy having a low-overhead way of creating “workspaces” for various tasks. Workspaces 1-5 are on the left monitor for browsing (workspace 1), messaging (2), terminals (3); workspaces 6-9 are on the right monitor for various code windows. There’s no animation and everything’s lightning-fast and exactly where I put it. I also use the scratchpad for my daily todo list.

Other software

VSCode for coding, with ESLint+Prettier for formatting. The Remote Development extensions from Microsoft come in handy when I’m working on Ruby or C#. DBeaver for database management - the UI is awful but powerful. I’m tracking TablePlus, which used to be my go-to on Mac but the Linux version is still in development. I use GMail in tabbed windows on workspace 2 for email, since I haven’t found a client I actually like. Beeper is my messaging solution, combining iMessage, Signal Facebook Messenger and Slack into one UI.

Notes & Conclusion

I do have a Windows 10 partition which I use sometimes (mainly for gaming), but it is inferior to my Linux setup in every way. If there was a way to use NixOS or something similar to have my configuration as code, I’d use that, but all of the options have various weaknesses, so I tend to keep my configuration lightweight and not worry about wiping it.

There’s not a great deal of new and shiny in this setup. It works, it works fast, and it’s easy to put back together when something fails.

Feedback or questions on this post? Create an issue on GitHub.