Showing posts with label Reddit. Show all posts
Showing posts with label Reddit. Show all posts

2018-03-15

Fifth year of /r/Bitcoin moderation in review

Continuing the tradition, I would like to once again look at how the last year of /r/Bitcoin moderation played out.

Related topics:


Bitcoin Cash and SegWit forks


There is no denying it - the last year was largely shaped by the two most divisive forks in Bitcoin history - the Bitcoin Cash hard fork and the SegWit soft fork. Both were a culmination of years of the scaling debate buildup. While some believed only one of those forks would survive in the long term, by now it is safe to say - BTC and BCH are both here to stay and the community will be forever divided on this matter.

This split runs quite deep - we have BTC vs BCH, /r/Bitcoin cs /r/BTC, Bitcoin.org vs Bitcoin.com and so on and so on. The hard stance of /r/Bitcoin on the removal of hard fork discussion is partially to blame for the divide being both so serious and so hostile. Perhaps facilitating the discussions would have eased the tensions ahead of time and make the split less of a political dichotomy. Nowadays you only see the former members of the same community hating on one another and wearing being banned from the other camp as a badge of honour.

That is not to say, however, that the subreddit moderators are the only ones to blame. There are a number of other key actors at play here, but who you point fingers at depends on what you want to believe. So here are some possible reasons the forks did play out the way they did.

Potential reasons for the split


First, there is the Covert Asicboost. With Bitmain earning $4B in profits last year, there is clearly a lot of money on the line. If you believe Bitmain might've been using Covert Asicboost in their miners, it would've meant they were in danger of losing a lot of revenue in the SegWit fork, meaning they had a large incentive to create the fork that would preserve their advantage. Even a marginal increase in the amount of coins they could've generated would mean earning potentially millions more.

Secondly, there is SegWit and Blockstream. The company has been working on SegWit for years now, and it was pretty obvious a number of their core technology relied on that functionality being part of Bitcoin. Clearly, they would stand to benefit from Bitcoin forking into SegWit rather than increasing the block size, or even doing both. Employing a number of core devs, they also had some means of blocking other approaches to scaling. Add to that allegations of Blockstream being in the pockets of banks and standing to benefit from full mempool and you start seeing why some people are suspicious. If this side of the story was true, SegWit fork was bound to happen, and people that wanted to preserve Bitcoin that was would either have to not follow through with the fork, or make a fork of their own.

Thirdly, there are always people wanting to make some money opportunistically. Just like with the Ethereum Classic fork, there is some non-zero value to be extracted from the shared chain history. Ramp up the hype, the FUD, roll our some celebrity voices and you will inevitably end up with more money down the line than what you started with, especially if you have a lot of BTC to begin with.

Lastly, there are some people in every community that either want adulation, or want to be seen as the smartest, most important people doing the right thing. They are unwilling to compromise, and if they can get their way, they might just seize the opportunity. You can see them on both sides of the forks now, often talking the loudest and making the boldest statements. Claiming they are the ones chosen to fulfil the vision of Satoshi, that the other side is corrupt and clearly in the wrong.

So what has caused and aggravated the divide? Probably everything mentioned above to one extent or another. Some aspects of the forks were motivated by devs doing their honest best job to make Bitcoin better, some were probably motivated by the money to be made from either of the two solutions. The divide was then probably widened and further aggravated by people wanting to make money on it (perhaps buying up coins from people leaving one side of the fork before promoting that coin into new heights with a new wave of vocal supporters). Then seeing that neither side of the fork will clearly kill off the other, a tribalism equilibrium would be reached:


Two sides forever fighting and talking within their group about how much they hate the other group. Sounds familiar...

And thus we end up where we are today - having two groups that spend a lot of resources hating on one another, demanding clear stances from everyone on which side of the fence they reside, erecting totems of what they hate about the other group and so on and so forth. This approach is clearly more successful, as pretty much nobody is talking anymore about Bitcoin Gold or Bitcoin Diamond, while the first divide is all the rage.

The rest


A lot of other things surrounding the /r/Bitcoin moderation have roots in the above story. SegWit2x discussion was similar to the other forks - mostly removed. You also see periodic waves of spam activities, as well a general increase of the baseline spam activity, all surrounding the promotion of BCH and /r/btc, complaining about the censorship, or trolling the non-Bitcoin-Cash Bitcoin as being a centralised scam or the like. There have been reports of a bot spam attack as well.

