Nik Spyratos

Hardware Essentialism: My weird setup

Table of Contents


Preface

This is a deep dive version of a Mastodon thread I've been writing on for the last two months. Read the thread for the short version!

This post is an exploration into adapting your hardware setup to your needs and environment. I took inspiration from this post I love, from Fabien Sanglard: The Beautiful Silent PC

Given the length this ended up with, this post is likely going to be a very specific nerd snipe. You either enjoy the concept or don't. I certainly hope you do! It's a very specific confluence of a lot of different ideas.


There's a concept I'd been tinkering with for a while, and finally got the chance to try it out. That concept is what I'm terming "Hardware Essentialism". It's a combination of Digital Minimalism and Greg McKeown's Essentialism. Essentially (heh): being purposeful in the hardware I use for computing, using what is necessary instead of nice, and working with the new instead of trying to do things the old way.

This kind of concept is heavily influenced by both your own needs & wants, and your environment. What I describe below is likely sub-optimal for most, but it works excellently for me. Here's a picture of the end product:

![[hardware-essentialism.jpeg]]

Your environment affects your hardware requirements

I got onto this train of thought for two main reasons: I wanted to redefine my relationship to technology, and I wanted to use less electricity.

On the first point, I have been feeling that it's time for a change for a while now. I've most of the last 15 years behind screens, and I want to balance things out with the real world more. More time with loved ones and out in the world. By "shrinking" my computing this way, I enhance the conscious use of it and encourage a harmony with the rest of my life.

On the second point, with South Africa's loadshedding crisis, it is becoming increasingly expensive to run computers off of backup power solutions. A lot of inverters and batteries are out of stock, and "all-in-one" portable power stations carry a premium.

I've preferred desktops for years, due to the better price:performance ratio compared to laptops. These days that carries two drawbacks: lack of portability, and high power use during intensive tasks (notably gaming).

Starting on the stepping stones

With all this in mind, I started stepping my way to where the setup is now. At first, I sold my desktop's GPU (RTX 3080) and CPU (Ryzen 5950X), and replaced them with a cheaper APU (Ryzen 5700G). This took the peak power draw from 480W to 150W - including with a 144hz 1440p monitor. Now I could run the desktop for about 2 hours (an entire loadshedding slot!) off of a small 250Wh battery. While it can't game nearly as many titles, for smaller indie games and Minecraft it handles just fine.

Of course, 2 hours isn't much when your power is being cut multiple times a day, or for 4 hour stretches. Additionally I was still spending a lot of time on one device as the "everything" station - entertainment, learning, work, socialisation.

My options were to either buy bigger batteries or move to a laptop. The former to me seems pointless because you can't outrun increasing electrical unavailability with more batteries. Eventually you'll run out of money or space, and in the event of a grid collapse there's really no amount of storage that will help.

That left moving to a laptop for work and general use. As a bonus it would be mobile with where I work & interact online. While most of the time I would be in my study, I'd still have more variety available and could travel with it.

Lads Looking at Laptops

There are two important issues with laptops: battery life, and approaching desktop level performance costs as much as a small car.

These days, the former has a solution in the form of Macbooks: the M1 and above CPU lines have amazing battery life even under decent workloads. This would lessen the need for backup power. No matter how you feel about Apple, nothing in the price range of an M1 Air comes close on the battery life and CPU performance.

That settles the plan then - move to an M1 Air. Sorted, right? Almost. Having done development work on an M1 Air, I'm know where it starts having performance issues, exacerbated by the lack of an internal fan to cool the chip. These days you can survive on 8GB of RAM and a good chunk of swap, but you definitely need cooling for a serious workload. This leans me more toward a Macbook Pro.

Side note: why not M2? I don't believe the upgrade makes a substantial difference for what I'd use the machine for, and finding an M1 retail or second hand would be cheaper.

Next, since I'm now moving off of a "Gaming PC", what will I use for gaming? These days macOS has a decent gaming catalog. However I have a large Steam library, which is largely incompatible with macOS, and would be a shame to give up. This is also why I have no interest in consoles - which also have the same power concerns as desktops. Perhaps aiming for a beefier laptop would solve this, but that leads us back into cost concerns and backsliding on the whole "redefining the relationship to technology" thing.

Enter the Steam Deck.

Gaming with the Steam Deck

The Steam Deck is a fascinating device that attempted to redefine the handheld gaming device market. It's effectively a laptop shaped like an oversized Gameboy, and packs impressive power for its size.

By its mobile nature, it also doesn't require much power. While its battery life isn't very impressive with larger games, it charges off of a 45W USB-C power supply. That can last quite a while on my 250Wh battery. As a happy coincidence this is another plus for a Macbook Pro, as its charger provides 67W and can charge the Deck nicely. Hooray for fewer cables!

In my research and testing, the Steam Deck can comfortably play AAA game titles released in the last 7 years at about 40 FPS and will last up to 2 hours on the battery in such games.

If you absolutely need a larger screen option, there is also Steam Link. You can effectively stream your game from your Deck to the laptop for the use of a bigger screen. In my testing it was okay but not great. I'm told Parsec performs much better, albeit forcing you into Desktop mode on the Deck in order to run it.

Putting it together - pros, cons, prices

Alright, so we have a plan. An M1 Macbook Pro and a Steam Deck. This unique combination provides me with loadshedding tolerance, electricity savings, portability, being able to use my extensive Steam library, and a separation of devices for different purposes: work & general use vs gaming.

