I've used emacs as a code editor off and on since 2019. I first tried it out while on a 2 week notice at work, while at the same time learning VIM keybindings. I was also becoming more interested with LISP, and during that time did a fair amount of tinkering with common lisp.
The primary tech stack at my job at the time was nearly all JVM Spring Boot based. The JVM and Spring frustrated me, the feedback loops were not great, and heavily tied to IDE's like intellij, and for all the benefits the JVM provided felt over abstracted, simple things were difficult, and difficult things were easy. Only if you knew the framework inside and out. I explored functional programming as an escape from the JVM OOP framework hell. Part of that journey led me to emacs. I thought I was slashing through the jungle away from object oriented programming, but I found myself on a journey stripping away layers of abstraction that made work a slog.
That journey brought me to emacs, first with evil-mode spacemacs, and then next to a small-er homegrown set up, built up organically over a few years. I played with
common lisp
and
SLIME
, switched from
helm
to
ivy
, switched between
lsp-mode
to
eglot
, configured my
evil-mode
keybindings, learned new git tricks through
magit
. At work, I wrote
go
and
python
and
terraform
, all in emacs. I was really productive, the invisible string separating me from the tools I was using was fairly short and thin.
This close relationship between me-and-my-code-editor directly mirrors how I innately approach things, more focused on the journey than the destination. Which in many ways competes with the way the business world works, focused more on delivery and results rather than how it felt getting there. There is also a fair amount of burden in peeling back layers of complexity and abstraction. Especially in regards to a developers toolset.
Also, I got a new job and it was back to the JVM. Back to Intellij, I took a step back from personal projects, and adopted Intellij as my primary IDE. Things mostly just worked, and it was a relief not having to worry about configuration or breaking changes from updating packages. I became a bit more hands off. The invisible string between my tools and I became a bit longer and thicker. Probably, the swing back to the IDE and Java was a course correction from my hubris in exploration, content to set up camp and chill out a bit.
Two layoffs later and now I'm coming back to emacs, not because it's the best editor out there, and not because I love writing
elisp
. Probably I'm coming back because the journey and exploration, to me, is more fulfilling than the destination.