Pages:
Author

Topic: [ANN] Bitcoinocracy.com - Sign your argument with your non-empty Bitcoin address (Read 3570 times)

legendary
Activity: 1260
Merit: 1168
I have created a nice mod for Bitcoinocracy. You have multiple "Questions" with multiple "Answers" each. Every question has a due date, and people can upvote multiple "Answers".
Questions are archived automatically when their due date has come. This way, we can now let the community decide on specific questions that have to be decided democratically.
Feel free to check at: https://github.com/OrdinaryDude/elasticracy

legendary
Activity: 1470
Merit: 1030
Nutocracy is now up and running for HOdlcoin -

https://nutocracy.herokuapp.com/

While Bitcoinocracy hasn't gained enough traction yet in the Bitcoin community to decide issues, I expect we'll see large participation by HOdlers - so we'll have a coin that is directed by its hodlers.

I thought I'd make a note of what changes were required to get it running on Heroku in case any other alts want to implement it -

Some updates to use PostgreSQL
https://github.com/HOdlcoin/nutocracy/commit/0116b73a2ec21acc99e386bb57c9c5e347d9dd55

Null case handled
https://github.com/HOdlcoin/nutocracy/commit/ad153f41abf95b7ead6a29fd501a72b477f5c430

Update to block explorer addresses
https://github.com/HOdlcoin/nutocracy/commit/24cf42d2c5244eec427ee0d7fd6afa14974c0ad2
https://github.com/HOdlcoin/nutocracy/commit/f9467b65e56d5457c9ecaaf9823f4fb7304be086

Quick and nasty fix to make bitcoin-cigs use different address style -
https://github.com/HOdlcoin/bitcoin-cigs/commit/0bdf2c57c9d5ffc30c032abe315cf7b9f1dbe270

*Note: should be possible to update bitcoin-cigs to accept altcoin parameters rather than using a new build.
** Bitcoin-cigs still using 'Bitcoin Signed Message' in signatures, and this must also be reflected in the altcoin signing client. Attempt to update to 'HOdlcoin Signed Message' failed for a reason I could not discern.
full member
Activity: 338
Merit: 101
Enjin Coin - Smart Cryptocurrency for Gaming.
Very good website, i have just used it a few days ago to vote. I love when real democracy is coming out of the crypto tech!
legendary
Activity: 1470
Merit: 1030
Welcome.