However, this is not a cheaper setup than going with a single more powerful device; full retail price in South Africa for these two devices would easily cost R50,000 and above. Apple is always a premium, and the Deck has a huge import markup as it doesn't officially ship here. You'd really have to want this particular setup to spend that kind of money when there are better and cheaper alternatives.

My solution was to go into the second hand market. Things become a lot more competitive there, at the cost of lack of support and warranties. I managed to grab both the laptop and the Deck second hand for a total of R30,000. Factoring in the sale of my desktop and monitor as a "trade-in", the total cost came down to ~R17,000. For loadshedding-proof development work & AAA-capable gaming, I think that's an absolute steal.

Disclaimer: This setup is for very few people

The price point is looking great now, but I still wouldn't recommend this for most people. My finding this setup has been an almost perfect coincidence of the availability of all these devices and ideas; this setup was not possible even a year ago.

I've also been a Linux gamer since 2017, so I have extensive experience using Valve's Proton compatibility layer that the Steam Deck relies heavily on. That makes the device comfortable for me as a technical user.

This setup also involves a lot of compromises that I don't think a lot of people are willing to make. Notably on the gaming front I lose:

On the Macbook front I lose:

For me, the benefits are worth it.

Work with what you have, not against it

When you have hardware configurations like this, you are not only purposeful with the devices, but you also have to be purposeful with how you use them. You can't have 200 Chrome tabs and 10 random programs open. You especially have to be careful with the usual developer tooling that chows resources: Browsers, IDEs, containers, etc. Luckily there are some options in terms of optimisation and alternatives.

Cloud IDEs

One option I've investigated here is using a cloud-based development environment. The idea is to offload the intensive parts of your IDE to the cloud, so you can use almost any device as a thin client instead of only being able to use higher-end devices.

To that end, as a loyal Jetbrains customer, I looked at Jetbrains Gateway with GitPod. The pricing is pretty decent and I found it performant enough to do work on.

My ordinary PHPStorm RAM usage is just under 4GB. Usually two projects open at a time, and with some extensions installed. With Gateway, this fell down to 1.2GB.

Being in South Africa, the only real complaint I had is the noticeable latency given that the servers were hosted in Europe. If AWS CodeCatalyst were available in the Cape Town region (at the time I tested Gateway it was not), it would be a good alternative.

No monitors, no problem

By now you might be wondering, "how does this guy get anything done just using the laptop screen?"

In the spirit of working with what we have, give one screen life a try. Before I moved to this setup, I only used one monitor on my desktop for several years. In my opinion, the context switching & physical eye movement between monitors & windows takes the brain about as much time as it would when switching between virtual desktops. Unless you're doing a lot of metrics monitoring, you very likely don't need another screen.

As an added bonus, you now have a work environment setup that works in any location, instead of fiddling around with different layouts and settings every time you take a trip.

Phones can join the fun too!

For the last decade, our phones have had a lot of the same general usage capabilities as our laptops and desktops. Web browsing, document editing, video streaming, music playing. These days many people have their entire digital lives on their phones and nowhere else.

As a bit of a micro-optimisation, you can offload certain tasks from the laptop onto your phone. Notably, music streaming. It sounds like a simple use case, but once you start investigating how many system resources all these Electron apps and inefficient web apps use, you'll also want to figure out how to squeeze some more juice. Why does a JIRA kanban board need 600MB of RAM on Firefox? Why is Spotify desktop a glorified site wrapper, but the site version is broken?

Special mention: Samsung DeX

If you do retain a monitor in a scenario like this, there are also tools like Samsung Dex, which let you run the phone itself the same as a computer - hooked up to a monitor and using a mouse & keyboard to navigate.

For knowledge work that doesn't require in-depth technical work, I think this is actually a very cool one-stop solution and an even further evolution of this Hardware Essentialism. You just have a phone for all your work! Carry a small portable keyboard & mouse and hook up to any monitor at e.g. a coworking space.

Going smaller, for travel

The "even smaller" version here is to leave the peripherals at home: Keyboard & mouse don't travel with me, and instead of my headphones I take some wireless earbuds (personal choice: Jabra Elite 7 Pro). For some this may be obvious, but I still wanted to mention it.

What now?

I've been running this setup for around 2 months now. After finally selling off the monitor & desktop, it is now in a stable position as my primary workstation. I don't feel any guilt trips about having expensive-yet-unused PC hardware. I can work, create & consume throughout loadshedding to my heart's delight. I also have far fewer cables to deal with.

It sounds almost comical to go from a liquid cooled 64GB RAM 2TB big rig to a 8GB 256GB sleek machine and a big handheld. But for the first time in 4 years, I feel settled. The "disease of more" is at bay, for now.


If you enjoyed this piece, consider subscribing for more here.

PS.

The keyboard is a Lily58 Pro assembled by the masters at Keyn. It uses silent mechanical brown switches and Hawaii + Beach themed keycaps.

Update 04/10/2023

In this quest of optimising this setup for my needs, I've also transitioned to using a Logitech MX Anywhere 3 and an MX Keys Mini for my peripherals. I wanted solid build quality and wireless capability to more easily switch devices between my laptop, Deck, and even my phone! Here's the new setup:

![[hardware essentialism v2.png]]

#computers #hardware #minimalism #niksoftware