Linux for Research

Why Linux for Research?

I use Linux every day in my research as a computational physics PhD student: managing simulations on HPC clusters, writing code, and navigating the terminal.


This page is a growing collection of tools, setups, shortcuts, and small discoveries that help me work better.

Whether you’re just getting started or you’re curious about how Linux fits into research workflows. I hope you find something helpful here. I’ll keep updating this page as I learn more.

🧰 Tools I Use (Software & Terminal Utilities)

ToolWhat I Use It ForQuick Notes
VS Code + Remote SSHRemote GPU coding on my university workstationFeels like local coding with CUDA support
JupyterInteractive notebooksFor code prototyping and quick data visualizations
gitVersion controlFor both code and LaTeX documents
zsh + Oh My ZshInteractive shellCustom prompts, Git integration
scp (scp -r)Syncing files between machinesHPC cluster -> Workstation
Workstation -> HPC cluster
rsyncSyncing files or folders between machinesSafer than scp for large files,
only changes the bits that changed
nanoLightweight editing on remote machinesNano for quick shell script or Julia files edits via terminal
on the cluster

🧪 Research-Friendly Distros

DistroWhere I Use ItWhy I Like It
Fedora KDE / GNOMEMy university workstation & VM on my MacBook ProModern, Wayland-focused, and science-friendly.
AlmaLinuxOn HPC clusters

(University & Compute Canada)
RHEL-compatible, stable for long-term projects.
Though, I am not in control of what’s installed on the HPC clusters. I just use it.
Ubuntu (briefly)Tried early onFamiliar, lots of community support, but… a bit bland to my liking.

I don’t distro-hop much — I try to find something that works and stick with it, especially when doing serious research, and there is plenty of other things to worry about and spend my time on.

💻 My Setups

DeviceSetup TypeNotes
University WorkstationFedora KDE Plasma• Modern, Wayland-focused, and science-friendly. Has two NVIDIA GPUs. Used for code development and testing.
• Often used with VS Code Remote SSH from my MacBook.
HPC Cluster (University or Compute Canada)AlmaLinux via SSH onlyPure terminal use, no GUI, massive simulations.
MacBook Pro (M1)MacOSEverything else other than code development and testing (because I need NVIDIA GPU access for CUDA programming). Data visualization.

Sometimes, I use a Fedora Fedora Workstation 41 GNOME (47) VM on my MacBook (via Parallels Education Edition (not affiliated)) to explore Linux without messing with my main research workstation. It’s my experimental playground for non-research related Linux use.

🔁 Workflows I Use (Almost) Weekly

1

Write and test code (in Julia) on my workstation or via remote SSH from VS Code on my MacBook (if working from home).

2

Run jobs on the HPC cluster via ssh, using Slurm job scripts.

3

Post-process data using Julia on my MacBook.

4

Visualize results with Jupyter for quick ckeck or/and by writing .jl scripts directly for fancier and reproducible plots or animations. Some of my favorite Julia’s plotting libraries are Plots.jlPyPlot.jl with PyCall.jlMakie.jl , GLMakie.jl or CairoMakie.jl.

5

Write it up in LaTeX and markdown in my research journal. I use Obsidian for this and I love it!

✍️ Bonus Tips / Lessons I’ve Learned

🛑 Don’t distro-hop mid-project.

‼️ Version control everything.

🛟 Make backups of your SSH keys and cluster configs.

🖥️ Learn tmux early — you’ll thank yourself later.

✅ Minimal setups = fewer distractions = more science.

💌 Want More?

I’d love to hear what tools or setups you use!
Feel free to drop a comment below, email me or say hi on YouTube.


Leave a Reply

Your email address will not be published. Required fields are marked *