The battle station, in all its glory.

My Complete Desk Setup as a Learning Programmer

This is the hardware I use while going fully immersive into full stack JavaScript and other programming languages.

Step one of my software engineering bootcamp starts today with pre-course training and I spent the last couple weeks perfecting my workspace.

I’m obsessed with a desk setup that’s just right and, while I already had some of this organized for my gaming PC, I was able to build a dual boot system that shares the same monitors and peripherals.

This is what’s on my desk for maximum productivity (and a little fun).

Apple M1 Mac Mini

Via Techradar

I had to adopt back to Mac during an awkward time. My bootcamp strongly suggested using Mac as a developers platform, so I had to make a choice: tried and true Intel or the brand new Apple Silicon M1?

The early reviews were overwhelmingly positive so I went M1 and I’m glad I did. This Mac mini is the base model, 8GB ram variant, and it screams. Most of the software I use (I’ll cover that in a future article) has already been optimized for the M1 with the rest on the way. It’s freaky how much this thing shines.

Update: It turns out the M1 is not quite ready for a few developer tools just yet, so I switched to an Intel Mac Mini…but I’ll be back.

Keychron K8 Keyboard

Via Kickstarter

I needed a keyboard and mouse that could switch easily between Mac and PC. That means they had to be wireless with switches to toggle between Bluetooth connections.

I love the feel of mechanical keyboards. Marques Brownlee recommended a smaller version of the K8 during his 2020 setup tour, but I wanted the tenkeyless layout, so I ordered the K8 with the aluminum frame, full RGB lighting, and Gateron brown switches. The initial sound can be a little hollow — the bottom case has quite a bit of empty space — but there’s a easy foam hack you can do to create a more solid sound when the keys bottom out.

The K8 (and I assume the other Keychron models as well) can toggle between three Bluetooth connections, operate over USB-C (this is how it charges too), and has a Windows/Mac switch so that “Control” works properly in Windows even though the bottom keycaps are arranged for Mac.

Update 2: To give my wife a break from the clicky clacky (we both work from home in a small apartment), I switched to the Logitech MX Keys for Mac. It was going to be temporary but the board is really growing on me.

Logitech MX Master 3 Mouse

Via Techcrunch

Another MKBHD recommendation, the MX Master 3 is loaded with customizable gestures, has a great ergonomic design, and can also toggle between three Bluetooth connections. And unlike the Apple Magic Mouse, the USB-C charging port is at the front — not the bottom — so you can continue to use the MX Master 3 while it charges.

Pro tip: The bluetooth connection works perfectly on Windows (for me) but is terrible and laggy on the Mac. Use the included USB dongle when pairing with an Apple device.

Razer Keyboard Wrist Rest Pro

Via Razer

I used this wrist rest with my Razer BlackWidow Chroma keyboard when my setup was PC-only. It’s even more necessary now than before because of the Keychron K8’s extra height, but I don’t mind. The soft gel material in the Razer Wrist Rest Pro is extremely comfortable and good for hours of typing. The rest is a bit wider than the K8, which gives my wrists extra surface area when reaching for keys at the edge of the board.

Pecham Large Mouse Pad

It’s a big ole mousepad I found on Amazon — brand doesn’t matter here — I just wanted something to cover the entire area of the mouse and keyboard (though I really have my eye on this topographical mousepad that’s always sold out).

Dell 27" 1440p Display

Another gaming PC upgrade, the S2719DGF checks all the boxes. It’s 1440p resolution (I don’t really need 4k), 144Hz refresh rate (a must for games), has thin sleek bezels, and amazing color. That last one is something I didn’t appreciate until I compared it to my old monitor.

Acer 24" 1080p Display

The GN246HL was a cheap purchase when I built my PC in 2017. It had a high refresh rate and okay-enough colors. It’s now vertically mounted next to my Dell as a second display and serves its purpose.

Mount-It! Dual Monitor Desk Mount

Monitor arms range from cheap and flimsy to over-engineered and overpriced. Mount-It! has a lot of options that run right down the middle. I found one that would put my primary display front and center with the vertical secondary to its right while still allowing the desk to push up against the wall.

You can see in the picture up top the base is mounted to the right of the desk which is actually perfect. It frees up the center for small items I can keep in front of me.

Logitech C920s Webcam

Via Logitech

The Logitch C920s (the “s” is probably for “security” because it has a plastic privacy shutter) was a lockdown work-from-home purchase in March. Now, it’s a classroom camera. The image isn’t “mega Twitch streamer quality” but it’s leagues better than anything you’ll get from a laptop.

I use my AirPods for a microphone input during Zoom calls, but the C920s (and the standard C920) has a dual stereo microphone next to the camera.

Apple AirPods Pro


I freaking love my AirPods Pro (it’s weird to say “Pro” as singular, though). As a guy with glasses, even the most comfortable over-the-ear headphones become uncomfortable over time. The AirPods Pro, however, are Crunchwrap Supreme (they’re good to go) for all-day use.

They sound better than standard AirPods, the silicon tips make them more comfortable, and the noise cancellation and pass-through modes make them perfect for both concentrating on work (drowning out white noise) and video calls (so you can hear yourself talk). The price is steep — $249 — but you can always find a deal for near, or even under, $200.

IKEA Alex Drawer

The IKEA desk hack with Alex drawers is probably the most popular desk setup on the internet. I’m not going for that, exactly (but maybe in the future I’ll buy a second and jump on the bandwagon).

I like the gray because it reminds me of an old school filing cabinet. It has plenty of drawer space for my stuff (notebooks, pens, some cables, my PS4 controller, gaming mouse and keyboard, etc.) and a spot for my calathea plant. I’m told the plant doesn’t need sunlight to survive, just like me until this coding bootcamp is over.

Other Stuff

  • IKEA LED Desk Lamp (double-sided taped down so I can move the angle with one hand)
  • Amazon Echo Dot (3rd Gen)
  • Mophie Wireless Charging Pad
  • Western Digital 1TB External HDD (ancient! I bought this in like 2006 when 1TB was a lot)
  • Saguaro Cactus Coaster
  • Microfiber Cloth
  • Current Books: The Pragmatic Programmer by Andrew Hunt/David Thomas, and Algorithms to Live By by Brian Christian/Tom Griffiths
  • Nest Thermostat (unrelated to programming, it’s just in the picture)

BONUS: PC Tower (surnamed Battlestar 925)

We can’t leave out the ole gal. Just because my bootcamp is staring doesn’t mean I’m unplugging Battlestar 925 (for 9 to 5 Hiker). I built this in 2017 and it’s still my gaming and editing rig (Photoshop, Lightroom, Premiere, etc).

It’s gone through some upgrades but even after 3+ years, it holds up great and will play AAA games on 1440p at high settings. You can see an old parts list of the early build here.

None of this will make me a better programmer, but these are the tools that will help me be the most comfortable and productive while I learn at what will be an extremely accelerated pace.

Next time, I’ll list the software I use for maximum productivity on my Mac mini.

Arizona Adventurer | Writer | 9 to 5 Hiker

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store