rohan ganapavarapu

My Dev Enviroment

The Laptop

Before I broke it, I used a Zephyrus G14, it was great, the best mobile AMD cpu, and a pretty good gpu.

It was probably the best laptop on the market. Great cpu for compiling stuff (gentoo moment), and great gpu for VM passthrough so I can send texts and write swift. (sorry apple).

I am now using a thinkpad x13 yoga, the folding and touch screen is gimmicky and I don’t use it. I will always prefer taking notes and reading on paper.

The OS

Linux is a must. Linux supports the freedom of the user. I mean everything can be built to be the most efficient and best for your needs. I would use BSD (specifically, openBSD) if it was not for lack of support

The Distro

I used to be a chronic distro hopper until gentoo. Gentoo is the single greatest distro to ever exist. It is one of the last distros that supports user choice and it shows.

I turn bluetooth off on the kernel level, but otherwise keep it generic. I use OpenRC because I hate systemd. That could be a whole article in itself. I will give one brief example. I want to change my DNS on ubuntu, I open up resolv.conf and what do I see? ITS MANAGED BY SYSTEMD. WHY IS MY INIT SYSTEM STICKING ITS SLIMY TENDRILS IN EVERYTHING I DO.

WM and userspace

I use DWM and slstatus from suckless (with my own selection of patches of course) and dmenu. I use Xorg because I am used to it and it just works. I tried wayland a few years ago and it was not stable. I use ly for the display manager. I however use alacritty and not st because it is super fast and I like the config. I use networkmanager. I use chrome for browsing because I am trapped by the sync. If you are looking for browser recs, I would just recommend ungoogled-chromium. I use a local password manager.

Dev stuff

I use neovim for basic file editing and config stuff, but I absolutely love jetbrains IDE products. I am sorry I do not want to spend hours of my time to reach feature parity with an IDE that takes negative time to setup. Actually, I think the quick fixes in IDEA (java) are way better than any neovim plugin. Though, I of course use vim keybindings, there is no better way to edit text.

Jetbrains Stuff

I used to use copilot, but its actually not helping that much. If I need AI to do boilerplate or generic stuff I just paste into claude and it does an ok job. Obviously I use ideavim. I use rainbow brackets and rainbow indents and rainbow csv. I use nyan progress bar because it might have been the first plugin I installed. I use this weird theme called soft-charcoal, but most people would not like it.

Terminal stuff

I am back to bash (use to be dash and yash). I am tired of rewriting every little script to remove bashisms and make it posix. I used to use nmtui but now I use nm-applet. I use the GNU utilities, I am not a shell wizard but a few tips I can give are as follows. Learn GNU parallel. Learn grep, sed, sort, etc. Will get you out of a pinch. I am not a terminal wizard. I used to use nushell but it was too complicated and I never need to use the terminal in that way. If bash gets too complex I will just reach for python.

Conclusion

I started using linux daily about 7-8 years ago, when my time then was worth nothing and my brain was not developed fully (it still is not close, to be fair). I chose to make the investment into my build tools so when my brain developed some more it would payout. In other words, I made this investment when my time was worth nothing (although it is only worth a bit more now) so it would pay out when I started building stuff. If you have mac and work in industry, or are a junior or senior in college, I do not see Linux being a worthy investment unless you have a genuine interest in it.

Funnily enough, 7-8 years ago, in the same vain I tried to learn DVORAK and vim motions. I will let you guess which one stuck. Never use DVORAK. I would also recommend just doing what interests you. At the time Linux did (it still does, again, to be fair) so I used it.

Feel free to ask me about more stuff and I will add it here.