Then you sometimes find people that are just asking to be banned:


I guess the only nice thing of note for this year was the quality of memes for when Bitcoin reached 9000 USD/BTC.


Conclusions


In the last year, the Bitcoin community has permanently split itself between BTC and BCH. This divide has grown into a very divisive rivalry between members of a number of communities, including /r/Bitcoin and /r/BTC . By now it's clear the divide will never be fully healed.

2017-01-02

Ideas for Reddit moderation improvements

Awhile back the /r/Bitcoin community got upset over Coinbase CEO talking with Reddit CEO about /r/Bitcoin's moderation and the possibility of removing the moderators of the subreddit. It has been a few months and luckily not much has come of it. However, this got me thinking about how we could improve the moderation of the subreddit, or at least what different approaches could be taken.

None of the points mentioned are meant to be an attack on anyone - thy are merely ideas worth considering in probably many communities, not just ours.

This can be viewed as a continuation from the "On /r/Bitcoin moderation - three years in review" blog post.

Head moderator responsibilities


Everyone has different approaches to moderation. Personally, I find myself starting with a lot of enthusiasm early on and later petering out over time as more people join the team and are able to take on the responsibilities. Being the second moderator on /r/Bitcoin for a long awhile and facing the community backlash at our top moderator gave me an opportunity to think about how I would run things. While this might not be an ideal solution for everyone, here is the approach I might take - focus on being the moderator of moderators and an arbitrator between them, rather than dictating the direction of the subreddit.

My personal approach is that everyone makes mistakes - moderators are no different and I'm no different. The best approach to take is to fill the moderator positions with people that aim to support the community and see it grow. Most importantly, however, those people should be open to discussing and challenging views held by themselves and other moderators as needed. One person might make a mistake, but if five people agree on something, it is less likely to be a mistake. If someone disagrees, it is important that they express their reasoning and let their peers come to a conclusion whether something needs to change or not. Many of the /r/Bitcoin moderators, both past and present luckily are able and do voice their opinions even if it's not in line with the current rules.

Being the top moderator on Reddit gives one the power to control everything in the given community, but in my opinion that power should be used very rarely. Ideally, the top moderator of the subreddit would perhaps only step in if the other moderators are acting against the community and need to be removed. This could mitigate the use of moderation to push one's agenda - if the top moderator doesn't actively moderate, they can't change much to suit their agenda. Other moderators know that if they usurp the community, they will be removed. Thus some balance of power could be reached for the betterment of the community, provided the top moderator could be trusted.

Anonymous discussions


At times the moderators might need to discuss some matter anonymously. Perhaps it would be an issue of removing a certain mod or other controversial topic. Unfortunately, Reddit doesn't leave many options for anonymizing one's conversations while still being certain you're talking with the same group of people. However, here is a simple solution to this problem:

Every moderator would create a random account. They would message someone saying they are a mod, but not reveal their original identity. That person would gather the list of all accounts that messaged them and present the list to the moderation group. Everyone would then acknowledge that the account they created is indeed on that list (without disclosing which account it is). If everyone acknowledges their account being present and the numbers match, you have a list of anonymous account that can be used to discuss anything without worrying about negative repercussions to your other account.

Mod removals


Having the anonymous discussions, it becomes much easier to discuss the removal of fellow moderators in an objective manner. You might want to call someone out on some actions they have taken or their general behaviour and see how other mods feel about the situation without becoming "that guy".

One of the responsibilities for the head mod would be to make sure the proper mods are removed (in case say, they are the second most senior mod that nobody else can remove). But perhaps the biggest mark of greatness for the top mod would be recognising if the community and other mods would not want them to continue at their position and step down like a true Roman Dictator, having put the power in the hands of the next worthy person chosen by the community and the moderators.

Community oversight


Another topic I've heard mentioned a few times comes in the form of insight into moderation logs. While those could probably be disclosed fully, they rarely tell the whole story - a good deal of moderation happens over modmail, which sometimes needs to remain private. It might be good practice to perhaps appoint a few representatives of the community to oversee the moderation process without being full moderators themselves. They would have insight into modmail and moderation logs, but shouldn't be acting as a full moderator. This could reassure some people that the mods aren't conspiring against someone or some company in particular, and it would also provide a good pool of candidates to pick from in case the moderation pool needs to be expanded.

