Recent
Brewing Up a Java Setup For Neovim
I love neovim. I’ve used it happily for Python, JavaScript, and other languages, but when I started working on Java projects, I discovered a neovim niche. The overlap between Java devs and neovim enthusiasts is apparently pretty slim. There weren’t nearly as many resources for configuring a solid Java setup as there are for Python, Go, or TypeScript. Instead, I found one too many unsatisfying Reddit posts where someone asked how to set up Java in neovim and most answers boiled down to “I tried, but just ended up going back to IntelliJ.” It took some time, but I’ve got a functional setup now. It’s not perfect, but I’ve been using it for full-time Java development for months, with only attaching a debugger being a subpar experience. Here’s what I wish I’d had when I started.
Attribute vs. Property in Python
Normally, when I talk about classes as it relates to programming I use the word property to describe a piece of state stored on a class, which represents a characteristic or feature. For example, in the following python Celsius class, I would call temperature a property of that class.
My Neovim Configuration and Cheatsheet
Update 01-2025 - I switched to using the LazyVim distro and it really has all the bells and whistles while remaining fast and configurable. I will eventually come back and update this page with my LazyVim experience.
Dead Simple Method for Managing Python Virtual Environments
While there are many tools for managing python virtual environments, sometimes you just need something portable and dead simple.