1. Reverse engineering and vulnerability research. Not that much programming in the sense of writing code, but it basically requires you to be deeply familiar with assembly, compiler optimizations, application binary interfaces, and obfuscation methods. It's especially interesting because there are basically two groups that are heavily involved in this work: independent hackers and nation state or adjacent entities (infosec companies, defense contractors, etc).
2. ROM hacking and homebrew. This is similar to reverse engineering, but it's done for more fun reasons. Lots of super interesting work people have done to do things like mod or optimize classic console games, decompile games so they can be recompiled for modern systems, or just learning the development stack of an obsolete console to create new games and software from scratch. It's especially interesting because you tend to have to get into older or more obscure ISAs like MIPS, PPC, or MOS 6502. Check out Kaze Emanuar for some examples.
3. Mainframe computing. It's only esoteric because the hardware and software is largely proprietary and locked down. The Hercules emulator exists though, and IBM lets you run the 30+ year old versions of their Mainframe OSs as a hobbyist without needing to worry about licenses and stuff. The business model sucks, but Mainframes are interesting since they represent a very different paradigm of computing from the now commonplace X86+Linux commodity machines. There's a YouTube channel called moshix which offers pretty accessible long-form information on how to get started hacking around on Mainframe emulators.
In sequential software programming, you avoid computation until you need it. With hardware, if you have the logic to do the computation, you use it. Think of having all expressions always evaluated. Instead of conditional evaluation you select which output you want.
This applies somewhat to software on modern processors with abundant functional units (adders, FPUs, load/store units). They're running ahead evaluating as much as possible, then discarding what wasn't selected.
https://arstechnica.com/gaming/2021/03/how-to-beat-paper-mar...
2) BitGrid is an esoteric computing fabric I've come up with, and wrote an emulator for.[3] It's a grid of 4 bit in and out look up tables, clocked in two phases like the colors of a chessboard.
=== 1: Artifical Chemistries
You could check toward 'Artificial Chemistry', I bought one book[1][2] out of curiosity a few years ago, and while I haven't really touched it that much, but it's a really interesting perspective on computing that I haven't really seen talked about here (or elsewhere).
[1] http://www.cs.mun.ca/~banzhaf/AC-home.html [2] https://www.amazon.com/Artificial-Chemistries-Press-Wolfgang...
=== 2: 'Alchemist' esolang
Semi-related to the first point is 'Alchemist', "A non-deterministic programming language based on chemical reactions" that was shared here on Hacker News[3] a few years ago.
[3] https://news.ycombinator.com/item?id=20150179
=== 3: 'Hexagony' esolang
Still playing with esolangs, I particulary like 'Hexagony' [4], which seems inspired by Befunge[5], but with Hexagons. It has a super cool online IDE [6]. If you don't know about it, then definitely check-out the Esolang Wiki, it's a treasure trove.
[4] https://news.ycombinator.com/item?id=35581768 [5] https://esolangs.org/wiki/Befunge [6] https://hexagony.net/
=== 4: Soviet/Russian programming languages
Going back to the history of computing, there's the whole soviet side of computing that aren't well known in the west, but probably has fascinating stuff. I only can give you a Stack Exchange question[7] I found a few months ago about some soviet spacecraft, with one answers hinting at some soviet computer languages such as as 'PROL2' and 'DIPOL'.
[7] https://space.stackexchange.com/questions/64366/reasons-behi...
=== 5: APL
It's a recurring subject here in HN, but on the off chance that you might be one of today's lucky ten thousand, then check out anything related to APL[8]. It's a fascinating language with extremely powerful construct to play with tabular data. Another APL-related thing is the BQN language[9].
[8] https://dfns.dyalog.com/n_sieve.htm [9] https://news.ycombinator.com/item?id=35913241 (and obligatory XKCD: https://xkcd.com/1053/)
=== 6: Urbit
Last one, not my favorite, but definitely high on the 'esoteric' part, is 'Urbit', which is a very ahem special ecosystem that basically eschew anything familiar about the current state of computing. I personally feels that it's weird for weirdness sake, but it's something of a UFO. If you're insterested in Urbit, I would suggest to start with this article titled "Urbit: The good, the bad, and the insane"[11]
[10] https://urbit.org/ [11] https://news.ycombinator.com/item?id=27268462