Talking with the community


Communication with the community is important. Whether it's announcing policy changes or just having a general talk once a month, it might be useful to reach out to the community and hear what they have to say. This could boost the community's confidence in the moderators, help address some issues early on and hopefully make the relationships between mods and redditors better than what it sometimes becomes.

Conclusions


Those are some of my thoughts on how moderation in Reddit as a whole could be improved, or at least how I would try to improve it given the chance.

2016-03-23

It's all about trust, context and timeliness - reinventing social media with blockchain

In the recent week after posting about my experience as /r/Bitcoin moderator, doing an AMA on the subreddit, and the subsequent discussion that followed in the related topics (1, 2, 3, 4, 5, 6), I've heard a lot of people voicing their opinion that the way Reddit works is rather broken. This further amplified by the recent research by BashCo into possible vote manipulation that might be going around in our subreddit, as well as a few people noticing that some of the most popular subreddits seem to be both heavily moderating the content about the Brussels terror attack, removing some highly-voted submissions and a lot of comments on the subject. Long story short - it looks like a lot of the discussion on Reddit is swayed and controlled by a handful of people controlling the subreddits (/r/Bitcoin notwithstanding). So would it be possible to reinvent Reddit and similar social media in a way that would make vote manipulation, trolling, spamming and centralization of power irrelevant?

Filter bubbles and Web of Trust


We consume a lot of the media and news. The more relevant something is to our interests, the more likely we are to consume it, so logically a lot of companies try to give us "filter bubbles":


In short, a filter bubble personalizes the news and stories we see in our social media feeds based on what we enjoy and have consumed in the past. If we're pro Bernie Sanders, we might hear more news from /r/SandersForPresident/ rather than from /r/The_Donald/. Companies like Facebook do this more covertly, while Reddit is more explicit about allowing you to subscribe to whichever subreddit sparks your interest the most.

We could use the concept of explicit and personalized filter bubble to figure out what news would be relevant to us. We would have to pick which things we're interested in (tech news, pictures of cute animals, videogames, etc.) to create the "context" for our interests (more on that later). However, this would only be as useful to us as the quality of the content to consume, which can be filled with spam and manipulated. Here is where the idea of Web of Trust comes in.

Web of Trust is a formal way of stating who do you trust, and creating a network of trust-based relationships between the users. This applies to both finding trustworthy websites as well as money. In our context, we would create our digital identity (or multiple identities), and then state which other identities we trust or distrust. Whether it would be family members, celebrities or just some random stranger on the internet posting funny pictures, we could cherry pick who is relevant to our interests. Those people, and the people they are connected with would allow us to access the relevant data feeds.

The Web of Trust can also be resilient against sybil attacks and vote manipulation - it wouldn't matter if I created a million identities and they would all "Like" some post if you wouldn't trust anyone trusting those puppet accounts. Trust could also be diluted in a PageRank fashion - if I trust a million people, I might be less reliable than someone that trusts only a handful.

Context is also important for trust. While I might trust someone to provide me with animated book reviews, I wouldn't be taking technical advise from them. Similarly, if someone was blatantly in opposition to my views, I might explicitly distrust them in that field. This would allow us to mix and match who do we trust and under what circumstances to make our filters and web of trust more explicit. For example, my trust might look like:






[Self]
Videogames
Wrestling
Bitcoin
Astronomy
0.1
0.9
0
0
0
LukeJr
0
0
0
0.2
-1.0

In this example, I would value TotalBiscuit's opinion on videogames to a strong degree - he's a competent critic with years of reputation. While he might also be a fan of wrestling, I don't share his passion for the topic so I'm indifferent to anything he would share in that content. He's not an expert on Bitcoin, so I'd also give him a 0.

LukeJr's opinion on Bitcoin I would trust a bit - he's a competent developer, although his abuse of trust in the Gentoo story leaves something to be desired. Similarly, his view that the Sun orbits the Earth makes me distrust whatever he has to say on the subject of astronomy.

The [self] variable would be a category about the person - in this example I would be interested in hearing a bit about TotalBitscuit's general life (similar to a Twitter feed).

