Public Electrum servers are run by volunteers. Volunteer server operators require modern hardware, which is costly to procure and maintain. In my opinion, operating Electrum servers would be more popular to do if there was a higher chance of receiving BTC donations for doing so.
<fluffypony>
https://blockchain.info/address/1Lhxa6VfBwFbVN2ovZEYfCobZGNfefntG7<fluffypony> one lone donation in February
* ovidiusoft (~ovidiusof@188.27.121.252) has joined #electrum
<fluffypony> nobody reads the console and thinks about donating
<toastee> perhaps the electrum project should host some sort of distributed donation pool for their server hosts
<toastee> and make it a bit more prominent in the client
<fluffypony> toastee: yeah but then how do you distribute funds? based on the servers reporting their activity (easily faked)?
<toastee> mmm true.
<mr_burdell> fluffypony: oops... that's not a donation... I accidentally reused an address
<fluffypony> mr_burdell: lol
<fluffypony> well there you go
<toastee> haha
<fluffypony> so not even a single donation
<toastee>
<fluffypony> even Eagle[TM]'s server
<fluffypony>
https://blockchain.info/address/1Mn8D4Esq6kyhQTG5debML3uqXp9JqeTQN<fluffypony> 0.011 BTC in donations
<fluffypony> it's a joke
I would like to open the conversation in regards to improving the Electrum server op donation system. I only advocate UX improvements. I don't think there is all that many technical changes required. I think it would be realistic to tackle this with minimal UX friction, and without adding any mandatory fees to Electrum.
I think the optimal solution would be voluntary. Voluntary donations to Electrum server ops should be easier to do, and more compelling to do, so as to make them happen in larger amounts and with higher frequency.
Today, it's quite hard to donate to server ops, even if you want to. There's no official UI flow for donating to server ops, and it's really not something that is directly supported in Electrum beyond it being a wallet which is capable of sending donations. Like I've outlined with
Electrum plugins, few understand that Electrum plugins exist, and few know that Electrum server ops exist and are real people. If they do know servers exist, they don't know who is running them, and they don't have an easy way to donate.
Users can't tell one server op from another without expending effort on research. Or they just aren't aware the client-server op relationship exists. Server ops are given ASCII text on a console window but most users don't venture there, and if on the off chance they do venture there, it takes effort to track down the donation address and subsequently make the donation. This isn't what mainstream users are used to. It results in very low conversion rates on donations when they are intended, and very low chance of donations happening in the first place.
In theory, since Electrum servers depend on Bitcoin full nodes, a solution that increases Electrum server op donations could have the indirect benefit of making Bitcoin full nodes more profitable to run. Here is the one option I see working to this end:
- server ops write a very short "About Me" description, probably < 512 chars
- after Electrum users send coins, declare a >20% chance that an auxiliary menu is displayed if and only if there is a non-zero number of BTC remaining in the wallet less the amount to be sent
- the coins are sent as per usual
- if and only if the menu is to be displayed, it should show the server op's About Me text plus an option to donate, or "No Thanks"
- the autoconnect server menu popup could also feature short bios on server ops.
This screen is a missed chance at building relationship with ops
Our
in-house UX expert may have some ideas here, too.
The overall goal is to give server ops a better chance at building the relationship with Electrum users.
Since it's possible to select a specific Electrum server to rely upon, users, after learning more about server ops, will choose favorites and be more likely to donate to their favorites.
To conclude, the only way I see things improving for server ops is if we make a concerted effort to have users build relationships with server ops and then prompt them to act upon the increased trust and credibility. Done right, it could end up making it much more profitable to run full nodes and impose few new technical changes of Electrum client.