The duality of software production

February 17, 2022 on Eric Bower's blog

My ideal setup is shockingly similar to a web application itself: I have a front- and back-end computer for all personal software development. As I reflect on this, I find it humorous that I’ve aligned myself with a setup that resembles so closely to how I write web apps.

My back-end “server” is an old gaming rig that I have repurposed. It sits in my basement with an ethernet connection placed right next to my home network. It is connected to a UPC so brownouts don’t interrupt development. I have also changed a BIOS setting so my server will turn back on automatically whenever I lose power. All of this hardware helps keep my server online and always available.

The benefits of having a server for software development is multi-faceted:

The other really amazing feature of this setup is since I have a server to host my dev environment, it doesn’t matter what front-end I use, I’ll always pick up exactly where I left off.

It also makes long-running tasks easier to handle since I don’t have to worry about my computer going to sleep while it’s processing. For example, I can have a full ethereum node running in a tmux session and I don’t have to worry about it getting interrupted.

My front-end clients consist of a few machines. I have a framework laptop that I purchased late last year. It is a fantastic ultra thin laptop that I would highly recommend to anyone interested in a similar setup. I have my primary gaming rig that I’ll sometimes use when I don’t want to switch computers. I also have an iPad that I can be perfectly productive using with this setup.

In order to make this workflow feasible, I need to move as much of my software tools into the terminal.

I accomplish this goal with a couple of tools:

These tools are essentially all I need to be productive. The only thing missing is the browser which I have to run on my client machines.

Overall this setup has served me well for years and its benefits outweigh the initial setup.


Articles from blogs I read

Generated by openring

How to help improve SourceHut's design

SourceHut is a software development forge and it is designed with the software engineer’s needs first and foremost. The design prioritizes things like page speed, minimal distractions, and information-forward layouts. It does not prioritize aesthetics, and p…

via Blogs on Sourcehut October 13, 2022

In praise of ffmpeg

My last “In praise of” article covered qemu, a project founded by Fabrice Bellard, and today I want to take a look at another work by Bellard: ffmpeg. Bellard has a knack for building high-quality software which solves a problem so well that every other solu…

via Drew DeVault's blog October 12, 2022

Site Update: HLS support

Hi blog readers! It's time for a regular update on stuff I've gained expertise in frantically googled and hacked together so I can put it in front of your faces. I use YouTube as a video hosting service because it's largely predictable and it'…

via Xe's Blog October 11, 2022