Software

Operating System
Though time-consuming to set up and annoying to troubleshoot, I prefer Linux for its customizability, performance, centralized package management, and lack of telemetry. I use Debian since its mature release cycle alleviates the instability of rolling-release distros.

While it's not necessary for one to use Linux to be an effective software engineer, it's still of importance to have at least some familiarity with the command-line and GNU system utilities. I've come across people who claim to love computers and programming, yet have an aversion to anything Linux-related. Oftentimes, it's because of the association it has with weird nerds and the "TOXIC LINUX COMMUNITY". In practice, this doesn't matter because you don't need to interact with these people, given the wealth of online documentation and old forum posts. And trust me, as long as you don't make something as trivial as an operating system your entire personality, you won't be seen as one either.

If you don't want to bother because your "time is just too valuable", I think you're failing to consider the benefits that such an endeavor would bring. Setting up your own system, learning how to use the command-line, and using text-based applications shifts you away from relying on big colorful GUI buttons to a vastly more efficient keyboard-driven approach, as well as teaching you about how operating systems work on a lower level than Windows. Command line programs also tend to be more powerful than GUI ones, allowing you to perform complex operations requiring hundreds of clicks with only a few commands. I agree that initially setting up a Linux system is annoying, but that can be mitigated by a config system like Ansible. With the scripts I spent maybe 2-3 hours writing over the summer, I can automatically install and configure everything on base Debian with a single command

That being said, I don't think Linux is meant for non-technical people who just want to play games and edit Word documents. They'll get frustrated when they inevitably run into an issue requiring some technical aptitude to solve, and flood the online forums with their angry rants. There are "noob friendly" distros out there, but in my experience they're impossible to troubleshoot when something goes wrong since they install so much stuff you don't know about, and provide their own muddled configurations.

Window Manager
The first notable WM I used was FVWM, a retro CDE-style floater. I eventually got sick of manually managing windows, and switched to DWM. For a while I ran SpectrWM since it used .Xresources by default, but went back to DWM after learning how to patch it. Speaking of patches,I'm using the following:

I use rofi with the dmenu theme as my launcher, and a custom Bash script as my status bar.

Terminal Emulator
I used urxvt for a while since it was lightweight and did transparency, but wanted something with a lower input latency and support for multiple fonts. Mlterm seemed to fit the bill, except the config system sucked and it only did flickery "pseudo-transparency". I tried ST a couple times, but wrote it off since my patch operations kept failing.

After watching a video on the right way to patch it, I reinstalled ST and converted. I'm not a fan of Suckless' compilation-only, "reverse-bloat" paradigm, but at least it didn't take long to configure. I'm using the following patches:

Shell
I long-knew Zsh was the best Linux shell, but hadn't bothered switching from Bash until Summer 2023. Very glad I did. It supports powerful command completion, Vim bindings, and a large plugin library. I'm using it with the following plugins:

That's right, no bloated Oh-My-Zsh nonsense. Just know the default settings are terrible, so a proper config file is required.

Text Editor
My relationship with Vim is similar to Zsh; I knew it was the best option, but didn't feel like switching. For text editing, I used a combination of VS Code and Nano. When I switched to Zsh, I uninstalled them and decided to only rely on Neovim. It quickly imprinted on me. Modal editing is so efficient, I can't ever go back. To be even more productive, I'm using the following plugins:

My goal is to use it as an "everything" editor, presupposing IDE features. I get the benefits of a proper IDE, with the interface of Vim. Even if you end up using something else, knowing the "Vim paradigm" keeps you away from the mouse and makes you a more efficient user.

File Manager
I prefer to use the command-line over a TUI/GUI file manager; they feel unnecessary to me. Why use a separate piece of software when I can cd/ls wherever I want? Some of them support cool things like framebuffer images, but so far Feh --thumbnail has worked fine for that.

Web Browser
Vivaldi is the best browser, and more people should be using it. It's Chromium-based, but that that comes with the advantage of wider plugin/website compatibility. It has lots of togglable features, many of which (hide address bar, vertical tabs) I've come to rely on . It also comes with an excellent ad blocker, email client, scheduler, and online sync function- all of which can be disabled if you'd like.

Media Players
I previously used VLC for offline media, but switched mpv. Works great, no complaints; definitely uses less resources. For music, I just use the Spotify client (Guess I'm a slave to "the man").

Package Managers
I like apt, though I'd surely warm up to pacman's syntax after a while. By the way, you should alias apt-get to apt since it has a status bar. I also use Flatpak for garbage GUI apps like Steam and Signal I don't want defiling my install with GNOME dependencies.

Hardware

Computers
My main computer is a ThinkPad P51, which I wrote about here. It's a great machine; powerful CPU and GPU, excellent keyboard, modular, durable, good Linux compatibility, great thermals, and surprisingly acceptable battery life with tlp. It also only costed me $50. I got a dock for it, which is plugged into a monitor at my desk. Despite being more powerful, my desktop has been superseded by the ThinkPad. Don't game anymore, so I don't need it.

Peripherals
I use an SK-8845 UltraNav keyboard since I like the layout, and it comes with a TrackPoint. It's decent, though the shift key is flaky and the TrackPoint is slow. I also switched from uncomfortable optical mice to a (much better) Kensington Orbit Trackball. It includes a scroll ring, and allows you to middle click with both buttons. Static friction makes it less precise than an optical mouse, but I resort to the TrackPoint when that's an issue.

Mobile Devices
I think the modern fixation with cell phones is stupid, but I do own an iPhone SE 3 for practical purposes. It's small, well built, and seems to have great performance. Most of the time, though, it sits on my desk in a dead/dying state with the ringer turned off. If I were to look at my most-used applications, the top three would probably be "Phone", "Messages", and "Signal". I guess that says a lot. I also own an iPad 9 which I use for note-taking, though not much else.

"But Apple devices are all locked down and stuff!", you say. You're right- I could be using a rooted Android running GrapheneOS. However, I don't use mobile devices seriously enough to bother customizing them as I would my laptop. I don't care about running emulators on my phone since it only gets used for a few tasks. Maybe one day I'll see the light and switch my entire setup. Until then, probably not.

Epic Gaming Machines
I don't really play video games (produces nothing, promotes sloth), but I have a small collection of SNES and GameCube stuff. The former is shelf decoration, but the latter gets used with a Sony CRT whenever friends are over. When I do play games, they're usually open-source simulators/rogue-likes such as OpenTTD, CDDA, and DCSS.

Audio Given my love of music, having a nice stereo system is a given. For $250 I was able to buy a pair of Sony SSCS5 speakers and a used Sony STR-DH590 5.2 reciever. Given its modest price, the audio quality is incredible. Definitely crushes any pair of headphones I've ever used. Could go for an even better unit, but beyond getting a sub I've reached the point of diminishing returns.

I also own a pair of headphones: some Sony WH-CH700Ns I've had since 2019. They sound good enough, and are wireless. The noise cancelling sucks, but it doesn't matter since I hate silence anyway. The ear pads split after a few years, but were quick to replace.

Other Things

Clothing
I was into menswear at one point, but have since stopped caring. I have enough clothes, and would rather save my money than dump it into the fast-fashion machine. That said, I generally like vintage American-styled clothing. Think trucker jackets, flannels, high-waisted work pants, polos, Hawaiian shirts, wing-tipped shoes, and Converse sneakers. There's nothing wrong with liking clothes, but it's a slippery-slope to vanity and consumerism.