Writing
Thoughts on software engineering, AI, and building products.
January 2026
-
Why Linux Desktop is still struggling
It has been 6 months since I switched to using Linux as the main OS on my desktop. I did try to use Linux as a main OS back then when I was in high school and college but I quickly switch back to Windows after a few days. Now as a developer with experience in DevOps, having used Linux in server environments for years, I'm pretty confident that I have a good grasp of Linux, so I thought this time I would have a smoother experience, but boy, was I wrong.
-
How to Fix L2TP/IPSec VPN on Fedora 43: Solving IKEv1 and kl2tpd Issues
If you recently upgraded to Fedora 43 and found your L2TP/IPSec VPN connection dead in the water, you aren't alone. Between security policy changes in Libreswan and a bug in the new L2TP daemon (`kl2tpd`), getting a stable connection can be frustrating.
November 2025
-
A Vim Journey: Mastering Visual and Command-line Modes
Welcome back to the second part of my Vim journey! In the [previous post](/blog/a-vim-journey), we covered the fundamentals of Vim: understanding modes, the structure of commands (operator + motion + count), and how to think in Vim's language. If you haven't read it yet, I recommend starting there first.
-
A Vim Journey: From Basic Editor to Productivity Powerhouse
I have been using Vim for several years now, but how I use it is very barebones. I only treat it as a basic text editor that I have to use when I SSH into a server because there is no GUI available. I'm often frustrated by how clunky it feels compared to modern IDEs and text editors, I don't even know how to do basic text manipulation without resorting to the mouse.