
How I Got Started With Linux
After years of using Windows (from Vista to Windows 11), I decided to switch to Linux. In this article, I wanted to document my journey, the challenges I faced, and why I'm not looking back.
Why I Made the Switch
Several sources motivated me to try Linux:
-
Self-hosting ambitions: I wanted to learn server management for my projects.
-
Developer inspiration: Seeing respected developers like Prime, Teej, DHH, and colleagues advocating for Linux
-
Windows frustrations: Tired of several development environment issues in Windows and WSL not working as expected.
-
Control seeking: Wanting to better understand and manage my system.
-
Microsoft concerns: I’m not a fan of their direction with ads in the system UI and forced AI integrations.
Getting Started on Linux with Omakub
DHH's Omakub project provided the perfect entry point - a preconfigured Ubuntu installation for web developers. This checked off a couple of boxes for me:
-
I chose Ubuntu as the base distro, aligning with my server use.
-
Tweaked Gnome UI optimized for keyboard-first usage and window-tiling
-
Nice terminal experience with Alacritty and Zellij as a terminal multiplexer.
-
Useful pre-installed and configured terminal tools like eza, fzf, and zoxide.
The installation experience was smooth. It was a well-designed, visually appealing OS that made the transition nearly effortless. I didn't miss Windows features or patterns. I installed Linux with a dual-boot setup to keep Windows for fallback on applications not working on Linux and gaming.
Down the Rabbit Hole: Switching to Hyprland
After getting comfortable with Linux, I saw a colleague and YouTubers using Hyprland as their tiling window manager. Watching them navigate beautiful screens and windows sparked my interest. I wanted more control over navigation, sizing, and visuals than GNOME provided.
After researching reviews and configuration guides, I decided to jump in:
-
I backed up my important files from my Omakub instance.
-
Used a preconfigured installation script to avoid starting from scratch. Thanks JaKooLit / Hyprland-Dots
-
Started tweaking the well-organized and documented Hyprland configuration immediately.
The Perks of Linux & Hyprland
After a few months, I realized I couldn’t return to Windows as my daily driver:
-
Terminal confidence: I’m no longer intimidated by the command line, I understood more commands and their usage - a crucial skill for server management.
-
Terminal preference: I started preferring terminal over GUIs for many tasks, as it was faster and more efficient.
-
Speed improvements: My workflow became significantly faster with keyboard-focused navigation and custom workspaces.
-
Customization: The ability to optimize every detail to my preferences and workflow.
The Downsides
More control means less guidance, which introduces challenges:
-
Software compatibility: No Adobe suite (I unsubscribed due to infrequent use)
-
Gaming limitations: Most games don't work. (solved by dual-booting to Windows)
-
Hardware issues: I couldn't get my printer working on Linux.
-
Workflow hiccups: Custom fonts in Figma are difficult to get working (I use Windows for this when needed)
-
Stability concerns: Hyprland is still in alpha, so some features may break unexpectedly.
Advice for Linux Explorers
If you're considering a similar path:
-
Be patient and approach problems with a learning mindset.
-
Start with Omakub for a smoother transition without extensive setup.
-
Dual-boot with Windows for tasks that are not compatible with Linux.
-
Debugging and configuration are part of the process.
Switching to Linux and diving into configuration has made me a better developer. I've learned valuable skills for my career, and I'm grateful I made the switch when I did.