Evaluating content


By establishing our web of trust with the proper context, we can create proper filter bubbles for the content we want to consume. If the web of trust data would be public, say, living on an Ethereum smart contract, we could pre-compute all the values we would assign to everyone relevant to us on a given topic. People we directly trust would get full score, whoever they trust would be counted as a product of the two trusts plus some discount on how far they are away from us. Doing the same for further connection levels we would eventually tend towards zero trust - irrelevance.

Every submitted piece of content would have a context - just like hashtags on Twitter or subreddits on Reddit. Generic content would have a context of the person posting it - just like a Tweet without a hashtag. The content itself could be a post or a link like on Reddit.

Now, when someone would consume a piece of content, they would give it a upvote or a downvote, affecting how the people that trust them would view the content. For every person, the aggregate score of a given piece of content would depend on everyone in their web of trust, and only that. So if I trust say, 10 movie reviewers and they all upvote Cloud Atlas, it would have a score of 10 for me. If they disagreed on The Revenant, it might get a score of 2-3. If someone posts a picture of a cat in the "movie" category, that would get a score of -10 - it might still be a cute picture, but it's not a movie.

Just like on Reddit, the concept of timeliness also needs to be taken into consideration. A lot of people would be interested in getting the latest news and the newest cat memes, so similarly to Reddit the overall position of a submission should fade away with time to leave room for fresh content.

All of these things can be weighted depending on how one wants to browse the data feed. We could see the most relevant submissions, the newest ones, the most controversial, or the top submissions of all times.

Lastly, one's votes on various submissions might also slowly tweak the Web of Trust of that individual. Every upvote might add 0.01 to a trust for a given person in a given context, and every downvote would subtract as much. This way we would organically adjust our filter bubble based on the content we consume discovering new content curators as we go along.

Technical aspects


From a technical perspective, things might be a bit complicated. The biggest challenge I would see for a system like that being deployed on a distributed network with proper cryptography to run everything on would be the overhead. While a simple system would just tally a score for every submission and update it every now and then when new votes come in, here every vote would have to be registered and parsed separately. Seeing how Reddit can have ~30 million votes per month (over 10 votes per second) and 230 million unique visitors, that can mean a lot of data to synchronize. A lot of it could be broken down based on the context - if you're not interested in Bitcoin, you don't have to synchronize the Bitcoin sub-branch, etc.

Probably implementing something like segregated witness could strip a lot of data that could be later pruned off, making the overhead a lot smaller.

One would also need to address the issue of bootstrapping new users onto the system - if only people that someone trusts would have their content viewed, it might mean a lot less content is posted in general. It could be solved for example by proof-of-burn - anyone joining the website could burn some small amount of money (or donate it to the network creators) to gain a bit of reputation from the generic account everyone would trust by default. This would allow users to start growing trust in themselves.

All in all, the concept might look a bit like Synereo, although a bit less focused on absolute reputation scores and tokenization:


Conclusions


The current social media can be heavily controlled and censored by a few individuals. Discourse on Reddit is further hampered by vote manipulation and spam. It might be possible to change how we discover content through the use of public Web of Trust and a decentralized network to submit the content through.

2016-03-14

On /r/Bitcoin moderation - three years in review

In the past few months the moderation of /r/Bitcoin has become a contentious issue. Ever since the ban on discussion of alt-clients like BitcoinXT, the community seems to have fractured into a  few camps, sometimes vilifying one another. I was asked to clarify where I stand on this and a few other issues, so I might as well roll a few /r/Bitcoin-related topics into a blog post for future reference.

The XT censorship


As many /r/Bitcoin moderators might tell you, the decision to censor BitcoinXT was made solely by Theymos. Along with justification as to why this would happen, the message was pretty clear:

"[...] I currently intend to remove all XT submissions single-handedly if necessary, and to remove any moderator who undoes my actions, even if all other /r/Bitcoin moderators disagree."

Some moderators decided to quit out of principle, others found out later that Theymos wasn't kidding with the threat of removals.

So, the big question a few people have asked me - what is my stance on the matter?

My stance


I had a few phases of thinking as I learned more and more about XT. In my initial reaction - I was against the censorship of BitcoinXT - it was a project by a respected Bitcoin developer and it was proposing changes that needed to happen.

