Stefan Ivanov

Computing

I'm really a beginner when it comes to tinkering with computers. However, my quality of life improved significantly once I started caring about my experience in front of a screen. I used to be scared of computers until my supervisor in university got me to make the jump to Linux. I suggest you try it out too!

Setup

  • My Linux distribution is Debian. More control over your computer comes with a time cost, and one needs to strike a balance according to their needs. Debian sits in the middle of the spectrum between Windows and Arch Linux. I chose it because it's stable, meaning I get less crashes at the cost of slightly older software. Also, it was an easy transition from Ubuntu.

  • I prefer KDE as a desktop environment. It's much more customisable than GNOME.

  • I use the terminal with bash and tmux.

  • My text editor is vim. In particular, vim-gtk3, which comes with system clipboard interaction.

  • My browser is Firefox. It has the best support for uBlock Origin, which ensures that you never get ads. I use Betterfox for privacy and Tridactyl for Vim keybindings.

  • This website is powered by Zola. I found it less clunky than e.g. Hugo or Jekyll.

Vim

Vim is a very powerful editor which is well worth learning. Here's how:

  • Type vimtutor in the terminal and follow the tutorial.

  • Just for a week or two, force yourself to use vim for all your text editing needs. If you need help, search online. This will feel very uncomfortable, but persevere!

  • By then you should be ready to work through the examples in Practical Vim.

  • After you're done with the book, you're safe to go out into the wild. You'll find additional tips on vimcasts.org or /r/vim. You might also enjoy playing vimgolf.

Vim is extremely customisable, and this allows for wizardry. For example, I've copied a workflow that makes working with LaTeX trivial via the plugin VimTeX and the pdf viewer Zathura. See it in action on Elijan Mastnak's website.

Redshift

If you're having difficulty falling asleep, reducing blue light in the evenings is a great help. I use Redshift with a short cron script that switches it on and off abruptly. After installing cron, type crontab -e in the terminal and add the following lines, changing the hours as desired:

*/30 23-6 * * * DISPLAY=:0 /bin/bash ~/redshift_on.sh
*/30 7-22 * * * DISPLAY=:0 /bin/bash ~/redshift_off.sh

This runs a couple of shell scripts every 30 minutes (because cron doesn't work when computer is turned off). The on/off scripts look like this:

if ! pgrep -x "redshift" > /dev/null # Checks that redshift is not running 
then
	redshift  # Adaptive night mode
fi
if pgrep -x "redshift" > /dev/null # Checks that redshift is running
then
	redshift -x  # Turn off completely
fi

You'll need to make them executable with

chmod -x ~/redshift_on.sh ~/redshift_off.sh

Other Tips

  • Learn touch typing if you haven't yet. This will be very frustrating in the first month, but you will see substantial returns. Consider how many hours of your life you have lost because you couldn't transfer your thoughts to text quickly enough.

  • With great power comes great responsibility. In Linux, you can break your whole system with a single command. If you want to mess with the plumbing, make sure you've backed up your computer first.