Sign in

Jean-Jacques Strydom

@psionicalch.com
316 followers 41 following 735 posts

Lisp, Scheme & Linux Enthusiast My DMs are always open. I might not necessarily respond but you should at least try.

PostsRepliesMedia
Jean-Jacques Strydom @psionicalch.com · 18/10/2025
In case you're curious, these custom blocks are freely available at: github.com/PsionicAlch/... Still setting everything up, so it might be a little broken depending on when you look.
github.com
GitHub - PsionicAlch/vanilla-pp-animations: Vanilla++ Animations: GSAP powered animations for WordPress
Vanilla++ Animations: GSAP powered animations for WordPress - PsionicAlch/vanilla-pp-animations
010
Jean-Jacques Strydom @psionicalch.com · 18/10/2025
Got the runtime API designed. Outside of timelines, full scroll trigger, and full stagger support everything else in GSAP core should be covered. #wordpress #gutenberg #gsap
110
Jean-Jacques Strydom @psionicalch.com · 16/10/2025
The plan is to wrap GSAP in a runtime that uses data-* attributes. So something akin to AlpineJS or HTMX but specifically for animations. Then expose the data-* attributes in WordPress as attributes on the custom block. I plan to even have timelines working. #wordpress #webdev #gsap
000
Jean-Jacques Strydom @psionicalch.com · 16/10/2025
Just got done creating a proof-of-concept custom WordPress block. I wanted all the power of GSAP in WordPress but I refuse to pay to for it. So I ended up paying in time. 🤣 #webdev #wordpress #gsap
000
Jean-Jacques Strydom @psionicalch.com · 03/09/2025
💯💯💯
010
Jean-Jacques Strydom @psionicalch.com · 31/08/2025
But very fun and makes me feel smart 🤓
010
Jean-Jacques Strydom @psionicalch.com · 28/08/2025
Crafting Interpreters by Robert Nystrom #programming
010
Jean-Jacques Strydom @psionicalch.com · 27/08/2025
What on earth is HR smoking? "like a tree ready for wiring to discover the bonsai within" 🤣 Also, why is Python getting used for the frontend!? #jobhunting
110
Jean-Jacques Strydom @psionicalch.com · 26/08/2025
Recursion + Collector functions are absolutely breaking my brain 💀🤯 #programming #lisp #scheme
040
Jean-Jacques Strydom @psionicalch.com · 23/08/2025
The cool thing about Lisp is that it's naturally obfuscated 🤣 #programming #scheme #lisp
020
Jean-Jacques Strydom @psionicalch.com · 22/08/2025
Recursion for the win! #programming #scheme #lisp
010
Jean-Jacques Strydom @psionicalch.com · 22/08/2025
Programming languages are just Turing-complete configuration formats for their compilers/interpreters that tell them what to generate. #programming
020
Jean-Jacques Strydom @psionicalch.com · 19/08/2025
I am blown away by "The Little Schemer" by Daniel P. Friedman and Matthias Felleisen. Instead of taking the typical academic approach of throwing definitions at you it trains your pattern recognition via small questions and answers. #lisp #scheme #programming
020
Jean-Jacques Strydom @psionicalch.com · 16/08/2025
On today's episode of bot-watch news: "Bots are beating cancer". Brought to you by Threads' algorithm #bots
010
Jean-Jacques Strydom @psionicalch.com · 15/08/2025
"Any sufficiently complicated C or Fortran program contains an ad hoc, informally-specified, bug-ridden, slow implementation of half of Common Lisp." - Greenspun's tenth rule of programming
010
Reposted by Jean-Jacques Strydom
hanion @haniondev.bsky.social · 09/08/2025
I got nerd sniped by @tsoding.bsky.social. Site generation with C templates: hanion.dev/post/mite/
3446
Jean-Jacques Strydom @psionicalch.com · 08/08/2025
You're right. This was just the first time I've ever seen an example where you create a router without the typical OOP wrapper. It's nice to see such a clear cut between data and the functions that act on the data.
000
Jean-Jacques Strydom @psionicalch.com · 07/08/2025
It's reasons like this that I believe learning programming from a generalist approach is so extremely important. You get to see many different view points. You get to see the same problem solved in dozens of unique ways. Specialization leads to tunnel vision. #programming
010
Jean-Jacques Strydom @psionicalch.com · 07/08/2025
I never considered creating a router as nested arrays. I mean it's a good way to internally represent a router but I'm so used to seeing routers in a more OOP style of programming where you create a router instance. #webdev #clojure
110
Jean-Jacques Strydom @psionicalch.com · 06/08/2025
The past got a lot of things right
010
Jean-Jacques Strydom @psionicalch.com · 06/08/2025
pragprog.com/titles/dswdc...
pragprog.com
Web Development with Clojure, Third Edition
Use Clojure to create a series of web apps of growing complexity and explore the full process of web development using a modern functional language.
010
Jean-Jacques Strydom @psionicalch.com · 06/08/2025
"To make an analogy with mathematics, understanding a few fundamental theorems and their implications is far more useful than rote memorization of specific formulas." - Web Development with Clojure #programming
120
Jean-Jacques Strydom @psionicalch.com · 06/08/2025
You having some PHP LAMP stack nostalgia? 👀
110
Jean-Jacques Strydom @psionicalch.com · 06/08/2025
This meme is dedicated to every snowflake that I triggered on Threads 🤣
020
Jean-Jacques Strydom @psionicalch.com · 06/08/2025
#programming #meme
130
Jean-Jacques Strydom @psionicalch.com · 04/08/2025
Personally I think langs like Clojure, and Elixir are actually quite popular. In fact I would put both of them on par with Go's popularity. I have stumbled upon a whole bunch of langs less popular
000
Jean-Jacques Strydom @psionicalch.com · 04/08/2025
Yeah, from what I have seen new features basically only ever come from the indie langs. Take Koka lang and their experimentations into Effect Types: koka-lang.github.io/koka/doc/ind... The mainstream languages only really ever adopt new features once they're properly tested and "safe"
koka-lang.github.io
The Koka Programming Language
Koka Language Specification
100
Jean-Jacques Strydom @psionicalch.com · 04/08/2025
I also love that part of Go. But IMO Scheme does it better. The R7RS-small spec requires only a minimal core of orthogonal features, but they're so powerful that anything else can be built as libraries - including Go-style concurrency (see Guile Fibers).
000
Jean-Jacques Strydom @psionicalch.com · 04/08/2025
It's not a unique feature to Go though. Clojure has green threads and channels as well (in fact Clojure has better buffered channels). Erlang/Elixir also has green threads with message passing between isolated processes. Guile has Go style threads via a library. codeberg.org/fibers/fibers
codeberg.org
fibers
Concurrent ML-like concurrency for Guile
110
Jean-Jacques Strydom @psionicalch.com · 04/08/2025
What problems do Go solve in a unique way? I really like Go but from my own experiences Go tries to be the most vanilla programming language in existence.
100
Jean-Jacques Strydom @psionicalch.com · 04/08/2025
The more programming languages I learn the less unique they all seem. It's just the same features and implementations. Only thing that really changes is the syntax. It makes arguments over which programming language is the best seem EXTREMELY stupid. #programming
190
Jean-Jacques Strydom @psionicalch.com · 03/08/2025
You think way too highly of me 😂
010
Jean-Jacques Strydom @psionicalch.com · 02/08/2025
As an example you can see the REPL and the browser devtools console. (forgive the weirdness going on in the REPL. I'm still getting used to Emacs' terminal)
020
Jean-Jacques Strydom @psionicalch.com · 02/08/2025
From there I can use my terminal as if though it's the actual browser console. I can read variables created in the browser console. I can set new variables that I can access in the browser console. If I write something like `(println "Hello, World")` in the REPL it prints in the REPL and the console
110
Jean-Jacques Strydom @psionicalch.com · 02/08/2025
Not that I'm aware of... I've never heard nor seen anything about it when using ReactJS/VueJS/Svelte/NextJS/NuxtJS/SvelteKit. When I run the reagent (ReactJS wrapper for CLJS) project via the terminal, I get a REPL that opens up and connects to the browser currently running the website.
120
Jean-Jacques Strydom @psionicalch.com · 02/08/2025
The interop between the Clojurescript REPL and the browser devtools console is blowing my mind! I can create new variables in the console and they are immediately available inside the REPL and vice versa. Without the need to reload or anything. #clojure #webdev
050
Jean-Jacques Strydom @psionicalch.com · 31/07/2025
Why even have ads in your product if all the ads are about removing the ads from your product!?
000
Jean-Jacques Strydom @psionicalch.com · 31/07/2025
I hope I can learn the same appreciation for it. Currently I'm really missing JSX 😂
000
Jean-Jacques Strydom @psionicalch.com · 31/07/2025
Who needs JSX when you have ✨hiccup✨? (This is gonna require some getting used to 🙈) #WebDevelopment
130
Jean-Jacques Strydom @psionicalch.com · 30/07/2025
JavaScript is a compile-to-js language #webdev
012
Jean-Jacques Strydom @psionicalch.com · 28/07/2025
It's giving these vibes 🤣
010
Jean-Jacques Strydom @psionicalch.com · 28/07/2025
Of all the names that Clojure could have used for the functions that read from and write to resources 🤣 #clojure
120
Jean-Jacques Strydom @psionicalch.com · 26/07/2025
Careful there. Wouldn't want you to accidentally get sucked into Lisp with me 😂
010
Jean-Jacques Strydom @psionicalch.com · 26/07/2025
Fascinating. Thanks for sharing
010
Jean-Jacques Strydom @psionicalch.com · 26/07/2025
Ah so Go created it. Clojure upgraded it. (Screenshot from www.braveclojure.com)
220
Jean-Jacques Strydom @psionicalch.com · 26/07/2025
I just learned you can get the HTML from a website using the same function you'd use to read a file 🤣 #clojure
120
Jean-Jacques Strydom @psionicalch.com · 25/07/2025
It's where mine's starting as well.
000
Jean-Jacques Strydom @psionicalch.com · 25/07/2025
Clojure for the Brave and True is one of, if not the best programming books I've ever read! www.braveclojure.com
braveclojure.com
Learn to Program the World's Most Bodacious Language with Clojure for the Brave and True
141
Jean-Jacques Strydom @psionicalch.com · 25/07/2025
I always though channels and goroutines were unique to Golang. Turns out Clojure also has them, and then some. In Clojure you can have a buffered channel (just like in Go). But you could also have a buffered channel that drops either the newest or oldest value when full 🤯
020