After debating it with Theymos and learning his point of view - I agreed with his logic that XT could be considered an altcoin that branches off of Bitcoin and that in future we could have similar forks by less reputable developers that change other contentious parts of Bitcoin - coin limit, redlisting, etc. However, that still wasn't the full story.

I've reached my final conclusions after discussing the topic with the community and learning that BitcoinXT would only fork when it is in the super-majority and becomes the de-facto Bitcoin network. For me, that was a good enough reason to not consider XT and similar clients altcoins - they don't just fork in a "revolution" and create their own network at a whim, but instead they take a reformist approach of winning the network over in a more "evolutionary" approach.

So in the end, my stance is - a client that attempts to introduce a hard fork into Bitcoin through super majority should be on topic for /r/Bitcoin.

As such, I have never removed any such topic or discussion, and I am participating in both the /r/Bitcoin subreddit, as well as the alternatives of /r/bitcoin_uncensored and /r/btc .

Unfortunately, even if I'm in favour of allowing discussion of BitcoinXT and similar clients, this decision is not in my hands. Which leads to another question - why don't I resign in protest?

Protesting


Some people have suggested that I and other moderators should resign in protest against the censorship rules. I personally disagree with this logic on the following basis - if you resign, you are showing that you don't support a given decision, but once you're out, you've basically done everything you could in the matter. You will get replaced by another mod sooner or later, and the capacity of a subreddit to function will be restored. The only difference you will make is to remove the voice of opposition from the pool of moderators, hurting your position in the long run.

So my approach is to remain a /r/Bitcoin moderator, continue moderating it like I was doing up until now, stick to my conviction of not censoring the discussion of BitcoinXT and similar clients, and voice my disagreement with the policy as appropriate in the future.

It might not be as glamorous as taking an umbrage, throwing a tantrum and leaving the moderation team as some would prefer, but this is the approach I prefer.

"Lets not moderate anything" - a day in life of a moderator


Every now and then, some people propose that we shouldn't moderate any discussion on /r/Bitcoin or similar subreddits. While the idea might be in-line with the semi-anarchist nature of Bitcoin, it doesn't really work. This is what moderation has to deal on a daily basis:


Sometimes, the spam is more organized - there are some communities that use Reddit for promoting their coin of choice. Over at /r/CryptoCurrency for example, we had to start limiting Reddcoin spam because the astroturfing was getting out of hand.

Some of the spam moderation can be automated - we have a fairly extensive automoderator script running on /r/Bitcoin that takes care of a lot of bad submissions for us.

When we're not dealing with spam, we're dealing with trolls. Some people would see this as more of censorship, but the truth is - too many trolls can spoil the community and drive away the good people you want to have around. A few years back I had a conversation with one of the "Bitcoin celebrities", and he told me that he doesn't post in /r/Bitcoin any more because of a number of trolls dogging him each time he posts. Trolls can also derail conversations and generally make the comment section a place you don't really want to venture into.

Initially /r/Bitcoin didn't ban anyone - Theymos was against it years back since the same trolls can come back again and again under new usernames. However, after getting a lot of complaints about a single, prolific troll, we started banning the trolls. The guy in question went through a lot of different usernames, got banned reddit-wide and even had to resort to switching IPs to avoid IP bans. While as it turns out - we didn't manage to drive him off completely (he resurfaced in some comment section a year or two after we started banning him to have a small chat), we did manage to make him lose interest in trolling every thread on the subreddit.

The last activity that takes up a bulk of moderation is answering to people complaining. Some rightfully so when their submission gets caught in some spam filter when it shouldn't, some less so when they decide to tell us that we can go and die since we won't be able to ban all of their accounts.

The remaining 1% of time of being a mod is where everything else happens - discussing rules, answering some questions, etc.

All in all, moderation is a pretty boring, thankless job.

A comic on Reddit moderation

Bitcoin memes and my biggest mistake


Now that we've talked about /r/Bitcoin censorship and how moderation works, let's talk about memes. Reddit and memes seem to go together hand in hand. However, this doesn't always work for every situation. If you want to have a subreddit focused on having serious discussions, memes can have a detrimental effect.

