Brainstorming Faucets, Funnels, and Referrals in 2.0BitShares is different from other chains because it requires the use of a faucet to get started. Faucets as we know them today are merely registration forms, but they will play a bigger role when the referral system is launched. It’s not yet clear how all of this will work in Graphene, but I’d like to share some ideas of what might be possible.
Ease of useWe lose referrals because the current faucet system is inconvenient. To take full advantage of the referral program, we should
streamline the current faucet system without losing its flexibility.
Ideally, users would start at the faucet and
then go to the web wallet. No hopping back and forth.
Instead of website→wallet→faucet→wallet I’d like to see just faucet→wallet. More on this below.
Cross-compatible wallets & faucetsCCEDK, BANX, and BunkerDEX will run their own skinned BitShares web wallet. We may have 'stock' wallets similar to wallet.bitshares.org. And we’ll have 3rd-party wallets like Moonstone.
The idea is for wallets to remain compatible so users are not locked in.You should always be able to migrate to any wallet/provider at will (to paraphrase BM).
Could we make faucets and wallets completely interchangeable yet seamless? For service providers, this would make A/B testing trivial. And they could take it to the next level by leveraging free market forces via the power of independent marketers/developers.
Every user on the chain only needs to interact with a faucet
once.
Marketers will compete to reach various market segments
first.
If marketers have powerful tools, we’ll have a very healthy race.
Faucet variants- Invite-only faucet
- Generate invite codes for printing/emailing. Perfect for meetups.
- "Create a free account at bitshares.org & enter code RTYSDTF to claim your 5 BitUSD".
- A benefit of this approach is that no email verification is required.
- Valentine explored a similar approach last year, but 2.0 changes things.
- Skinnable faucets
- Allow marketers to easily create highly-targeted funnels for different markets
- We could have endless user-generated keyword-rich signup pages.
- Anyone with basic HTML skills could create single-page funnel-faucets.
- Tipbot faucet:
- Receive a tip on social media.
- To claim it, you verify your login and create/link a BTS account.
- If the user does not yet have a BTS account, they create one
- Tip-sender and tip-bot split the referral income
- Great way to incentivize tipping
- LocalBitShares faucet/service:
- We need P2P on/off-ramps, this would be great for grassroots efforts.
- You can register and guide first-time BTS buyers
- Ad-supported faucet:
- e.g. Allows you to register a premium name if you complete an offer
- Doubt there would be much interest in this, but it’s interesting nonetheless
- Plain faucets
- Probably what most built-in wallet faucets will look like. (CCEDK, BANX, etc)
- It would have to use either email or social sign-in, to prevent abuse
- Example: https://wallet.mynxt.info/
Example: emailable/printable invite code faucetSomething like this would be
*perfect* for meetups. The basic flow:
- You get a an invite code for 5 BitUSD (via email, meetup, etc)
- Go to btsfaucet.com, type in the redemption code
- Select an account name
- Choose your wallet (CCEDK, BunkerDEX, etc)
- You are redirected to the chosen wallet
- Initialize your wallet, set your password
- Within seconds, your account shows up with a balance of $5
The same scenario, from a more technical standpoint:
- Marketer goes to btsfaucet.com and prints an "invite coupon" for 5 BitUSD
- Receiver of voucher (new user) goes to btsfaucet.com, types in the redemption code
- Faucet guides the user in picking an account name
- Why? The faucet allows the user to dip into their $5 credit to register a premium name
- User selects which wallet they would like to use (CCEDK, BunkerDEX, etc)
- User is redirected to their chosen wallet
- in the URL are 2 parameters: account_name and faucet_callback_url
- Wallet guides user through wallet creation (password, recovery key, etc)
- Wallet adds the (still unregistered) account_name
- Wallet makes a backend call to faucet_callback_url with account_name, account_key, owner_key
- Faucet registers the account, and
- transfers the coupon balance to it
- Done. Account is registered and has a balance of $5.
This is just one way to implement it, but it’s very secure because it does not require users to reveal/migrate their private keys nor for the faucets to be https.
ConclusionThere’s plenty more to cover but I wanted to share my thoughts and start a discussion. I'd love to start coding something (perhaps the invite faucet or tipbot faucet), but there's a lot of unknowns. I'm sure others are in a similar position.
Developers: Are you willing to implement the basic functionality into the web wallet that would make these faucets possible?
Marketers: How do you want to use faucets? What are your plans for 2.0? What tools would help you?
The possibilities of DPOS2 and the referral system are almost
overwhelming. Let’s map it out and narrow it down!