Workflow
It’s been a year and a half since I have switched to Linux and don’t see myself using Windows on my personal machine for the forseeable future.
I have to use Windows at work because of my org but I have a pretty good workflow there as well.
I really like personalizing my workflow since I am using a machine for the majority part of my day and then on my personal machine at night. If you spend so much time using the tool I think it’s valid to spend time configuring and optimizing it for maximum comfort, control, performance and fun. It’s absolutely mind blowing to me the comfort that not having to take your hands off the keyboard gives. My j and k keys are absolutely shiny on my work machine and personal machine (Neovim btw)
One issue which I thought I would encounter but did not surprisingly is being able to switch between using different keybindings and shortcuts on my work machine and my personal machine. Moreover since I am using different operating systems. But it’s gotten really good that I just switch into different mindspaces and automatically use the proper keys.
The workflow
Gwen
My personal machine is called Gwen. I don’t see many people naming their devices. Why not? Gwen runs Fedora and this was purely chosen because I wanted something other than Arch. The package manager is good, it works really well with a beautiful GNOME experience out of the box. The whole idea on this machine is to get from A to B in the shortest mental overhead and least amount of keystrokes. I don’t even want to look at the mouse. I think of where I want to be and I should be there before the next thought comes to my mind.
So I use:
i3wm and dmenu
I don’t think anyone should use any operating system without a tiling window manager. I really like the idea that I have different workspaces which are numbered. So now I have kinda like a map in my head and it’s always those same apps being used in the same workspaces. dmenu is pretty good too. I tried using rofi and it just took up too much space in the middle of the screen by default. That pissed me off and I switched back to dmenu without bothering to rice it.
- Terminal
- Code
- Browser
I don’t really go beyond 3 workspaces most of the time, but if I do its mostly another browser window which I didn’t want as a tab. So every app that I need to use is always mod + x (x is the workspace number) away.
kitty
I spent zero thoughts into choosing a terminal emulator and just googled which one I should use and kitty showed up so that’s the one I used. I have very less RAM (3.2gb usable) on my personal machine and kitty hasn’t given me any issues. It works pretty good so I haven’t thought of switching over to something else. I plan to explore st, or foot sometime later.
Neovim
I started out using ThePrimeagen’s config because I was too lazy to write my own and now it’s grown on me. I do plan to write my own config and customize it sometime later. I currently use the superior vim motions and some commands and macros and am picking up some sick tricks watching Vimothée Chalamet.
tmux
Extremely useful, very simple to grasp, very great and just works out of the box without any customizing or configuring even though I do have some little customizations of my own. Love it. Saves a lot of time and the splits are really handy. I would’t use the windows until recently and now they are pretty much my go to. I run neovim in one window and use splits to run or build or compile in the second window.
zsh
I always fancied using zsh for the autocomplete before switching to windows and so there wasn’t a second thought to choose this. Though I do want to try out fish.
Brave browser
I don’t think any other browser comes close. By default there’s some AI and crypto slop but it can be removed pretty easily. The out of the box ad block experience was simply enough to make me switch. The sync feature is pretty decent as well.
Browser extensions
- Dark Reader: Because I would prefer not becoming blind.
- Page Marker: Pretty handy pen to draw anywhere on the browser. And it keeps the content segregated in different tabs.
- Video Speed Controller: Allows me to set shortcut keys to set or change the speed of videos throughout. Pretty handy extension and I love that I can modify the keybindings to whatever I like.
- Vimium: This extension is the single greatest browser extension to ever exist. Everything is accessible via the keyboard with vim motions. Going back and forth between different tabs and between history is buttery smooth with really natural keybindings.
Work machine
The work machine does not have a name, simply because I don’t like him that much yet. I have to use Windows at work which sucks but it’s bearable.
I pinned the apps I use to the task bar and now they are accessible with Windows key + x (x is the number in the order in which they are pinned). This is very useful and is similar to the i3wm workspace experience for me.
I have to use VSCode and Visual Studio so I have vim extensions in both.
End
If you spend hours on your machine every day, it’s worth putting in some time to customize it as you would like it to be. I have seen people with good speeds using their mouse and the speeds are impressive so it’s really about comfort at the end.