Checking out a photo or reading some short, witty meme can take a few seconds, after which a user would be able to vote confidently whether something is good or not. Page-long thought-provoking discussion about the meaning of live, the universe and everything on the other hand can take minutes to read before someone can say whether they consider the submission good or not. Because of this, memes get more upvotes faster, meaning they bubble up to the front of Reddit, getting even more exposure and votes, drowning bigger posts in their wake.

Worse than that, people then turn around and proclaim "memes seem to get a lot of upvotes, which must mean this is what the subreddit wants!". This can create a further self-fulfilling prophecy. The argument also ties to the above mentioned notion that we should just use votes to decide what should be posted on a given subreddit. Here is a comic explaining this.

This is why some communities choose to ban memes altogether - moderation and removing submission is not about what gets the most / least votes, it's about what fits the given subreddit. How does this fit in to /r/Bitcoin?

Bitcoin memes


Bitcoin and memes have a complicated relation. Some people believe that Bitcoin should be all about serious business and memes have no place in /r/Bitcoin. Others embrace the internet culture and the light-hearted nature of Bitcoin that has been around ever since the Alpaca Socks (heck, a meme is the origin of Dogecoin). As far as anyone can tell, the community is pretty evenly divided on this issue - none of the sides are in a decisive majority. So while we have a meme-centric Bitcoin subreddit, /r/Bitcoin is also welcoming of the memes and silly photos.

Most of the time, the subreddit is fairly balanced and you don't have a flood of memes. This, however, changes every now and then....

Price memes


Bitcoin price meme, circa late 2013

When the Bitcoin price swings rapidly, the Bitcoin subreddit tends to fill with numerous posts of either elation or woe. There are numerous posts shouting out the newest price (usually 5-10 of very similar posts at a time). Understandably enough, there were a lot of people that didn't like when this happened and called for ban on memes. One such person, with his post on 2013-12-07 was /u/ShakeThatBass .

For those that haven't been around /r/Bitcoin in 2013, that username might not mean much. ShakeThatBass was an anonymous early Bitcoiner that organized one of the biggest Bitcoin givaways in history, giving away 350BTC (worth at the time $7000) through Bitcointip to people that donated to various charities. The giveaway was held on 2013-03-04 on /r/Bitcoin. This act of generosity has earned him a lot of respect from a lot of people, myself included.

Back to price memes. So having read his highly-upvoted post 11 days prior, on 2013-12-18, when the "news" of China cracking down on Bitcoin was swung he price plummeting down to about $500 from the high of $1100 just two weeks prior, a number of Bitcoin price memes started to surface again. Then, I made a decision that I still consider my biggest mistake in my /r/Bitcoin moderating career - I issued a temporary ban on memes and price posts that lasted for about a day.

The decision came only from myself (no other mods were consulted), driven by the will of the community. When the dust settled and everything got calmer, I learned an important lesson in moderation and added another rule for myself to follow - don't make big decisions single-handedly. Everyone makes mistakes and at the heat of the moment a decision might seem justified, but other peoples may disagree. This is why when it comes to important moderation decisions I consult with other mods to hear their opinion and see if they agree - now even if I'm the second most senior mod I wouldn't do such things again without another mod's backing. While not necessary for the mundane mod chores like approving / removing submissions or banning obvious trolls, it is useful for the big decisions.

Moderation consistency


The last rule I follow is moderation consistency. /r/Bitcoin is currently moderated by 10 people and one bot. Everyone can have their opinion on various matters, but at the end of the day we have to act consistently to avoid moderation wars:

Months of moderation wars for Tonal Bitcoin discussion page between Luke-JR and Aleš Janda.

To avoid such petty squabbles, moderators should first discuss a contentious issue and then apply the consensus in practice (or at least, become a conscientious objector, rather than engaging in mod wars), even if they hold an opposing view. Whether it comes to banning trolls, removing spammy websites or the like, consistency is important.

Conclusions


Being a subreddit moderator is a thankless job. It takes a lot of work to remove spam and trolls. Sometimes we make important moderation decisions, and sometimes we make mistakes in our judgement like everyone else.

