TiddlyWiki is great until you want to add a structure to your Wiki. I was using it like mad, then I found out that linking pages took more time then writing notes, and I pulled the trigger and moved to Obsidian.
If you run the node.js server version it can handle images properly, as separate files. That also gives you the practical ability to use many large images and videos.
High frequency state-change propagation don't scale well on APIs. In such setups, one ends up paying for the connection setup/tear-down, and handling clients concurrency gets expensive.
Usually, a per-user access token with a 5 download limit per day is good enough, and can be scripted into peoples blacklist generation cycle.
Keep in mind, some ban-lists take awhile to compile and remove redundant subnets etc. It is important to hit the proxy/tor exit nodes first, than the usual country codes for nuisance traffic from users.
Actually, I did take some content from wikipedia regarding HEX/RGBA/HSL/etc colors and stuff it all together into one big variable. Then, on each sub-page reload I generate random content via Markov chain function, which outputs semi-readable content that is unique on each reload.
Welp, you got me scrolling your HN thread to see where the "two-trillion-something" number came from. Between this and your experiment site, you have a knack for drawing attention.
If you think 3 positions, each 0-1, gives 3^2 options, then please show us the 9th three-bit number.
Even simpler is the case of 1 position that is 0-1. Does that give 1^2 or 2^1 options?
You are missing something. How many two-digit decimal numbers are there from 00 to 99? Obviously 99+1 = 100: 10 options for the first digit times 10 options for the second digit; 10 in the form 0X, 10 in the form 1X, etc. up to 9X, a total of 10 * 10 = 10^2.
So how many 6-digit hexadecimal numbers from 0x000000 to 0xffffff? 0xffffff+1 = 16777216 = 16^6. 16 options for the first digit, times 16 options for the second digit, times 16 for the 3rd, times 16 for the 4th, times 16 for the 5th, times 16 for the 6th is 16^6. Or go to bytes: 3 bytes, each with 256 possible values is 256^3 = (16^2)^3 = 16^6. Or bits: 2^24 = (2^4)^6 = 16^6.
It's also pretty trivial to just count them. Run this in your browser console:
Yes, the file can grow large with many images, but it's a single file containing everything... even scripting!