While the Goal is : Teach new users how to use Bitcoin
Faucet was somewhat good way to achieve that in early days of Bitcoin. But considering today TX fee rate and amount of BTC considered as dust, i doubt the goal can be achieved.
I'm stuck at how many Satoshi should users be able to claim, and how often to make it fun and fair ?
Long time ago, i'm sure most faucet give amount of satoshi that have value less than 1 cent (in USD).
Also any tips for preventing bots and abuse?
There are things i know from what i experienced long time ago and discussion,
1. CAPTCHA when claiming faucet and register account.
2. Only can claim faucet after verify email address.
3. Blacklist or whitelist email address by it's email provider domain (such as @gmail.com).
4. Prevent claim faucet (or even freeze account) if detected using VPN or other kind of proxy.