Overall, my personal moderation stance is as follows:


  • Moderation is essential for combating spam and trolls, as well as keeping the subreddit on-topic
  • Moderation consistency is very important and mod wars should be avoided
  • Important decisions on moderation and the direction of a subreddit should be made by at least two moderators, or a consensus for really big decisions
  • I disagree with the ban on BitcoinXT and similar clients, but for moderation consistency, I remain a conscientious objector
  • I don't believe in leaving a moderation team over a disagreement on moderation policy as it can remove the voice of opposition from the future discussions
  • Everyone makes mistakes, admitting to them is not the end of the world


I hope this covers some of the questions people might've had over the last three years of me being a /r/Bitcoin moderator and gives something for other cryptocurrency subreddit moderators to think about.

2015-11-19

21 Bitcoin Computer - the Macintosh of Bitcoin

It looks like the 21 Bitcoin Computer has began shipping recently for $400 apiece. Moreover, we also got a few extra bits of information from the 21.co website about some features and solutions of the machine and the ecosystem in general. Since guessing the business model of 21 Inc seems to be everyone's favourite activity for about half a year now, lets not waste any more time and dig right in.

The hardware


First of all, we've got some photos of the actual machine. The packaging looks good, the mining component of the device looks sleek and elegant, while the actual computer is a standard Raspberry Pi 2 (according to the FAQ). Strange it doesn't come in a case, especially given that even their setup steps seem to be aware that this might cause some problems:



The 21 Computer's mining chip appears to have the following specs:

  • 0.16 Joules per Gigahash
  • 50 Gigahashes per second
At the moment there don't appear to be any upgrade / swap options for the machine.

This seems to put it in the same category as Antminer U3 Batch 2 - currently selling for $20 and clocking in at 63GH/s. The energy efficiency is rather odd - comparing it to existing solutions, it would be at roughly 6250 MHash/J, while the top performer, AntMiner S7 performs at 4000 MHash/J. This would seem to suggest the chip is underclocked to be more efficient.

This is a little ironic coming from a company that wants to put mining chips into mobile devices - if you're worried about the power efficiency of a device that runs straight from a power adapter, and yet you want to include extra power hungry hardware in devices that run off battery power...

At any rate, this puts the value of the whole package at under $100 (with the Rapsberry Pi 2 along with all the extras selling for about $70 at the moment). But, the hardware isn't everything, so lets look at what else we get with the 21 Computer.

The Software


It looks like the 21Inc's software is quite packed with features. The CLI looks exhaustive, you can run a full Bitcoin node, you have your wallet, etc. We have some reports of people running things like the Open Bazaar project on the device just fine.

All in all, it looks like the software is the meat of the package. I've seen a number of people being interested in the software component more so than the whole package itself. Luckily, it seems that one can get the whole open source software without having to buy the 21 Computer:

> curl https://install.21.co/bitcoin-computer/install.sh | sudo bash

Beyond that, I personally don't have much else to say about the software in general. It looks to be delivering on what it's promising in one neat package.

The Rest


Beyond the hardware and software, it looks like (at least for now during the launch week) 21Inc has some responsive consumer service, which is great to know. If some people get into Bitcoin because of this computer, this can be a very valuable service to make sure they stay interested in the service.

The 21 website has a few interesting tutorials on what could be done with the software. Moreover, with the $200 tutorial bounty, we can expect to see more articles popping up over time.

Beyond that, we come into some more interesting nuggets of what could either be something really insignificant in the future, or perhaps will end up as a starting point for something more insidious...

The Quirky


Wallets

It seemed that from the very beginning, 21Inc was aiming to sell everyone on the idea of combining Bitcoin mining with Internet of Things. However, as I discussed almost half a year ago exactly, this makes no economic sense whatsoever. Mining dust wouldn't even cover for the transaction fees, much less amount to anything useful.

However, in their tutorial on micropayments, we can see that probably the encouraged method of transferring money between individuals won't be the Bitcoin network itself, but the so called "BitTransfers", which looks like a fancy way of saying "shared ewallet transfers". In other words, 21Inc is building itself up to be something like CoinBase for the IoT world - settling peer-to-peer transactions using its centralized database.

Mining

Now, to load the wallet, one would of course mine the coins using the 21 Computer. Even in this area could be spruced up with some marketing talk, as we go into the mining tutorial and "buffered pool mining". 

