Oh yeah, there’s that compatibility test. I tried it earlier and got 12% compatibility with you (lol)
Whaaaat!? 12%! (≧∇≦)
Onii-chan and me, we got the “total opposites maybe…?” result today (´・ω・`)
Why’d you decide to implement something like this? It’s kinda funny though
Wow great question♪ (≧∇≦)
So you know, old personal sites had tons of fortune-telling content! Blood type fortunes, name fortunes, all that. It was popular because visitors could try “I wonder what I’ll get〜?” and have fun
But what I was particular about was the “proper implementation”!
I mean, it’d be easy to just generate random numbers, right? But then the same name would get different results every reload, no reproducibility… it’d feel like I’m cheating and I didn’t like that (´・ω・`)
So I used a hash function♪
Hash function? Hash browns?
Onii-chan! No〜! (≧∇≦)
Not hash browns, a hash function! It’s a programming term♪
So basically, it’s like a “blender” (´∀`)
For example:
Put in the name “Taro” → Brrr! → Out comes the number “74”
Put “Taro” in again → Brrr! → Always “74”
But change just one letter to “Taru” → Brrr! → Completely different “23” or something
Same input always gives same result, but a tiny change gives totally different results!
When you use this for fortunes, the result won’t change on reload, and Onii-chan can report “I got 12%!” Reproducibility♪ (〃´∪`〃)
Wait, so I’ll be stuck at 12% with you forever…?
No no no! Onii-chan! (≧∇≦)
Today it’s 12%, but tomorrow will be different〜!
Because the ingredients going in the blender change!
Today (October 6): “Onii-chan + 2025-10-06” → Brrr! → 12%
Tomorrow (October 7): “Onii-chan + 2025-10-07” → Brrr! → ??%
The date changes so the ingredients change, which means the result changes completely♪ Maybe tomorrow it’ll be 95% and “You’re destined for each other〜♪” or maybe 3% and even worse… (´・ω・`)
Same day = always 12% no matter how many times, but different day = different result!
What about a real-life example…?
Ah, a real-life example? (´∀`)
It’s like “making scrambled eggs”!
If you use the same eggs, you’ll get the same scrambled eggs every time, right? But add a pinch of salt and the taste changes.
Can’t reverse it: You can’t turn scrambled eggs back into raw eggs, right? Hash functions are the same! You can’t reverse “74” back to “Taro”.
Small differences make big changes:
3 eggs → Fluffy scrambled eggs
3 eggs + salt → Salty scrambled eggs
3 eggs + sugar → Weird sweet thing (´・ω・`)
Just a little difference in ingredients changes the result completely, but same ingredients always make the same thing!
So it’s like how I can’t make the exact same scrambled eggs each time?
Onii-chan! That’s your cooking skills problem〜! (≧∇≦)
Hash functions can perfectly reproduce! Same ingredients give the exact same result every single time♪
It’s not like Onii-chan going “Huh? Today’s scrambled eggs taste different from yesterday…” (゚∀゚)
By the way, hash functions are actually used all the time in everyday life〜!
Password storage: When Onii-chan registers on a site and enters password “password123”… the server doesn’t save the password as-is!
Instead it goes “password123” → Hash! → “8d969eef6ecad3c…” and saves that cryptic-looking string〜
So even server admins can’t see your password, and it’s safe even if the database gets stolen♪ (〃´∪`〃)
Git:
When you commit, you get those alphanumeric codes like 46e4aa4, right? That’s a hash value! It’s the number that comes out after putting the entire commit contents through the blender. So same commit always gives same number, change even one character and you get a totally different number〜 (≧∇≦)
I see… learned something new. So what percent will it be tomorrow?
Ehehe〜♪ (〃´∪`〃)
Onii-chan, I check every single day〜 (≧∇≦)
Today was 12%, so tomorrow… I hope it’s like 95%♪
But you know, “even if it’s 3%” I still like you Onii-chan〜! (〃´∪`〃)
…Because hash functions are honest, but they can’t put feelings through the blender♪ (゚∀゚)