OP here. I made this mostly out of fun/curiosity. The premise of cryptocurrencies is that it's practically impossible to guess the private key for a given address. This just keeps guessing on the off chance that you hit a 1 in a 1461501637330902918203684832716283019655932542976 chance.
People are naturally bad at large numbers (myself included).
It's funny -- I'm sitting here staring at these addresses thinking "it can't be that unlikely, right?" I know full well it's effectively impossible, but there's a part of me that thinks I may get lucky.
I wondered this too. I'm sure you could narrow the universe to some degree. Most wallets use the BIP 39 word list as a seed to derive the private key. So 12 words (in order) out of 2048 possible words is probably less than the total number of possible bitcoin addresses. This is just one example.
I found this really fascinating. I also love the simplicity of it. It could be cool if your About Modal had a "Next >" button, and each slide would reveal another critical bit of information, like the one you have above about the actual odds, while the guesser runs in the background. In a way you would be getting paid to learn bitcoin.
Also, wouldn't the odds be far higher of mining a block in your browser than of guessing a private key? My intuition says yes.
Out of curiosity where do you get the balance at this fast rate? Or maybe you just wait for a click on the pause button and then hit an API for balance?
It's doing a batch request to blockchain.info to check the balance. So I generate 100 addresses, fetch them, then show them 1 by one in the UI. Then fetch 100 more in the background. This is mostly to prevent rate-limiting.
People are naturally bad at large numbers (myself included).