Hey folks,
For a little while now I've been working on creating a simple GUI for SX
(launched from a script: sx-gui.sh), as it is one of the most powerful
Bitcoin utility tools out there. I really think this should have broader
adoption but some some folks may be intimidated by the command line
interface, even though I know it is targeted for the system administrator.
The GUI is nothing special, just using Zenity, which wraps commands in the
terminal to GTK+ dialog boxes in Linux. It hasn't been fully completed yet
(importantly I need to GUI the last step of signing and broadcasting
transactions), but I've already GUI'd a lot of the functionality of SX.
https://github.com/spesmilo/sx/tree/develop/tools
Something I want to highlight is that for creating unsigned offline
transactions, I have added the toption to include what I'm calling a
'charity output' that will send the equivalent of a transaction fee (0.1
mBTC) to a charity or organisation from a preselected list.
So far I've included the following charities/organisation: Sean's Outpost,
Wikileaks, unSYSTEM, Satoshi Nakamoto Institute, TOR project, Free Software
Foundation.
My aim in this is to do a proof of concept for broad scale donations to be
made using other bitcoin clients... hopefully *DarkWallet*.
Roughly 12-14 BTC is collected *every day* in transaction fees (and these
are the early days of Bitcoin). If charity outputting captured even 1% of
this amount, it would benefit both *people *and *Bitcoin *tremendously.
Charity outputting has low marginal costs for the individual and yet a huge
potential to scale if implemented even on a handful of clients.
In terms of press for Bitcoin, now the network would be supporting helpless
and needy, funding and kickstarting projects, and supporting worthwhile
causes of the day. Also, regulating or suppressing Bitcoin threatens to
stop feeding starving children around the world, rather than stopping a
mid-20s white kid from getting high. Of course, this isn't the primary or
even secondary motivation to do this, rather *helping people is*, but it is
auxiliary benefit.
Some positive and negative factors to consider:
1. Mining pools can favor (conversely punish) transactions with a
charitable output
2. Auditing of organisations that are included into the default list of
charitable outputs would have to step up (needs to already)
3. On the negative side, this may give too much power in the hands of
developers in terms of who makes the list or who doesn't... adding the
ability for users to add organisation to this list seems very important in
terms of development and awareness.
4. People may not want to donate larger amounts of bitcoin to
organisations if they opt to fund via charity outputting... this may be
mitigated by sites devoted to tracking charitable outputting to inform the
community.
5. Validating that the addresses on the charitable outputs are/remain
controlled by the organisations... multi-signature addresses seem
to be a *must
*here.
- At the moment, only unSYSTEM is making use of them.
- Plus organisations such as Wikileaks, SNI and TOR issue addresses
on a per user basis, so you shouldn't trust the addresses I put
down in the
code until these organisations have publicly proved that they
control them.
- Using stealth addresses via DarkWallet may be a good idea (purely
in terms of key management from the organisation's POV), but then it
becomes difficult to audit.
I really welcome feedback to discover whether this is a good, bad, or needs
improvement idea... hopefully, whatever the answer is, some people in need
get helped as a result.
-- drwasho