We start with a time lesson talking about transitioning between CPU mining into pool mining when one couldn't realistically mine a block by themselves. Pooled mining allowed one to reduce the reward variance (without the pool, you either got a whole block and 50BTC, or no block and no reward, while pooled mining allowed you to get a fraction of the reward, but at a more regular pace). 

Afterwards, we seem to get a vision of what 21Inc wants to sell as the vision for its computers - "redecentralizing Bitcoin" by the use of "millions of mining chips worldwide each generate a small stream of bitcoin" as they believe the ASIC chip development will start following the Moore's law in the near future.

However, since the default way (and possibly the only way without modifying the software) to mine on the 21 Computer is to connect to the 21Inc's pool and receive the dust rewards in your 21 shared ewallet, it's not really a decentralization of mining as it is adding another central server to the equation.

Perhaps if we would instead see P2Pool on the device we could call it an effort in the right direction, but then you wouldn't be able to solve the mining variance problem very well, nor would you lock people into your walled garden of an ecosystem.

In the next section we get another new buzzword - "Buffered Pool Mining". You see, 21Inc believes that if you're mining in a pool, you will have to wait:
  • For the pool to mine a block before you get paid
  • To mine enough coins to reach the minimum withdrawal threshold
  • For the block to mature over 100 confirmations before you can get paid
  • To earn bitcoins before you can spend them again if you run out

Instead, 21Inc essentially combines its shared ewallet with the circa 2011 BitPenny's idea of Pay-per-share. As described in the Bitcoin Wiki:

The Pay-per-Share (PPS) approach, first described by BitPenny, is to offer an instant flat payout for each share that is solved. The payout is offered from the pool's existing balance and can therefore be withdrawn immediately, without waiting for a block to be solved or confirmed. The possibility of cheating the miners by the pool operator and by timing attacks is thus completely eliminated. 
This method results in the least possible variance for miners while transferring all risk to the pool operator. The resulting possibility of loss for the server is offset by setting a payout lower than the full expected value.

I wonder how hardened is the 21 mining pool against what an attacker with a state-of-the-art mining rig could throw at it...

But we also get one more interesting feature, which is essentially Bitcoin, lets say, nanolending:

Finally, you do not need to send N hashes to the server before getting N hashes worth of mined bitcoin. That is, by invoking 21 mine your 21 Bitcoin Computer can receive bitcoin in advance of future mining at the expense of a small asymptotic slowdown in the rate of bitcoin streamed to your device.

Which considering the price tag of the machine is still rather amusing.

We conclude the tutorial with:

The basic idea is that buffered pool mining is a new way of getting bitcoin: not by buying huge quantities slowly for investment purposes on an exchange, but by mining tiny quantities rapidly for programming purposes at the command line, rate-limited by a mining chip.

I guess someone forgot the middle-ground of being able to buy a small amount of BTC, for example by phone, getting small amounts of coins for free (through facets or by signing up to various wallets), or if you're really a developer, using TestNet Bitcoins.

Anything else?


As someone that frequents the Bitcoin-related subreddits, I noticed a large amount of submissions about the device recently. That's to be expected when a new, big product launches and everyone gets their hands on it. However, some of the submissions and discussion appears to be somewhat astroturfed. Submissions titled "Whoa" that aren't some Shiba Inu memes generally don't do very well on a crypto subreddit. Cynical quips usually stick better, you rarely see people talking in bold (1, 2), and hardware is rarely inspirationally compared to some major milestones in commercial computing. Even the self-post appear a bit defensive (1, 2). My money would be on at least some of the sentiment being not entirely as grassroots as it might appear in the first place...

Conclusions


Coming back to the title of my post - 21 Bitcoin Computer to me looks like a Macintosh Computer for Bitcoin - an overpriced, underpowered piece of hardware coupled with some decent software. It appears to be building the roots of a walled garden of closed-loop wallets and related ecosystems. If you're a developer, you can do better, both in terms of mining performance, computing speed and price for a throwaway machine for testing. Their software and related articles appear to be the main piece of value added.

For $400, even for a "dev kit" as it's sometimes advertised, I would still rather buy some BTC (by "buying huge quantities slowly for investment purposes on an exchange" - which would still be a smaller investment than the machine) instead of committing to mining. But perhaps it's like some random comment said on Reddit - "the investment will get you to commit to using it".

Related discussions: