Motivations
When I choose what programs and software I use, I have an incredibly strong preference for Free Software, although if my arm is twisted and I have to use proprietary software to get the job done, I will (looking at you CUDA).
I also have strong preference for things that remove abstractions from my workflow, which is why you’ll see programs like Vim and dwm, but not something like Emacs (sorry Stallman!).
Finally this list is not exhaustive, I have almost certainly left out some program I only use some of the time, and I’m certainly not going to mention every single little helper script I have running on my system to automate tedious tasks
Software
-
Operating System
- I use the Artix-Runit distribution of GNU/Linux presently, although I have used Arch and Manjaro in the past previously, with no problems.
-
Terminal
- I use st by the suckless group, since it is nice, minimal stays out of my way and can be modded to do whatever I need, specifically I use the fork by Luke Smith
-
Shell
- I use two shells on my personal system, I use dash as my symlink to /bin/sh, as it is fast, small and narrowly POSIX compliant, and for my login shell I use zsh as it is a superset of POSIX and it’s compliment of features (auto-complete, syntax-highlighting, etc) are, in my opinion, much nicer than those of bash. That being said I am familiar enough with bash as I require it for my work.
-
Window Manager
- I use dwm again by suckless and again due to it being nice and minimal and staying out of my way. I specifically use Luke Smith’s fork of dwm (with my own alterations). When I want to play some video games, I’ll begrudgingly break out i3, since it handles full screen a lot better.
-
Text Editor
- Previously I have used Vim as my text editor of choice.
- However I have somewhat recently changed to Neovim as it is a more modern rewrite and has some nice features, notably Lua scripting which allows for much better plugins, such as iron-nvim.
-
Web Browser
- I use Brave, aka le Shill Lion 🦁, it is fast, blocks most ads and trackers by default and can sync between my various devices quite well.
-
Email
- I use neomutt as my email reader, using Mutt Wizard to set it up and abook to manage contacts.
-
Document Writing/Typesetting
- For document writing/typesetting, what I use depends on the task at hand. If I’m just taking notes, I’ll just use a plain text file with no other formatting. If I need to write something basic, like a quick tutorial, that I would like to have headings and bullet points and other great things, then I’ll use groff, mainly the ms macros, but sometimes the mom macros. To present some results (perhaps at an informal meeting of colleagues) in a way that looks nice and is easy enough to write (although it takes a while to actually compile) I’ll use (R)markdown. And finally if I publishing something that needs an extensive bibliography and cross referencing and the like (such as a conference paper or an assignment) I’ll use full blown LaTeX.
Hardware
- Laptop
I have multiple laptops, but I keep returning to my Thinkpad T420 that I bought second hand, since the keyboard is so nice and once you go trackpoint 🔴 you never go back, that being said, once Framework starts shipping out my way, it might serve as a permanent replacement for the venerable Thinkpad.
- Desktop
I have a desktop that I use to help provide some ‘on-demand’ horsepower for machine learning and to play the occasional video game. It has the following specs:
- CPU: Ryzen 5600X
- GPU: Radeon 6700XT
- RAM: 2x16GB Corsair Vengeance DDR4
- Monitor: Agon AOC AG273FZE 27" Gaming Monitor
- Keyboard: ZSA Moonlander with Cherry MX Blue Keyswitches
- Mouse: Razer DeathAdder Elite Gaming Mouse