Btw, redditors said that in the long run it is not very secure to publish bitcoin signatures made with bitcoin addresses that hold money (https://www.reddit.com/r/btc/comments/4mhjh3/psa_bitcoinocracycom_signatures_expose_your). They proposed a few ideas of how to improve it.

The one I liked for its simplicity is the following:

The weight of the signature made with bitcoin address A could be calculated as the sum of all unspent outputs of all the transactions that originate from A. For the sake of compatibility with the current implementation we could also add the balance of A to that sum.

Shouldn't be too difficult to implement. If somebody does it, please submit a pull request Wink

Thanks - yes, aware of the potential security implications - it's a risk, but one that is smaller with a more experimental altcoin. Might look at ways to tighten up the security over time.

I've got the app deployed to Heroku now -

https://hodlcoinocracy.herokuapp.com/

I haven't changed anything yet - just seeing if I can get it up and running as I'm new to RoR.

I'm getting the first page to display occasionally, but anything else is erroring out -

Only thing I've done is

heroku run rake db:migrate --app hodlcoinocracy

db appears to have 5 tables in it now.


Some log examples -

2016-06-17T12:18:02.014540+00:00 app[web.1]: Processing by ArgumentsController#controversial as HTML

2016-06-17T12:18:02.225735+00:00 app[web.1]: Completed 200 OK in 211ms (Views: 181.9ms | ActiveRecord: 26.7ms)

2016-06-17T12:18:02.208177+00:00 heroku[router]: at=info method=GET path="/" host=hodlcoinocracy.herokuapp.com request_id=ecb611ef-7a07-42c0-be1f-6ec00cb89b46 fwd="146.88.41.168" dyno=web.1 connect=0ms service=227ms status=200 bytes=3790

2016-06-17T12:18:02.596672+00:00 heroku[router]: at=info method=GET path="/assets/application-01ac8e834db29b7d6f7397724b4a1a46.js" host=hodlcoinocracy.herokuapp.com request_id=5638eb5a-ec3f-4458-9b92-8770d08e2164 fwd="146.88.41.168" dyno=web.1 connect=0ms service=13ms status=304 bytes=133

2016-06-17T12:18:02.599312+00:00 heroku[router]: at=info method=GET path="/assets/application-e08c13ca1d734fd99cbdf8ab292f0539.css" host=hodlcoinocracy.herokuapp.com request_id=c9be1fbe-c197-4b64-bef8-4963a4324205 fwd="146.88.41.168" dyno=web.1 connect=1ms service=14ms status=304 bytes=119

2016-06-17T12:18:06.949047+00:00 app[web.1]: Started GET "/arguments/new" for 146.88.41.168 at 2016-06-17 12:18:06 +0000

2016-06-17T12:18:06.953547+00:00 app[web.1]: Processing by ArgumentsController#new as HTML

2016-06-17T12:18:06.942300+00:00 heroku[router]: at=info method=GET path="/arguments/new" host=hodlcoinocracy.herokuapp.com request_id=c1fca481-8143-4018-a6bc-08c18f819b64 fwd="146.88.41.168" dyno=web.1 connect=0ms service=19ms status=500 bytes=1669

2016-06-17T12:18:07.403138+00:00 app[web.1]: Started GET "/arguments/new" for 146.88.41.168 at 2016-06-17 12:18:07 +0000

2016-06-17T12:18:07.405889+00:00 app[web.1]: Processing by ArgumentsController#new as HTML

2016-06-17T12:18:07.391382+00:00 heroku[router]: at=info method=GET path="/arguments/new" host=hodlcoinocracy.herokuapp.com request_id=6c2b8f78-1bd6-4b5a-a969-c84d878fa7fb fwd="146.88.41.168" dyno=web.1 connect=0ms service=13ms status=500 bytes=1669

2016-06-17T12:18:06.953547+00:00 app[web.1]: Processing by ArgumentsController#new as HTML

2016-06-17T12:18:06.942300+00:00 heroku[router]: at=info method=GET path="/arguments/new" host=hodlcoinocracy.herokuapp.com request_id=c1fca481-8143-4018-a6bc-08c18f819b64 fwd="146.88.41.168" dyno=web.1 connect=0ms service=19ms status=500 bytes=1669

2016-06-17T12:18:07.413073+00:00 app[web.1]:   app/controllers/application_controller.rb:13:in `update_bitcoin_balance'

2016-06-17T12:18:07.391382+00:00 heroku[router]: at=info method=GET path="/arguments/new" host=hodlcoinocracy.herokuapp.com request_id=6c2b8f78-1bd6-4b5a-a969-c84d878fa7fb fwd="146.88.41.168" dyno=web.1 connect=0ms service=13ms status=500 bytes=1669

2016-06-17T12:18:06.953547+00:00 app[web.1]: Processing by ArgumentsController#new as HTML

2016-06-17T12:18:07.411881+00:00 app[web.1]: Completed 500 Internal Server Error in 6ms (ActiveRecord: 3.7ms)

legendary
Activity: 1199
Merit: 1012
Welcome.

Btw, redditors said that in the long run it is not very secure to publish bitcoin signatures made with bitcoin addresses that hold money (https://www.reddit.com/r/btc/comments/4mhjh3/psa_bitcoinocracycom_signatures_expose_your). They proposed a few ideas of how to improve it.

The one I liked for its simplicity is the following:

The weight of the signature made with bitcoin address A could be calculated as the sum of all unspent outputs of all the transactions that originate from A. For the sake of compatibility with the current implementation we could also add the balance of A to that sum.

Shouldn't be too difficult to implement. If somebody does it, please submit a pull request Wink
legendary
Activity: 1470
Merit: 1030
That's perfect. Thanks. I think it might be as simple as switching out the block explorers - we'll see how it goes.
legendary
Activity: 1470
Merit: 1030
How easy would it be to adapt Bitcoinocracy for an altcoin? I'd like to set up a HOdlcoinocracy so that HOdlers can vote on the future of the coin.

The community is quite tight-knit, so I'd expect to get a lot of participation. The results would have a good mandate, and would be good to establish user participation in the culture early.

I don't know. Bitcoinocracy relies on the gem 'bitcoin-cigs' (to extract the address from the signature and the signed message) and on a third-party block explorer (to fetch the balance of the address). If your altcoin has a similar gem and a block explorer then it shouldn't be difficult.



Thanks, I'll check that out. If I can get bitcoin-cigs to work for altcoin sigs, should be plain sailing. Smiley

Another question, if I may, does it rely on a locally running block explorer, or can the block explorer be running elsewhere - and where is the block explorer location defined? Thanks!
legendary
Activity: 1470
Merit: 1030
How easy would it be to adapt Bitcoinocracy for an altcoin? I'd like to set up a HOdlcoinocracy so that HOdlers can vote on the future of the coin.

The community is quite tight-knit, so I'd expect to get a lot of participation. The results would have a good mandate, and would be good to establish user participation in the culture early.

I don't know. Bitcoinocracy relies on the gem 'bitcoin-cigs' (to extract the address from the signature and the signed message) and on a third-party block explorer (to fetch the balance of the address). If your altcoin has a similar gem and a block explorer then it shouldn't be difficult.



Thanks, I'll check that out. If I can get bitcoin-cigs to work for altcoin sigs, should be plain sailing. Smiley
legendary
Activity: 1199
Merit: 1012
How easy would it be to adapt Bitcoinocracy for an altcoin? I'd like to set up a HOdlcoinocracy so that HOdlers can vote on the future of the coin.

The community is quite tight-knit, so I'd expect to get a lot of participation. The results would have a good mandate, and would be good to establish user participation in the culture early.

I don't know. Bitcoinocracy relies on the gem 'bitcoin-cigs' (to extract the address from the signature and the signed message) and on a third-party block explorer (to fetch the balance of the address). If your altcoin has a similar gem and a block explorer then it shouldn't be difficult.

legendary
Activity: 1470
Merit: 1030
How easy would it be to adapt Bitcoinocracy for an altcoin? I'd like to set up a HOdlcoinocracy so that HOdlers can vote on the future of the coin.

The community is quite tight-knit, so I'd expect to get a lot of participation. The results would have a good mandate, and would be good to establish user participation in the culture early.
legendary
Activity: 1199
Merit: 1012
a graph to each statement should be added where
can observe both positive, negative values of the statement evolving in time.

I agree, it would be nice to see it evolving in time.

Though I removed the created_at and updated_at fields from the signatures table in order to improve the anonymity, so it is a little harder to implement now  Roll Eyes

Also it would be nice to have some sorting options (not only by "argument validity", but by sum of bitcoins voted or by recent activity).

Quote
also,, how pubkeys are determined from P2PKH hashes is mystery

I didn't quite understand your question, but it is open source, so you can probably find an answer.
newbie
Activity: 4
Merit: 13
a graph to each statement should be added where
can observe both positive, negative values of the statement evolving in time.

also,, how pubkeys are determined from P2PKH hashes is mystery
legendary
Activity: 1199
Merit: 1012
legendary
Activity: 1199
Merit: 1012
Thanks to the author of the argument:

http://bitcoinocracy.com/arguments/this-site-should-filter-out-0-vote-entries-to-remove-spam-and-display-arguments-separately

--- I followed this suggestion to display arguments separately (and added pagination).

Not sure whether there is any sense in filtering out the 0-vote entries since they will be displayed in the end of the list (and eventually moved to the later pages). At the same time the new unvoted entries might benefit from being listed here.

New look:

legendary
Activity: 1199
Merit: 1012
Wow, owners of 143.50137874 BTC support the idea, that's inspiring, thanks!



So what's the next step?

User accounts and bulk signing as proposed in https://github.com/arsenische/bitcoinocracy/issues/5 ?

Enable users to attach links (or even files?) to the arguments upon their creation?

Enable users to define the context (or scope) for the arguments upon their creation?

Integrate with twitter to automatically tweet the new arguments?

anything else?
legendary
Activity: 1199
Merit: 1012
Wow, somebody signed the statement with a bitcoin address that holds 30 btc (and helped to identify the bug with lack of unique constraint), thanks!



Frankly speaking I doubt it too. There was some interest, but it looks like it is insufficient to make any conclusions or the service needs to be improved with user accounts etc. If anybody wants to buy the domain - please let me know your offer.
legendary
Activity: 1199
Merit: 1012
Bitcoin holders doubt that http://bitcoinocracy.com/arguments/bip101-is-better-than-bip100



But only ~0.00004% of bitcoins took part in this voting.

Is there a way to increase this share?
legendary
Activity: 1199
Merit: 1012
There were some votes on http://bitcoinocracy.com/arguments/bip101-is-better-than-bip100 -- so yes, some people use Bitcoinocracy to verifiably express their opinion.

Though there is an embarrassing bug that displays 0 balances and makes voting impossible when blockchain.info is down (as it is now). Hopefully it will be up soon and everything will be back to normal.
(fixed)
legendary
Activity: 1199
Merit: 1012
Quote
Thanks for you suggestion! Do you suggest to display: "9.12659522 Ƀ Believe |  0.0001 Ƀ Doubt" as "9.12659522 Ƀ (0.998904313%) Believe | 0.0001 Ƀ (0.001095687%) Doubt" ?

Yes something like that, you can however round the percentages to say 1 or max 2 decimals.

Its just to give a quick view of what the split.

Thanks for your idea, I implemented it (see http://bitcoinocracy.com/arguments/bitcoin-future-should-be-decided-by-miners).

Also added friendly URLs, social buttons and other minor improvements.

This is a very interesting concept, and it could be a new way of decentralized decision making. At the very least it's a good start.

Thanks for your kind words. I hope to find volunteers to develop this project (to do programming, design, content creation). Still not sure whether it is useful.  Perhaps sometimes it could be an alternative to miners' voting or public discussions (that are often either censored, or have low signal-to-noise ratio).
Pages:
Jump to: