Having worked a bit in a conceptually similar product, in my opinion the real problem is how you define the layout of your UI, not the individual components.
by reading through the issues in Alacritty you realize that it's optimized for a very specific set of use cases, for example if you're using a tiling window manager you don't miss tabs at all (in fact they are an annoyance)
I understand the point of view of the author, but at the same time I appreciate how simple and not bloated Alacritty is, there is great software out there but terribly bloated with features that become useful only in edge cases.
Besides being a good read overall, the book discusses topics like this one in detail and with a healthy attitude (people tend to have strong opinions on this)
This topic in particular is very dear to my heart since I learnt the shuffle as a kid, and it was wonderful to rediscover it in a new light with some math background being an adult.
For those interested, the shuffle is also called "faro" shuffle and was likely invented to cheat at a game with the same name.
There's a wonderful book "Magic Tricks, Card Shuffling and Dynamic Computer Memories" that describes the mathematics of perfect shuffles, highly recommended!
I'm doing the CS:APP3e course and out of curiosity searched about this exact same topic yesterday, crazy!
I'm learning a great deal from the responses here, thank you.
If you are in the same position I was (self-taught dev looking to improve your general understanding) I can't recommend this course/book highly enough: