Speed and Efficiency. I was once asked: “You type very fast, but I often sense that your typing speed is unable to keep up with the speed of your thoughts - do you think this is true?”, and that is certainly true when it comes to working towards something I want to achieve. Beyond that, I hate slow, tedious, repetitive tasks. I hate wasting my time on tools when I could be wasting my time figuring out ways to reduce wasting my time on tools. I hate when a situation is high friction when it could easily be low friction. That may apply to things such as reading out loud as opposed to reading silently or coordinating a time to meet when half the group is early and the other half late, but it might also go for making progress towards a project or quickly editing code.
This also means performance over the long term as opposed to short term - wasting investing hours learning a tool that will go on to save me time is better than continuing down the path of using something slower. To revise a statement said about myself: yes, I think long term, but only about things I actually care about.
Minimal but personal. I’m not sure if minimalism elsewhere led to pursuing minimalism here, or if inherently minimal programs I’ve adopted over time led me to strive for minimalism elsewhere, but the idea of being minimal somehow stuck. Additionally, I want whatever I have to be just at least slightly personal - I might be particular about some random configurations here and there.
Secure and Private, to a point. I could say “um ackshually my threat model is X and Y and not Z”, but generally, it’s just the slightly self-centered view of not getting my data harvested by big-box Corporate America and not having unsavory individuals know too much information about me. However, security and inconvenience are decently positively correlated, and anything to an extreme generally is not only impractical and inconvenient but also likely not too good for (at least my) general well-being. Thus I’ll err on the side of more privacy, but I won’t do anything like cut people off if they use a less-secure way of communication or go out of my way to find the most secure but impractical program for some purpose (though I’d appreciate it more people used Signal).
Core
Operating System: Arch Linux.
I also do have Windows (10, god forbid anyone has Windows 11) and Ubuntu, but I never use them anymore. After the summer 2022 incident where my hard drive decided it was going to quit working and took Windows down with it, I no longer trust Windows not to have a meltdown over something small (do not let anyone I’ve worked with at Microsoft see this).
Shortly after the incident I switched to Ubuntu. Ubuntu and I go way back - I have used Ubuntu in elementary school, when my dad switched our home PC to Ubuntu. I also ran some WSL in Ubuntu to actually get neovim working for me prior to the incident, and I had grown familiar with the command line. Since then, I have explored more and gone far off the deep end into Arch, and Ubuntu is just there for when I have to attend the occasional Zoom meeting.
Screen Lock: gtklock. I used to have swaylock(-effects), but somehow configuring that was a nightmare, while it was a breeze to set up gtklock. That being said, I probably have around 1.5 more years of RTFM Linux knowledge under my belt, so maybe that helped a bit.
I had some point in time where I daily drove qutebrowser, but now I find myself using it a lot less and less. The more comprehensive hinting is still something I’m fond of, but at this point it’s the only thing I’m really clinging on to besides just “better/more reliable vim controls”. It’s not always using the latest Chrome version which can cause some issues, and somehow signing in on Slack just doesn’t work very well. That being said, I still use it for a handful of tasks I’d rather not offload to my questionably-modded Firefox, namely ordering items off of Amazon, resolving regrade requests on Gradescope, and other similar tasks which rely on extensive use of search engines, hinting, or consistent vim motions.
Firefox is used the bulk of the time for the rest of my browsing, but equipped with Narsil’s user.js and Cascade. Some other add-ons I’ve been using: AdNauseum, Vimium, and the whole suite of add-ons for YouTube (Video Speed Controller, Unhook, SponsorBlock, DeArrow, BlockTube, Return YouTube Dislike, in order of most to least useful). As you may or may not be able to tell, I may or may not have had a problem with watching too much YouTube.
Utilities
As you’ll be able to tell, a lot of these are “works in progress” - I have a specific setup I would like to work with, but there’s usually a gap in skill/usage of the tool and limitations.
File Manager: lf, which I managed to procrastinate switching from Nautilus for forever only to realize that I absolutely love using lf.
Music/Audio Player: I’ve started to adopt mpd/ncmpcpp as it makes a lot more sense given my music listening habits (short, low variance playlists), though I still use Spotify for convenience and music discovery. insert normal distribution meme about using streaming services
Video Player: mpv, but I pretty much only use it for viewing very short videos. For streaming longer videos, YouTube is still my go-to, as mpv can be hard to stream at faster watch speeds.
RSS Reader: newsboat. I must say this is quite useful for looking through blogs and the like I’m interested in, or the occasional Substack I want to snoop through but don’t want to subscribe to. It’s not as great when it comes to YouTube, though, since it queries the most recent videos and not previous videos, which are usually more of interest to me.
Code Editor: It should go without saying that I am still very much a Neovim shill. I have used the open source version of VSCode on Arch repos, but more and more I found myself gravitating back to Neovim. Some of the major projects I’ve done on Neovim include all of the code-intensive projects for my machine structures class and computer security class, as well as data-intensive personal projects and my forecasting class final project. If I were to take operating systems (which I won’t), I would at least try to use Neovim.
Writing Documents: (Lua)LaTeX for math/heavy documents, and Markdown for most everything else - mostly done on Neovim (with a lot of heavy lifting done by VimTeX and LuaSnip) and a select subset on Obsidian. The latter is useful when I want to sit down and just write things out with minimal editing or work on something training-related.
PDF Annotator/Whiteboard: Xournal++, sometimes in conjunction with a Wacom writing tablet.
PDF Viewer: Sioyek, though laziness also permits me to use Firefox whenever needed.
Image Viewer: icat within kitty for the most part, but also imv.
Communication: beyond Slack (and to an extent, Discord and Instagram) as a necessary evil to communicate, I have started using Texts, which integrates all three main apps I use - Discord, Instagram, and Signal.
Services
Email: ProtonMail. Decided I needed a new personal email to consolidate everything after realizing that my Gmail accounts I used in middle and high school are just glorified garbage cans with a bunch of random mailing lists and accounts for random things I’ve created over the years. I heard good things about ProtonMail from friends and the internet, and thus I made the switch to ProtonMail. As an unexpected plus, Sieve filters are probably the best for email filtering I’ve seen.
Password Manager: Bitwarden came installed with Librewolf, and after moving around relevant accounts to my ProtonMail addresses, I also decided to update some older passwords which I was constantly forgetting, and decided to give Bitwarden a try. It works great even on mobile, though I’m considering using Pass as a more command-line friendly (though there is a Bitwarden CLI!) and simple alternative if there was a good mobile app solution.
More on the Bitwarden CLI: the official CLI is frankly not very convenient (but I guess it is at least a little bit more secure) in the sense that it requires your master password every time - at least I haven’t yet figured out how to set that I have a session active. But before I could, I realized that trying to get a password wasn’t yielding the correct behavior, and then later looking for documentation led me to find rofi-rbw and rbw, which works far better and saves me from reinventing the wheel with a rofi password selector.
Hardware
Previous Daily Driver Laptops up to August 2024
Unfortunately, the Gigabyte’s battery renders it a bit impractical, and the T430’s display broke (again). As a result, I’ve been moving towards daily driving my P5x laptops. Still, the stories behind my previous daily drivers are pretty interesting, so I’ve left them here below.
Semi-Retired Laptop I: Gigabyte U4 UD. I got this after my previous laptop broke in summer 2022, and I absolutely love it. I hope to continue using this for a lifetime (though if you’re seeing where this text is, I clearly did not - its ever-shrinking battery life got the better of it). It’s light and decently powerful, and it has served me through my undergraduate career. I am so glad I did not pursue the topic of a MacBook further and got this instead, as it was really what kicked off my interest in Linux (though I’m still missing out on the iMessage wave *insert copium here*).
Semi-Retired Laptop II: Thinkpad T430 (TheseusPad). In contrast to the portability of the Gigabyte, the Thinkpad is durable - it’s a tank which has withstood over a decade’s use. It’s an old system I got and managed to spend more on upgrades (CPU/heatsink, upgraded storage/memory, upgraded display, etc. - not to mention the motherboard that blew up that had to be replaced) such that the total somehow manages to exceed what I paid for the Gigabyte laptop.
Laptop(s): Thinkpad P52 and P53. While the P52 works out of the box (and that’s what I’m using as of writing this), the P53 has better specs but lacks a functional touchpad. Instead of fixing it, I’ll take a page from this article and learn to go without a mouse. I might as well also throw in being able to functionally use Dvorak in if I’m spending so much time learning to adjust how I use a computer.
Hard Drives: SK Hynix Gold P31, and I’ve heard recommendations for SK Hynix SSDs in general. I’ll default to the following comments (not from me) to better explain why.
Excellent power efficiency on both drives, more so on the P31. Sky-high random I/O ratings. P31 is damn near impossible to overheat, P41 won’t throttle in a typical desktop even with no heatsink or airflow. Decent pricing, too. Excellent, cool-running all-rounder that’s right up there with flagship Samsung drives in terms of performance while being way more efficient.
Somewhat Unused Desktops: Dell Optiplex 7060, Mac Mini - the Optiplex is for a few personal projects I haven’t yet gotten to and the Mac Mini is to run BlueBubbles if I ever have the motivation or need to (which I currently don’t and likely won’t in the future).
Peripherals: the hopes is that these should last me for life - I’ve used both for at least a year (admittedly, the mouse more so than the keyboards) and they’re holding up great.
Keyboard: HHKB Hybrid Type-S, though I also have a Varmilo VA87M. The Varmilo used to be the absolute center of my life for a while until one of the keys ended up just not working for a while. I thought it might have something to do with the switches (which are not hot-swappable), so I got permission to use the soldering lab in the EE building, but it turns out that the day I decided to fix the issues, everything started working again. As for the HHKB, it’s a legend for long typing sessions, but I just can’t get past a few of the quirks it has, especially trying to get myself to use the Ctrl key as intended. This did get better after I mistakenly remapped Ctrl to Caps Lock on Windows at work once though, so maybe the HHKB will make a return.
Mouse: Logitech MX Master. One of my first big upgrades I got after my previous mouse (which I don’t remember the name of) got lost. The ability to support multiple devices and have horizontal scroll are huge bonuses I never really noticed until I started using this mouse.
I also have a Google Pixel with GrapheneOS and an assortment of Garmin devices (cycling computer and smartwatch, to name a few) for cycling and running.
Things I No Longer Use
In case I ever stop using something.
Ubuntu: Zoom works fine on the P5x running Arch. Maybe the extra 100+GB of RAM and Xeon/i9 processors do actually make a difference. Also, I’ve not heard that many good things about Ubuntu recently. Hoping one day I’ll be able to set up Arch on the family PC to go full circle.
qutebrowser: great browser, but there’s never really a need for multiple browsers except the odd time some Wi-Fi network I connect to has the sign-in page on a browser tab and Firefox decides to die. Beyond that, qutebrowser’s main weaknesses were a lack of compatibility for a number of sites and not many ways to extend the browser with add-ons (though this has become less of an issue as I’ve started to become less of a YouTube shill and thus eliminated a majority of the add-ons I use), and its main strength in better Vim controls has potential to be matched by SurfingKeys. Thus, when I got the P5x laptops, I stopped using qutebrowser.
My whatever smartphone: I bit the bullet and tried out GrapheneOS. Also, my phone was running out of storage (though this is a scam since a decent fraction of storage is already being eaten up by the system and apps that can’t be removed), and waiting for 128GB to be the new basic model that retails for Mickey money was going to take too long. Instead of moving my files on a weekly basis, I decided to get a Pixel (8) I’ll use for the next 7 years until GrapheneOS support ends with maximal storage.