by iLemming | 2025-10-04 19:39:28+00:00
> I want my constellation of tools to be as interoperable as possible.

Unironically, that's exactly what knowing some Lisp and Emacs gets me, and it seems to me you simply have very little idea what I'm talking about. You're focusing on so much explicit knowledge of things, that you're missing an entire universe of tacit wisdom - the things that can open up ways for cerebral satisfaction - not through some theoretical argy-bargy, but through down-to-earth, unadulterated pragmatics.

I never said that I'm using Emacs for practicing spaced-repetition - I don't use it to flash the cards to me. Why would anyone use a desktop computer for something like that, when the mobile devices are clearly more suitable for that task? I do however manage my cards in Emacs - because most of the time they are made of plain text, sometimes LaTeX embeddings and attached images. I do that in Emacs, because my spaced-repetition cards are not in some other medium - they literally are my notes, part of my exocortex system. I can easily find them, review them, modify them and send back to Anki app for syncing, so they are ready for my next time two-minute practice. These days I can even feed any content to LLM to generate dozens of cards, and it takes seconds, not even minutes.

> I simply don't want to write ELisp to fix my problems

Your choice, but honestly? You're missing out. Elisp is relatively straightforward and unambiguous PL - far less complicated than even JS or Python, it really doesn't take too long to get to know it.

I can give you numerous practical, working, real-life examples of how using Lisp in Emacs can bring enormous joy and the sense of liberation from the status-quo. It is indisputably true "hacker's playground".

I understand your fascination with Clojure - I use it daily myself, and similarly, just like you're not getting my talking points right now - majority of programmers don't get my enthusiasm for it. What they often be missing is that Clojure sometimes can feel like a godsend for achieving certain results. Just the other day - we were dealing with a Python-built service that sends huge nested maps around, and we needed to manipulate them, splitting into smaller sub-structures and dealing with them in Python wasn't particularly easy. Well, I quickly concocted a tiny elisp function that calls python and converts the data to EDN. It's only ten lines of elisp and it does it right there - in the same buffer. Then I spun-up a Clojure REPL, where I explored the map, filtered out the keys, introspected it in ways that wouldn't be so satisfactory using plain python tooling alone. Some pythonistas with no exposure to Clojure would call that "a skill issue", without even realizing that the skills and intuition I developed over the years are precisely the instruments that allow me to deal with everyday tasks in ways that never materialized for them.

I don't know for how long you've been doing this craft, and please, feel free to ignore whatever I'm saying - after all, I'm nobody - just some rando on the internet, yet, if you just allow me some non-condescending, honest mentoring here...

The tools we gravitate toward often say more about our past experiences than about the problems we're trying to solve. I've been there - I once avoided entire ecosystems because they weren't in "my" language. But here's what I've learned: every tool, every language, every paradigm is just another human attempt at managing complexity. None are sacred.

Elisp might feel alien compared to other things you know well, but that alienness is worth examining. What if the friction you're feeling isn't a flaw but a feature? What if Elisp's simplicity and directness - its lack of certain abstractions you're used to - is actually freeing you from complexity you didn't need?

Software is storytelling, and different languages tell different kinds of stories. The JVM tells stories about enterprise scalability and library ecosystems. Elisp tells stories about text manipulation and user empowerment. Neither is wrong, but using the JVM to deal with plain text is like using a symphony orchestra to play a lullaby - you can do it, but you might be missing the point.

Maybe try suspending your language preferences for just a month. Write some Elisp. Maybe not a lot - just enough to solve one real problem you have. You might find that the language you "don't want to get proficient with" has been whispering solutions you couldn't hear over the noise of your preferences.

If you really, genuinely curious what knowing just a bit of Emacs can buy you, feel free to ping me, I may even agree to arrange a video-call session to show you things I do every day and compare them with your habitual workflows - who knows, maybe tis not I, but rather you, will be teaching me something new.