Infectious Disease Expert: Casinos Considered Low To

what time does downstream casino open today

what time does downstream casino open today - win

An attempt at a fully comprehensive look at how to scale bitcoin. Lets bring Bitcoin out of Beta!

 
WARNING THIS IS GOING TO BE A REALLY REALLY LONG POST BUT PLEASE READ IT ALL. SCALING BITCOIN IS A COMPLEX ISSUE! HOPEFULLY HAVING ALL THE INFO IN ONE PLACE SHOULD BE USEFUL
 
Like many people in the community I've spent the past month or so looking deeply into the bitcoin scaling debate. I feel there has never been a fully comprehensive thread on how bitcoin could scale. The closest I have seen is gavinandresen's medium posts back in the summer describing the problem and a solution, and pre-emptively answering supposed problems with the solution. While these posts got to the core of the issue and spawned the debate we have been having, they were quite general and could have used more data in support. This is my research and proposal to scale bitcoin and bring the community back together.
 
 
The Problem
 
There seems to me to be five main fundamental forces at play in finding a balanced solution;
  • 'node distribution',
  • 'mining decentralisation',
  • 'network utility',
  • 'time',
  • 'adoption'.
 
 
Node Distribution
Bandwidth has a relationship to node count and therefore 'node distribution'. This is because if bandwidth becomes too high then fewer people will be able to run a node. To a lesser extent bandwidth also effects 'mining decentralisation' as miners/pool owners also need to be able to run a node. I would argue that the centralisation pressures in relation to bandwidth are negligible though in comparison to the centralisation pressure caused by the usefulness of larger pools in reducing variance. The cost of a faster internet connection is negligible in comparison to the turnover of the pools. It is important to note the distinction between bandwidth required to propagate blocks quickly and the bandwidth required to propagate transactions. The bandwidth required to simply propagate transactions is still low today.
New node time (i.e. the time it takes to start up a new node) also has a relationship with node distribution. i.e. If it takes too long to start a new node then fewer people will be willing to take the time and resources to start a new node.
Storage Space also has a relationship with node distribution. If the blockchain takes up too much space on a computer then less people will be willing to store the whole blockchain.
Any suitable solution should look to not decrease node distribution significantly.
 
Mining Decentralisation
Broadcast time (the time it takes to upload a block to a peer) has a relationship with mining centralisation pressures. This is because increasing broadcast time increases the propagation time, which increases the orphan rate. If the orphan rate it too high then individual miners will tend towards larger pools.
Validation time (the time it to validate a block) has a relationship with mining centralisation pressures. This is because increasing validation time increases the propagation time, which increases the orphan rate. If the orphan rate it too high then individual miners will tend towards larger pools.
Any suitable solution should look to not increase mining centralisation significantly.
 
Network Utility
Network Utility is one that I find is often overlooked, is not well understood but is equally as important. The network utility force acts as a kind of disclaimer to the other two forces. It has a balancing effect. Increasing the network utility will likely increase user adoption (The more useful something is, the more people will want to use it) and therefore decreasing network utility will likely decrease user adoption. User adoption has a relationship with node count. i.e. the more people, companies and organisations know about and use bitcoin, the more people, companies and organisations that will run nodes. For example we could reduce block size down to 10KB, which would reduce broadcast time and validation time significantly. This would also therefore reduce mining centralisation pressures significantly. What is very important to realise though is that network utility would also be significantly be reduced (fewer people able to use bitcoin) and therefore so would node distribution. Conversely, if we increased the block size (not the limit) right now to 10GB, the network utility would be very high as bitcoin would be able to process a large number of transactions but node distribution would be low and mining centralisation pressures would be high due to the larger resource requirements.
Any suitable solution should look to increase network utility as time increases.
 
Time
Time is an important force because of how technology improves over time. Technology improves over time in a semi-predicable fashion (often exponential). As we move through time, the cost of resources required to run the bitcoin network (if the resource requirements remained static) will decrease. This means that we are able to increase resource requirements proportional to technological improvements/cost reductions without any increase in costs to the network. Technological improvements are not perfectly predictable though so it could be advantageous to allow some buffer room for when technological improvements do not keep up with predictions. This buffer should not be applied at the expense of the balance between the other forces though (i.e. make the buffer too big and network utility will be significantly decreased).
 
 
Adoption
Increasing adoption means more people using the bitcoin/blockchain network. The more people use bitcoin the more utility it has, and the more utility Bitcoin has the more people will want to use it (network effect). The more people use bitcoin, the more people there that have an incentive to protect bitcoin.
Any suitable solution should look to increase adoption as time increases.
 
 
The Solution Proposed by some of the bitcoin developers - The Lightning Network
 
The Lightning Network (LN) is an attempt at scaling the number of transactions that can happen between parties by not publishing any transaction onto the blockchain unless it is absolutely necessary. This is achieved by having people pool bitcoin together in a "Channel" and then these people can transact instantly within that channel. If any shenanigans happen between any of the parties, the channel can be closed and the transactions will be settled on the blockchain. The second part of their plan is limit the block size to turn bitcoin into a settlement network. The original block size limit of 1MB was originally put in place by Satoshi as an anti-DOS measure. It was to make sure a bad actor could not propagate a very large block that would crash nodes and increase the size of the blockchain unnecessarily. Certain developers now want to use this 1MB limit in a different way to make sure that resource requirements will stay low, block space always remains full, fees increase significantly and people use the lightning network as their main way of transacting rather than the blockchain. They also say that keeping the resource requirements very low will make sure that bitcoin remains decentralised.
 
Problems with The Lightning Network
The LN works relatively well (in theory) when the cost and time to publish a set of transactions to the network are kept low. Unfortunately, when the cost and time to publish a set of transactions on the blockchain become high, the LN's utility is diminished. The trust you get from a transaction on the LN comes only from the trustless nature of having transactions published to the bitcoin network. What this means is that if a transaction cannot be published on the bitcoin network then the LN transaction is not secured at all. As transactions fees rise on the bitcoin blockchain the LN utility is diminished. Lets take an example:
  • Cost of publishing a transaction to the bitcoin network = $20
  • LN transaction between Bob and Alice = $20.
  • Transaction between Bob and Alice has problem therefore we want to publish it to the blockchain.
  • Amount of funds left after transaction is published to the blockchain = $20 - $20 = $0.
This is also not a binary situation. If for example in this scenario, the cost to publish the transaction to blockchain was $10 then still only 50% of the transaction would be secure. It is unlikely anyone really call this a secure transaction.
Will a user make a non-secured/poorly secured transaction on the LN when they could make the same transaction via an altcoin or non-cryptocurrency transaction and have it well secured? It's unlikely. What is much more likely to happen is that transaction that are not secured by bitcoin because of the cost to publish to the blockchain will simply overflow into altcoins or will simply not happen on any cryptocurrency network. The reality is though, that we don't know exactly what will happen because there is no precedent for it.
Another problem outside of security is convenience. With a highly oversaturated block space (very large backlog of transactions) it could take months to have a transaction published to the blockchain. During this time your funds will simply be stuck. If you want to buy a coffee with a shop you don't have a channel open with, instead of simply paying with bitcoin directly, you would have to wait months to open a channel by publishing a transaction to the bitcoin blockchain. I think your coffee might be a little cold by then (and mouldy).
I suggest reading this excellent post HERE for other rather significant problems with the LN when people are forced to use it.
The LN is currently not complete and due to its high complexity it will take some time to have industry wide implementation. If it is implemented on top of a bitcoin-as-a-settlement-network economy it will likely have very little utility.
 
Uses of The LN
The LN is actually an extremely useful layer-2 technology when it is used with it's strengths. When the bitcoin blockchain is fast and cheap to transact on, the LN is also extremely useful. One of the major uses for the LN is for trust-based transactions. If you are transacting often between a set of parties you can truly trust then using LN makes absolute sense since the trustless model of bitcoin is not necessary. Then once you require your funds to be unlocked again it will only take a short time and small cost to open them up to the full bitcoin network again. Another excellent use of LN would be for layer-3 apps. For example a casino app: Anyone can by into the casino channel and play using real bitcoins instantly in the knowledge that is anything nefarious happens you can instantly settle and unlock your funds. Another example would be a computer game where you can use real bitcoin in game, the only difference is that you connect to the game's LN channel and can transact instantly and cheaply. Then whenever you want to unlock your funds you can settle on the blockchain and use your bitcoins normally again.
LN is hugely more powerful, the more powerful bitcoin is. The people making the LN need to stick with its strengths rather than sell it as an all-in-one solution to bitcoin's scaling problem. It is just one piece of the puzzle.
 
 
Improving Network Efficiency
 
The more efficient the network, the more we can do with what we already have. There are a number of possible efficiency improvements to the network and each of them has a slightly different effect.
 
Pruning
Pruning allows the stored blockchain size to be reduced significantly by not storing old data. This has the effect of lowering the resource requirements of running a node. a 40GB unpruned blockchain would be reduced in size to 550MB. (It is important to note that a pruned node has lower utility to the network)
 
Thin Blocks
Thin blocks uses the fact that most of the nodes in the network already have a list of almost all the same transactions ready to be put into the blockchain before a block is found. If all nodes use the same/similar policy for which transactions to include in a block then you only need to broadcast a small amount of information across the network for all nodes to know which transactions have been included (as opposed to broadcasting a list of all transactions included in the block). Thin Blocks have the advantage of reducing propagation which lowers the mining centralisation pressure due to orphaned blocks.
 
libsecp256k1 libsecp256k1 allows a more efficient way of validating transactions. This means that propagation time is reduced which lowers the mining centralisation pressure due to orphaned blocks. It also means reduced time to bootstrap the blockchain for a new node.
 
Serialised Broadcast
Currently block transmission to peers happens in parallel to all connected peers. Obviously for block propagation this is a poor choice in comparison to serial transmission to each peer one by one. Using parallel transmission means that the more peers you have, the slower the propagation, whereas serial transmission does not suffer this problem. The problem that serial transmission does suffer from though is variance. If the order that you send blocks to peers in is random, then it means sometimes you will send blocks to a peer who has a slow/fast connection and/or is able to validate slowly/quickly. This would mean the average propagation time would increase with serialised transmission but depending on your luck you would sometimes have faster propagation and sometimes have slower propagation. As this will lower propagation time it will also lower the mining centralisation pressure due to orphaned blocks. (This is just a concept at the moment but I don't see why it couldn't be implemented).
 
Serialised Broadcast Sorting
This is a fix for the variance that would occur due to serialised broadcast. This sorts the order that you broadcast a block to each peer into; fastest upload + validation speed first and slowest upload speed and validation speed last. This not only decreases the variance to zero but also allows blocks to propagation to happen much faster. This also has the effect of lowering the mining centralisation pressure due to orphaned blocks. (This is just a concept at the moment but I don't see why it couldn't be implemented).
 
Here is a table below that shows roughly what the effects these solutions should have.
Name Bandwidth Broadcast Time Validation Time New Node Time Storage Space
Pruning 1 1 1 1 0.014
Thin Blocks 0.42 0.1 0.1 1 1
libsecp256k1 1 1 0.2 0.6 1
Serialised Broadcast 1 0.5 1 1 1
KYN 1 0.75 1 1 1
Segregated Witness 1 1 1 0.4 1
TOTAL 0.42 0.0375 0.02 0.24 0.014
Multiplier 2.38 26.7 50 - 70
(The "multiplier" shows how many times higher the block size could be relative to the specific function.)
 
 
The Factors in Finding a Balanced Solution
 
At the beginning of this post I detailed a relatively simple framework for finding a solution by describing what the problem is. There seems to me to be five main fundamental forces at play in finding a balanced solution; 'node distribution', 'mining decentralisation', 'network utility', 'time' and 'adoption'. The optimal solution needs to find a balance between all of these forces taking into account a buffer to offset our inability to predict the future with absolute accuracy.
To find a suitable buffer we need to assign a set of red line values which certain values should not pass if we want to make sure bitcoin continues to function as well as today (at a minimum). For example, percentage of orphans should stay below a certain value. These values can only be a best estimate due to the complexity of bitcoin economics, although I have tried to provide as sound reasoning as possible.
 
Propagation time
It seems a fair limit for this would be roughly what we have now. Bitcoin is still functioning now. Could mining be more decentralised? Yes, of course, but it seems bitcoin is working fine right now and therefore our currently propagation time for blocks is a fairly conservative limit to set. Currently 1MB blocks take around 15 seconds to propagate more than 50% of the network. 15 second propagation time is what I will be using as a limit in the solution to create a buffer.
 
Orphan Rate
This is obviously a value that is a function of propagation time so the same reasoning should be used. I will use a 3% limit on orphan rate in the solution to create a buffer.
 
Non-Pruned Node Storage Cost
For this I am choosing a limit of $200 in the near-term and $600 in the long-term. I have chosen these values based on what I think is a reasonable (maximum) for a business or enthusiast to pay to run a full node. As the number of transactions increases as more people use bitcoin the number of people willing to pay a higher price to run a node will also increase although the percentage of people will decrease. These are of course best guess values as there is no way of knowing exactly what percentage of users are willing to pay what.
 
Pruned Node Storage Cost
For this I am choosing a limit of $3 in the near-term (next 5 years) and $9 in the long-term (Next 25 years). I have chosen these values based on what I think is a reasonable (maximum) for normal bitcoin user to pay. In fact this cost will more likely be zero as almost all users have an amount of storage free on their computers.
 
Percentage of Downstream Bandwidth Used
This is a best guess at what I think people who run nodes would be willing to use to be connected to the bitcoin network directly. I believe using 10% (maximum) of a users downstream bandwidth is the limit of what is reasonable for a full node (pruned and non-pruned). Most users would continue to access the blockchain via SPV wallets though. Downstream is generally a much more valuable resource to a user than upstream due to the nature of the internet usage.
 
Percentage of Upstream Bandwidth Used
This is a best guess at what I think people who run nodes would be willing to use to be connected to the bitcoin network directly. I believe using 25% (maximum) of a users downstream bandwidth is the limit of what is reasonable for a full node (pruned and non-pruned). Most users would continue to access the blockchain via SPV wallets though. Upstream is generally a much less valuable resource to a user than downstream due to the nature of the internet usage.
 
Time to Bootstrap a New Node
My limit for this value is at 5 days using 50% of downstream bandwidth in the near-term and 30 days in the long-term. This seems like a reasonable number to me for someone who wants to start running a full node. Currently opening a new bank account takes at least week until everything is set up and you have received your cards, so it seems to me people would be willing to wait this long to become connected. Again, this is a best guess on what people would be willing to do to access the blockchain in the future. Most users requiring less security will be able to use an SPV wallet.
It is important to note that we only need enough nodes to make sure the blockchain is distributed across many places with many backups of the full blockchain. It is likely that a few thousand is a minimum for this. Increasing this amount to hundreds of thousands or millions of full nodes is not necessarily that much of an advantage to node distribution but could be a significant disadvantage to mining centralisation. This is because the more nodes you have in the network, the longer it takes to propagate >50% of it.
 
Storage Cost Price Reduction Over Time
Storage cost follows a linear logarithmic trend. Costs of HDD reducing by 10 times every 5 years, although this has slowed over the past few years. This can be attributed to the flooding in South East Asia and the transition to SSD technology. SSD technology also follows the linear logarithmic trend of costs reducing 10 times every 5 years, or roughly decreasing 37% per year.
 
Average Upload and Download Bandwidth Increases Over Time
Average upload and download bandwidth increases in a linear logarithmic trend. Both upload and download bandwidth follow the same trend of doubling roughly every two years, or increasing 40% per year.
 
Price
I was hesitant to include this one here but I feel it is unavoidable. Contrary to what people say (often when the price is trending downwards) bitcoin price is an extremely important metric in the long-term. Depending on bitcoin's price, bitcoin's is useful to; enthusiasts->some users->small companies->large companies->nations->the world, in roughly that order. The higher bitcoin's price is the more liquid the market will be and the more difficult it will be to move the price, therefore increasing bitcoin's utility. Bitcoin's price in the long-term is linked to adoption, which seems to happen in waves, as can be seen in the price bubbles over the years. If we are planning/aiming for bitcoin to at least become a currency with equal value to one of the worlds major currencies then we need to plan for a market cap and price that reflect that. I personally think there are two useful targets we should use to reflect our aims. The first, lower target is for bitcoin to have a market cap the size of a major national currency. This would put the market cap at around 2.1 trillion dollars or $100,000 per bitcoin. The second higher target is for bitcoin to become the world's major reserve currency. This would give bitcoin a market cap of around 21 trillion dollars and a value of $1,000,000 per bitcoin. A final, and much more difficult target is likely to be bitcoin as the only currency across the world, but I am not sure exactly how this could work so for now I don't think this is worth considering.
 
As price increases, so does the subsidy reward given out to miners who find blocks. This reward is semi-dynamic in that it remains static (in btc terms) until 210,000 blocks are found and then the subsidy is then cut in half. This continues to happen until all 21,000,000 bitcoins have been mined. If the value of each bitcoin increases faster than the btc denominated subsidy decreases then the USD denominated reward will be averagely increasing. Historically the bitcoin price has increased significantly faster than subsidy decreases. The btc denominated subsidy halves roughly every 4 years but the price of bitcoin has historically increased roughly 50 fold in the same time.
 
Bitcoin adoption should happen in a roughly s-curve dynamic like every other technology adoption. This means exponential adoption until the market saturation starts and adoption slows, then the finally is the market becomes fully saturated and adoption slowly stops (i.e. bitcoin is fully adopted). If we assume the top of this adoption s-curve has one of the market caps above (i.e. bitcoin is successful) then we can use this assumption to see how we can transition from a subsidy paid network to a transaction fee paid network.
 
Adoption
Adoption is the most difficult metric to determine. In fact it is impossible to determine accurately now, let alone in the future. It is also the one of the most important factors. There is no point in building software that no one is going to use after all. Equally, there is no point in achieving a large amount of adoption if bitcoin offers none of the original value propositions. Clearly there is a balance to be had. Some amount of bitcoin's original value proposition is worth losing in favour of adoption, and some amount of adoption is worth losing to keep bitcoin's original value proposition. A suitable solution should find a good balance between the two. It is clear though that any solution must have increased adoption as a basic requirement, otherwise it is not a solution at all.
 
One major factor related to adoption that I rarely see mentioned, is stability and predictability. This is relevant to both end users and businesses. End users rely on stability and predictability so that they do not have to constantly check if something has changed. When a person goes to get money from a cash machine or spend money in a shop, their experience is almost identical every single time. It is highly dependable. They don't need to keep up-to-date on how cash machines or shops work to make sure they are not defrauded. They know exactly what is going to happen without having to expend any effort. The more deviation from the standard experience a user experiences and the more often a user experiences a deviation, the less likely a user is going to want to continue to use that service. Users require predictability extending into the past. Businesses who's bottom line is often dependent on reliable services also require stability and predictability. Businesses require predictability that extends into the future so that they can plan. A business is less likely to use a service for which they do not know they can depend on in the future (or they know they cannot depend on).
For bitcoin to achieve mass adoption it needs a long-term predictable and stable plan for people to rely on.
 
 
The Proposal
 
This proposal is one based on determining a best fit balance of every factor and a large enough buffer to allows for our inability to perfectly predict the future. No one can predict the future with absolutely certainty but it does not mean we cannot make educated guesses and plan for it.
 
The first part of the proposal is to spend 2016 implementing all available efficiency improvements (i.e the ones detailed above) and making sure the move to a scaled bitcoin happens as smoothly as possible. It seems we should set a target of implementing all of the above improvements within the first 6 months of 2016. These improvements should be implemented in the first hardfork of its kind, with full community wide consensus. A hardfork with this much consensus is the perfect time to test and learn from the hardforking mechanism. Thanks to Seg Wit, this would give us an effective 2 fold capacity increase and set us on our path to scalability.
 
The second part of the proposal is to target the release of a second hardfork to happen at the end of 2016. Inline with all the above factors this would start with a real block size limit increase to 2MB (effectively increasing the throughput to 4x compared to today thanks to Seg Wit) and a doubling of the block size limit every two years thereafter (with linear scaling in between). The scaling would end with an 8GB block size limit in the year 2039.
 
 
How does the Proposal fit inside the Limits
 
 
Propagation time
If trends for average upload and bandwidth continue then propagation time for a block to reach >50% of the nodes in the network should never go above 1s. This is significantly quickly than propagation times we currently see.
In a worst case scenario we can we wrong in the negative direction (i.e. bandwidth does not increase as quickly as predicted) by 15% absolute and 37.5% relative (i.e. bandwidth improves at a rate of 25% per year rather than the predicted 40%) and we would still only ever see propagation times similar to today and it would take 20 years before this would happen.
 
Orphan Rate
Using our best guess predictions the orphan rate would never go over 0.2%.
In a worst case scenario where we are wrong in our bandwidth prediction in the negative direction by 37.5% relative, orphan rate would never go above 2.3% and it would take over 20 years to happen.
 
Non-Pruned Node Storage Cost
Using our best guess predictions the cost of storage for a non-pruned full node would never exceed $40 with blocks consistently 50% full and would in fact decrease significantly after reaching the peak cost. If blocks were consistently 100% full (which is highly unlikely) then the maximum cost of an un-pruned full node would never exceed $90.
In a worst case scenario where we are wrong in our bandwidth prediction in the negative direction by 37.5% relative and we are wrong in our storage cost prediction by 20% relative (storage cost decreases in cost by 25% per year instead of the predicted 37% per year), we would see a max cost to run a node with 50% full blocks of $100 by 2022 and $300 by 2039. If blocks are always 100% full then this max cost rises to $230 by 2022 and $650 in 2039. It is important to note that for storage costs to be as high as this, bitcoin will have to be enormously successful, meaning many many more people will be incentivised to run a full node (businesses etc.)
 
Pruned Node Storage Cost
Using our best guess predictions the cost of storage for a pruned full node would never exceed $0.60 with blocks consistently 50% full. If blocks were consistently 100% full (which is highly unlikely) then the max cost of an un-pruned full node would never exceed $1.30.
In a worst case scenario where we are wrong in our bandwidth prediction in the negative direction by 37.5% relative and we are wrong in our storage cost prediction by 20% relative (storage cost decreases in cost by 25% per year instead of the predicted 37% per year), we would see a max cost to run a node with 50% full blocks of $1.40 by 2022 and $5 by 2039. If blocks are always 100% full then this max cost rises to $3.20 by 2022 and $10 in 2039. It is important to note that at this amount of storage the cost would be effectively zero since users almost always have a large amount of free storage space on computers they already own.
 
Percentage of Downstream Bandwidth Used
Using our best guess predictions running a full node will never use more than 0.3% of a users download bandwidth (on average).
In a worst case scenario we can we wrong in the negative direction by 37.5% relative in our bandwidth predictions and we would still only ever see a max download bandwidth use of 4% (average).
 
Percentage of Upstream Bandwidth Used
Using our best guess predictions running a full node will never use more than 1.6% of a users download bandwidth (on average).
In a worst case scenario we can we wrong in the negative direction by 37.5% relative in our bandwidth predictions and we would only ever see a max download bandwidth use of 24% (average) and this would take over 20 years to occur.
 
Time to Bootstrap a New Node
Using our best guess predictions bootstrapping a new node onto the network should never take more than just over a day using 50% bandwidth.
In a worst case scenario we can we wrong in the negative direction by 37.5% relative in our bandwidth predictions and it would take one and 1/4 days to bootstrap the blockchain using 50% of the download bandwidth. By 2039 it would take 16 days to bootstrap the entire blockchain when using 50% bandwidth. I think it is important to note that by this point it is very possible the bootstrapping the blockchain could very well be done by simply buying an SSD with blockchain already bootstrapped. 16 days would be a lot of time to download software but it does not necessarily mean a decrease in centralisation. As you will see in the next section, if bitcoin has reached this level of adoption, there may well be many parties will to spend 16 days downloading the blockchain.
 
What if Things Turn Out Worse than the Worse Case?
While it is likely that future trends in the technology required to scale bitcoin will continue relatively similar to the past, it is possible that the predictions are completely and utterly wrong. This plan takes this into account though by making sure the buffer is large enough to give us time to adjust our course. Even if no technological/cost improvements (near zero likelihood) are made to bandwidth and storage in the future this proposal still gives us years to adjust course.
 
 
What Does This Mean for Bitcoin?
 
Significantly Increased Adoption
For comparison, Paypal handles around 285 transactions per second (tps), VISA handles around 2000tps and the total global non-cash transactions are around 12,400tps.
Currently bitcoin is capable of handling a maximum of around 3.5 transactions every second which are published to the blockchain roughly every 10 minutes. With Seg Wit implemented via a hardfork, bitcoin will be capable or around 7tps. With this proposal bitcoin will be capable of handling more transactions than Paypal (assuming Paypal experiences growth of around 7% per year) in the year 2027. Bitcoin will overtake VISA's transaction capability by the year 2035 and at the end of the growth cycle in 2039 it will be able to handle close to 50% of the total global non-cash transactions.
When you add on top second layer protocols( like the LN), sidechains, altcoins and off-chain transactions, there should be more than enough capacity for the whole world and every possible conceivable use for digital value transfer.
 
Transitioning from a Subsidy to a Transaction Fee Model
Currently mining is mostly incentivised by the subsidy that is given by the network (currently 25btc per block). If bitcoin is to widely successful it is likely that price increases will continue to outweigh btc denominated subsidy decreases for some time. This means that currently it is likely to be impossible to try to force the network into matching a significant portion of the subsidy with fees. The amount of fees being paid to miners has averagely increased over time and look like they will continue to do so. It is likely that the optimal time for fees to start seriously replacing the subsidy is when bitcoin adoption starts to slow. Unless you take a pessimistic view of bitcoin (thinking bitcoin is as big as it ever will be), it is reasonable to assume this will not happen for some time.
With this proposal, using an average fee of just $0.05, total transaction fees per day would be:
  • Year 2020 = $90,720
  • Year 2025 = $483,840.00
  • Year 2030 = $2,903,040.00
  • Year 2035 = $15,482,880.00
  • Year 2041 = $123,863,040.00 (full 8GB Blocks)
Miners currently earn a total of around $2 million dollars per day in revenue, significantly less than the $124 million dollars in transaction fee revenue possible using this proposal. That also doesn't include the subsidy which would still play some role until the year 2140. This transaction fee revenue would be a yearly revenue of $45 billion for miners when transaction fees are only $0.05 on average.
 
 
Proposal Data
You can use these two spreadsheets (1 - 2 ) to see the various metrics at play over time. The first spreadsheet shows the data using the predicted trends and the second spreadsheet shows the data with the worst case trends.
 
 
Summary
 
It's very clear we are on the edge/midst of a community (and possibly a network) split. This is a very dangerous situation for bitcoin. A huge divide has appeared in the community and opinions are becoming more and more entrenched on both sides. If we cannot come together and find a way forward it will be bad for everyone except bitcoin's competition and enemies. While this proposal is born from an attempt at finding a balance based on as many relevant factors as possible, it also fortunately happens to fall in between the two sides of the debate. Hopefully the community can see this proposal as a way of making a compromise, releasing the entrenchment and finding a way forward to scale bitcoin. I have no doubt that if we can do this, bitcoin will have enormous success in the years to come.
 
Lets bring bitcoin out of beta together!!
submitted by ampromoco to Bitcoin [link] [comments]

An attempt at a fully comprehensive look at how to scale bitcoin. Lets bring Bitcoin out of Beta!

 
WARNING THIS IS GOING TO BE A REALLY REALLY LONG POST BUT PLEASE READ IT ALL. SCALING BITCOIN IS A COMPLEX ISSUE! HOPEFULLY HAVING ALL THE INFO IN ONE PLACE SHOULD BE USEFUL
 
Like many people in the community I've spent the past month or so looking deeply into the bitcoin scaling debate. I feel there has never been a fully comprehensive thread on how bitcoin could scale. The closest I have seen is gavinandresen's medium posts back in the summer describing the problem and a solution, and pre-emptively answering supposed problems with the solution. While these posts got to the core of the issue and spawned the debate we have been having, they were quite general and could have used more data in support. This is my research and proposal to scale bitcoin and bring the community back together.
 
 
The Problem
 
There seems to me to be five main fundamental forces at play in finding a balanced solution;
  • 'node distribution',
  • 'mining decentralisation',
  • 'network utility',
  • 'time',
  • 'adoption'.
 
 
Node Distribution
Bandwidth has a relationship to node count and therefore 'node distribution'. This is because if bandwidth becomes too high then fewer people will be able to run a node. To a lesser extent bandwidth also effects 'mining decentralisation' as miners/pool owners also need to be able to run a node. I would argue that the centralisation pressures in relation to bandwidth are negligible though in comparison to the centralisation pressure caused by the usefulness of larger pools in reducing variance. The cost of a faster internet connection is negligible in comparison to the turnover of the pools. It is important to note the distinction between bandwidth required to propagate blocks quickly and the bandwidth required to propagate transactions. The bandwidth required to simply propagate transactions is still low today.
New node time (i.e. the time it takes to start up a new node) also has a relationship with node distribution. i.e. If it takes too long to start a new node then fewer people will be willing to take the time and resources to start a new node.
Storage Space also has a relationship with node distribution. If the blockchain takes up too much space on a computer then less people will be willing to store the whole blockchain.
Any suitable solution should look to not decrease node distribution significantly.
 
Mining Decentralisation
Broadcast time (the time it takes to upload a block to a peer) has a relationship with mining centralisation pressures. This is because increasing broadcast time increases the propagation time, which increases the orphan rate. If the orphan rate it too high then individual miners will tend towards larger pools.
Validation time (the time it to validate a block) has a relationship with mining centralisation pressures. This is because increasing validation time increases the propagation time, which increases the orphan rate. If the orphan rate it too high then individual miners will tend towards larger pools.
Any suitable solution should look to not increase mining centralisation significantly.
 
Network Utility
Network Utility is one that I find is often overlooked, is not well understood but is equally as important. The network utility force acts as a kind of disclaimer to the other two forces. It has a balancing effect. Increasing the network utility will likely increase user adoption (The more useful something is, the more people will want to use it) and therefore decreasing network utility will likely decrease user adoption. User adoption has a relationship with node count. i.e. the more people, companies and organisations know about and use bitcoin, the more people, companies and organisations that will run nodes. For example we could reduce block size down to 10KB, which would reduce broadcast time and validation time significantly. This would also therefore reduce mining centralisation pressures significantly. What is very important to realise though is that network utility would also be significantly be reduced (fewer people able to use bitcoin) and therefore so would node distribution. Conversely, if we increased the block size (not the limit) right now to 10GB, the network utility would be very high as bitcoin would be able to process a large number of transactions but node distribution would be low and mining centralisation pressures would be high due to the larger resource requirements.
Any suitable solution should look to increase network utility as time increases.
 
Time
Time is an important force because of how technology improves over time. Technology improves over time in a semi-predicable fashion (often exponential). As we move through time, the cost of resources required to run the bitcoin network (if the resource requirements remained static) will decrease. This means that we are able to increase resource requirements proportional to technological improvements/cost reductions without any increase in costs to the network. Technological improvements are not perfectly predictable though so it could be advantageous to allow some buffer room for when technological improvements do not keep up with predictions. This buffer should not be applied at the expense of the balance between the other forces though (i.e. make the buffer too big and network utility will be significantly decreased).
 
 
Adoption
Increasing adoption means more people using the bitcoin/blockchain network. The more people use bitcoin the more utility it has, and the more utility Bitcoin has the more people will want to use it (network effect). The more people use bitcoin, the more people there that have an incentive to protect bitcoin.
Any suitable solution should look to increase adoption as time increases.
 
 
The Solution Proposed by some of the bitcoin developers - The Lightning Network
 
The Lightning Network (LN) is an attempt at scaling the number of transactions that can happen between parties by not publishing any transaction onto the blockchain unless it is absolutely necessary. This is achieved by having people pool bitcoin together in a "Channel" and then these people can transact instantly within that channel. If any shenanigans happen between any of the parties, the channel can be closed and the transactions will be settled on the blockchain. The second part of their plan is limit the block size to turn bitcoin into a settlement network. The original block size limit of 1MB was originally put in place by Satoshi as an anti-DOS measure. It was to make sure a bad actor could not propagate a very large block that would crash nodes and increase the size of the blockchain unnecessarily. Certain developers now want to use this 1MB limit in a different way to make sure that resource requirements will stay low, block space always remains full, fees increase significantly and people use the lightning network as their main way of transacting rather than the blockchain. They also say that keeping the resource requirements very low will make sure that bitcoin remains decentralised.
 
Problems with The Lightning Network
The LN works relatively well (in theory) when the cost and time to publish a set of transactions to the network are kept low. Unfortunately, when the cost and time to publish a set of transactions on the blockchain become high, the LN's utility is diminished. The trust you get from a transaction on the LN comes only from the trustless nature of having transactions published to the bitcoin network. What this means is that if a transaction cannot be published on the bitcoin network then the LN transaction is not secured at all. As transactions fees rise on the bitcoin blockchain the LN utility is diminished. Lets take an example:
  • Cost of publishing a transaction to the bitcoin network = $20
  • LN transaction between Bob and Alice = $20.
  • Transaction between Bob and Alice has problem therefore we want to publish it to the blockchain.
  • Amount of funds left after transaction is published to the blockchain = $20 - $20 = $0.
This is also not a binary situation. If for example in this scenario, the cost to publish the transaction to blockchain was $10 then still only 50% of the transaction would be secure. It is unlikely anyone really call this a secure transaction.
Will a user make a non-secured/poorly secured transaction on the LN when they could make the same transaction via an altcoin or non-cryptocurrency transaction and have it well secured? It's unlikely. What is much more likely to happen is that transaction that are not secured by bitcoin because of the cost to publish to the blockchain will simply overflow into altcoins or will simply not happen on any cryptocurrency network. The reality is though, that we don't know exactly what will happen because there is no precedent for it.
Another problem outside of security is convenience. With a highly oversaturated block space (very large backlog of transactions) it could take months to have a transaction published to the blockchain. During this time your funds will simply be stuck. If you want to buy a coffee with a shop you don't have a channel open with, instead of simply paying with bitcoin directly, you would have to wait months to open a channel by publishing a transaction to the bitcoin blockchain. I think your coffee might be a little cold by then (and mouldy).
I suggest reading this excellent post HERE for other rather significant problems with the LN when people are forced to use it.
The LN is currently not complete and due to its high complexity it will take some time to have industry wide implementation. If it is implemented on top of a bitcoin-as-a-settlement-network economy it will likely have very little utility.
 
Uses of The LN
The LN is actually an extremely useful layer-2 technology when it is used with it's strengths. When the bitcoin blockchain is fast and cheap to transact on, the LN is also extremely useful. One of the major uses for the LN is for trust-based transactions. If you are transacting often between a set of parties you can truly trust then using LN makes absolute sense since the trustless model of bitcoin is not necessary. Then once you require your funds to be unlocked again it will only take a short time and small cost to open them up to the full bitcoin network again. Another excellent use of LN would be for layer-3 apps. For example a casino app: Anyone can by into the casino channel and play using real bitcoins instantly in the knowledge that is anything nefarious happens you can instantly settle and unlock your funds. Another example would be a computer game where you can use real bitcoin in game, the only difference is that you connect to the game's LN channel and can transact instantly and cheaply. Then whenever you want to unlock your funds you can settle on the blockchain and use your bitcoins normally again.
LN is hugely more powerful, the more powerful bitcoin is. The people making the LN need to stick with its strengths rather than sell it as an all-in-one solution to bitcoin's scaling problem. It is just one piece of the puzzle.
 
 
Improving Network Efficiency
 
The more efficient the network, the more we can do with what we already have. There are a number of possible efficiency improvements to the network and each of them has a slightly different effect.
 
Pruning
Pruning allows the stored blockchain size to be reduced significantly by not storing old data. This has the effect of lowering the resource requirements of running a node. a 40GB unpruned blockchain would be reduced in size to 550MB. (It is important to note that a pruned node has lower utility to the network)
 
Thin Blocks
Thin blocks uses the fact that most of the nodes in the network already have a list of almost all the same transactions ready to be put into the blockchain before a block is found. If all nodes use the same/similar policy for which transactions to include in a block then you only need to broadcast a small amount of information across the network for all nodes to know which transactions have been included (as opposed to broadcasting a list of all transactions included in the block). Thin Blocks have the advantage of reducing propagation which lowers the mining centralisation pressure due to orphaned blocks.
 
libsecp256k1 libsecp256k1 allows a more efficient way of validating transactions. This means that propagation time is reduced which lowers the mining centralisation pressure due to orphaned blocks. It also means reduced time to bootstrap the blockchain for a new node.
 
Serialised Broadcast
Currently block transmission to peers happens in parallel to all connected peers. Obviously for block propagation this is a poor choice in comparison to serial transmission to each peer one by one. Using parallel transmission means that the more peers you have, the slower the propagation, whereas serial transmission does not suffer this problem. The problem that serial transmission does suffer from though is variance. If the order that you send blocks to peers in is random, then it means sometimes you will send blocks to a peer who has a slow/fast connection and/or is able to validate slowly/quickly. This would mean the average propagation time would increase with serialised transmission but depending on your luck you would sometimes have faster propagation and sometimes have slower propagation. As this will lower propagation time it will also lower the mining centralisation pressure due to orphaned blocks. (This is just a concept at the moment but I don't see why it couldn't be implemented).
 
Serialised Broadcast Sorting
This is a fix for the variance that would occur due to serialised broadcast. This sorts the order that you broadcast a block to each peer into; fastest upload + validation speed first and slowest upload speed and validation speed last. This not only decreases the variance to zero but also allows blocks to propagation to happen much faster. This also has the effect of lowering the mining centralisation pressure due to orphaned blocks. (This is just a concept at the moment but I don't see why it couldn't be implemented).
 
Here is a table below that shows roughly what the effects these solutions should have.
Name Bandwidth Broadcast Time Validation Time New Node Time Storage Space
Pruning 1 1 1 1 0.014
Thin Blocks 0.42 0.1 0.1 1 1
libsecp256k1 1 1 0.2 0.6 1
Serialised Broadcast 1 0.5 1 1 1
KYN 1 0.75 1 1 1
Segregated Witness 1 1 1 0.4 1
TOTAL 0.42 0.0375 0.02 0.24 0.014
Multiplier 2.38 26.7 50 - 70
(The "multiplier" shows how many times higher the block size could be relative to the specific function.)
 
 
The Factors in Finding a Balanced Solution
 
At the beginning of this post I detailed a relatively simple framework for finding a solution by describing what the problem is. There seems to me to be five main fundamental forces at play in finding a balanced solution; 'node distribution', 'mining decentralisation', 'network utility', 'time' and 'adoption'. The optimal solution needs to find a balance between all of these forces taking into account a buffer to offset our inability to predict the future with absolute accuracy.
To find a suitable buffer we need to assign a set of red line values which certain values should not pass if we want to make sure bitcoin continues to function as well as today (at a minimum). For example, percentage of orphans should stay below a certain value. These values can only be a best estimate due to the complexity of bitcoin economics, although I have tried to provide as sound reasoning as possible.
 
Propagation time
It seems a fair limit for this would be roughly what we have now. Bitcoin is still functioning now. Could mining be more decentralised? Yes, of course, but it seems bitcoin is working fine right now and therefore our currently propagation time for blocks is a fairly conservative limit to set. Currently 1MB blocks take around 15 seconds to propagate more than 50% of the network. 15 second propagation time is what I will be using as a limit in the solution to create a buffer.
 
Orphan Rate
This is obviously a value that is a function of propagation time so the same reasoning should be used. I will use a 3% limit on orphan rate in the solution to create a buffer.
 
Non-Pruned Node Storage Cost
For this I am choosing a limit of $200 in the near-term and $600 in the long-term. I have chosen these values based on what I think is a reasonable (maximum) for a business or enthusiast to pay to run a full node. As the number of transactions increases as more people use bitcoin the number of people willing to pay a higher price to run a node will also increase although the percentage of people will decrease. These are of course best guess values as there is no way of knowing exactly what percentage of users are willing to pay what.
 
Pruned Node Storage Cost
For this I am choosing a limit of $3 in the near-term (next 5 years) and $9 in the long-term (Next 25 years). I have chosen these values based on what I think is a reasonable (maximum) for normal bitcoin user to pay. In fact this cost will more likely be zero as almost all users have an amount of storage free on their computers.
 
Percentage of Downstream Bandwidth Used
This is a best guess at what I think people who run nodes would be willing to use to be connected to the bitcoin network directly. I believe using 10% (maximum) of a users downstream bandwidth is the limit of what is reasonable for a full node (pruned and non-pruned). Most users would continue to access the blockchain via SPV wallets though. Downstream is generally a much more valuable resource to a user than upstream due to the nature of the internet usage.
 
Percentage of Upstream Bandwidth Used
This is a best guess at what I think people who run nodes would be willing to use to be connected to the bitcoin network directly. I believe using 25% (maximum) of a users downstream bandwidth is the limit of what is reasonable for a full node (pruned and non-pruned). Most users would continue to access the blockchain via SPV wallets though. Upstream is generally a much less valuable resource to a user than downstream due to the nature of the internet usage.
 
Time to Bootstrap a New Node
My limit for this value is at 5 days using 50% of downstream bandwidth in the near-term and 30 days in the long-term. This seems like a reasonable number to me for someone who wants to start running a full node. Currently opening a new bank account takes at least week until everything is set up and you have received your cards, so it seems to me people would be willing to wait this long to become connected. Again, this is a best guess on what people would be willing to do to access the blockchain in the future. Most users requiring less security will be able to use an SPV wallet.
It is important to note that we only need enough nodes to make sure the blockchain is distributed across many places with many backups of the full blockchain. It is likely that a few thousand is a minimum for this. Increasing this amount to hundreds of thousands or millions of full nodes is not necessarily that much of an advantage to node distribution but could be a significant disadvantage to mining centralisation. This is because the more nodes you have in the network, the longer it takes to propagate >50% of it.
 
Storage Cost Price Reduction Over Time
Storage cost follows a linear logarithmic trend. Costs of HDD reducing by 10 times every 5 years, although this has slowed over the past few years. This can be attributed to the flooding in South East Asia and the transition to SSD technology. SSD technology also follows the linear logarithmic trend of costs reducing 10 times every 5 years, or roughly decreasing 37% per year.
 
Average Upload and Download Bandwidth Increases Over Time
Average upload and download bandwidth increases in a linear logarithmic trend. Both upload and download bandwidth follow the same trend of doubling roughly every two years, or increasing 40% per year.
 
Price
I was hesitant to include this one here but I feel it is unavoidable. Contrary to what people say (often when the price is trending downwards) bitcoin price is an extremely important metric in the long-term. Depending on bitcoin's price, bitcoin's is useful to; enthusiasts->some users->small companies->large companies->nations->the world, in roughly that order. The higher bitcoin's price is the more liquid the market will be and the more difficult it will be to move the price, therefore increasing bitcoin's utility. Bitcoin's price in the long-term is linked to adoption, which seems to happen in waves, as can be seen in the price bubbles over the years. If we are planning/aiming for bitcoin to at least become a currency with equal value to one of the worlds major currencies then we need to plan for a market cap and price that reflect that. I personally think there are two useful targets we should use to reflect our aims. The first, lower target is for bitcoin to have a market cap the size of a major national currency. This would put the market cap at around 2.1 trillion dollars or $100,000 per bitcoin. The second higher target is for bitcoin to become the world's major reserve currency. This would give bitcoin a market cap of around 21 trillion dollars and a value of $1,000,000 per bitcoin. A final, and much more difficult target is likely to be bitcoin as the only currency across the world, but I am not sure exactly how this could work so for now I don't think this is worth considering.
 
As price increases, so does the subsidy reward given out to miners who find blocks. This reward is semi-dynamic in that it remains static (in btc terms) until 210,000 blocks are found and then the subsidy is then cut in half. This continues to happen until all 21,000,000 bitcoins have been mined. If the value of each bitcoin increases faster than the btc denominated subsidy decreases then the USD denominated reward will be averagely increasing. Historically the bitcoin price has increased significantly faster than subsidy decreases. The btc denominated subsidy halves roughly every 4 years but the price of bitcoin has historically increased roughly 50 fold in the same time.
 
Bitcoin adoption should happen in a roughly s-curve dynamic like every other technology adoption. This means exponential adoption until the market saturation starts and adoption slows, then the finally is the market becomes fully saturated and adoption slowly stops (i.e. bitcoin is fully adopted). If we assume the top of this adoption s-curve has one of the market caps above (i.e. bitcoin is successful) then we can use this assumption to see how we can transition from a subsidy paid network to a transaction fee paid network.
 
Adoption
Adoption is the most difficult metric to determine. In fact it is impossible to determine accurately now, let alone in the future. It is also the one of the most important factors. There is no point in building software that no one is going to use after all. Equally, there is no point in achieving a large amount of adoption if bitcoin offers none of the original value propositions. Clearly there is a balance to be had. Some amount of bitcoin's original value proposition is worth losing in favour of adoption, and some amount of adoption is worth losing to keep bitcoin's original value proposition. A suitable solution should find a good balance between the two. It is clear though that any solution must have increased adoption as a basic requirement, otherwise it is not a solution at all.
 
One major factor related to adoption that I rarely see mentioned, is stability and predictability. This is relevant to both end users and businesses. End users rely on stability and predictability so that they do not have to constantly check if something has changed. When a person goes to get money from a cash machine or spend money in a shop, their experience is almost identical every single time. It is highly dependable. They don't need to keep up-to-date on how cash machines or shops work to make sure they are not defrauded. They know exactly what is going to happen without having to expend any effort. The more deviation from the standard experience a user experiences and the more often a user experiences a deviation, the less likely a user is going to want to continue to use that service. Users require predictability extending into the past. Businesses who's bottom line is often dependent on reliable services also require stability and predictability. Businesses require predictability that extends into the future so that they can plan. A business is less likely to use a service for which they do not know they can depend on in the future (or they know they cannot depend on).
For bitcoin to achieve mass adoption it needs a long-term predictable and stable plan for people to rely on.
 
 
The Proposal
 
This proposal is one based on determining a best fit balance of every factor and a large enough buffer to allows for our inability to perfectly predict the future. No one can predict the future with absolutely certainty but it does not mean we cannot make educated guesses and plan for it.
 
The first part of the proposal is to spend 2016 implementing all available efficiency improvements (i.e the ones detailed above) and making sure the move to a scaled bitcoin happens as smoothly as possible. It seems we should set a target of implementing all of the above improvements within the first 6 months of 2016. These improvements should be implemented in the first hardfork of its kind, with full community wide consensus. A hardfork with this much consensus is the perfect time to test and learn from the hardforking mechanism. Thanks to Seg Wit, this would give us an effective 2 fold capacity increase and set us on our path to scalability.
 
The second part of the proposal is to target the release of a second hardfork to happen at the end of 2016. Inline with all the above factors this would start with a real block size limit increase to 2MB (effectively increasing the throughput to 4x compared to today thanks to Seg Wit) and a doubling of the block size limit every two years thereafter (with linear scaling in between). The scaling would end with an 8GB block size limit in the year 2039.
 
 
How does the Proposal fit inside the Limits
 
 
Propagation time
If trends for average upload and bandwidth continue then propagation time for a block to reach >50% of the nodes in the network should never go above 1s. This is significantly quickly than propagation times we currently see.
In a worst case scenario we can we wrong in the negative direction (i.e. bandwidth does not increase as quickly as predicted) by 15% absolute and 37.5% relative (i.e. bandwidth improves at a rate of 25% per year rather than the predicted 40%) and we would still only ever see propagation times similar to today and it would take 20 years before this would happen.
 
Orphan Rate
Using our best guess predictions the orphan rate would never go over 0.2%.
In a worst case scenario where we are wrong in our bandwidth prediction in the negative direction by 37.5% relative, orphan rate would never go above 2.3% and it would take over 20 years to happen.
 
Non-Pruned Node Storage Cost
Using our best guess predictions the cost of storage for a non-pruned full node would never exceed $40 with blocks consistently 50% full and would in fact decrease significantly after reaching the peak cost. If blocks were consistently 100% full (which is highly unlikely) then the maximum cost of an un-pruned full node would never exceed $90.
In a worst case scenario where we are wrong in our bandwidth prediction in the negative direction by 37.5% relative and we are wrong in our storage cost prediction by 20% relative (storage cost decreases in cost by 25% per year instead of the predicted 37% per year), we would see a max cost to run a node with 50% full blocks of $100 by 2022 and $300 by 2039. If blocks are always 100% full then this max cost rises to $230 by 2022 and $650 in 2039. It is important to note that for storage costs to be as high as this, bitcoin will have to be enormously successful, meaning many many more people will be incentivised to run a full node (businesses etc.)
 
Pruned Node Storage Cost
Using our best guess predictions the cost of storage for a pruned full node would never exceed $0.60 with blocks consistently 50% full. If blocks were consistently 100% full (which is highly unlikely) then the max cost of an un-pruned full node would never exceed $1.30.
In a worst case scenario where we are wrong in our bandwidth prediction in the negative direction by 37.5% relative and we are wrong in our storage cost prediction by 20% relative (storage cost decreases in cost by 25% per year instead of the predicted 37% per year), we would see a max cost to run a node with 50% full blocks of $1.40 by 2022 and $5 by 2039. If blocks are always 100% full then this max cost rises to $3.20 by 2022 and $10 in 2039. It is important to note that at this amount of storage the cost would be effectively zero since users almost always have a large amount of free storage space on computers they already own.
 
Percentage of Downstream Bandwidth Used
Using our best guess predictions running a full node will never use more than 0.3% of a users download bandwidth (on average).
In a worst case scenario we can we wrong in the negative direction by 37.5% relative in our bandwidth predictions and we would still only ever see a max download bandwidth use of 4% (average).
 
Percentage of Upstream Bandwidth Used
Using our best guess predictions running a full node will never use more than 1.6% of a users download bandwidth (on average).
In a worst case scenario we can we wrong in the negative direction by 37.5% relative in our bandwidth predictions and we would only ever see a max download bandwidth use of 24% (average) and this would take over 20 years to occur.
 
Time to Bootstrap a New Node
Using our best guess predictions bootstrapping a new node onto the network should never take more than just over a day using 50% bandwidth.
In a worst case scenario we can we wrong in the negative direction by 37.5% relative in our bandwidth predictions and it would take one and 1/4 days to bootstrap the blockchain using 50% of the download bandwidth. By 2039 it would take 16 days to bootstrap the entire blockchain when using 50% bandwidth. I think it is important to note that by this point it is very possible the bootstrapping the blockchain could very well be done by simply buying an SSD with blockchain already bootstrapped. 16 days would be a lot of time to download software but it does not necessarily mean a decrease in centralisation. As you will see in the next section, if bitcoin has reached this level of adoption, there may well be many parties will to spend 16 days downloading the blockchain.
 
What if Things Turn Out Worse than the Worse Case?
While it is likely that future trends in the technology required to scale bitcoin will continue relatively similar to the past, it is possible that the predictions are completely and utterly wrong. This plan takes this into account though by making sure the buffer is large enough to give us time to adjust our course. Even if no technological/cost improvements (near zero likelihood) are made to bandwidth and storage in the future this proposal still gives us years to adjust course.
 
 
What Does This Mean for Bitcoin?
 
Significantly Increased Adoption
For comparison, Paypal handles around 285 transactions per second (tps), VISA handles around 2000tps and the total global non-cash transactions are around 12,400tps.
Currently bitcoin is capable of handling a maximum of around 3.5 transactions every second which are published to the blockchain roughly every 10 minutes. With Seg Wit implemented via a hardfork, bitcoin will be capable or around 7tps. With this proposal bitcoin will be capable of handling more transactions than Paypal (assuming Paypal experiences growth of around 7% per year) in the year 2027. Bitcoin will overtake VISA's transaction capability by the year 2035 and at the end of the growth cycle in 2039 it will be able to handle close to 50% of the total global non-cash transactions.
When you add on top second layer protocols( like the LN), sidechains, altcoins and off-chain transactions, there should be more than enough capacity for the whole world and every possible conceivable use for digital value transfer.
 
Transitioning from a Subsidy to a Transaction Fee Model
Currently mining is mostly incentivised by the subsidy that is given by the network (currently 25btc per block). If bitcoin is to widely successful it is likely that price increases will continue to outweigh btc denominated subsidy decreases for some time. This means that currently it is likely to be impossible to try to force the network into matching a significant portion of the subsidy with fees. The amount of fees being paid to miners has averagely increased over time and look like they will continue to do so. It is likely that the optimal time for fees to start seriously replacing the subsidy is when bitcoin adoption starts to slow. Unless you take a pessimistic view of bitcoin (thinking bitcoin is as big as it ever will be), it is reasonable to assume this will not happen for some time.
With this proposal, using an average fee of just $0.05, total transaction fees per day would be:
  • Year 2020 = $90,720
  • Year 2025 = $483,840.00
  • Year 2030 = $2,903,040.00
  • Year 2035 = $15,482,880.00
  • Year 2041 = $123,863,040.00 (full 8GB Blocks)
Miners currently earn a total of around $2 million dollars per day in revenue, significantly less than the $124 million dollars in transaction fee revenue possible using this proposal. That also doesn't include the subsidy which would still play some role until the year 2140. This transaction fee revenue would be a yearly revenue of $45 billion for miners when transaction fees are only $0.05 on average.
 
 
Proposal Data
You can use these two spreadsheets (1 - 2 ) to see the various metrics at play over time. The first spreadsheet shows the data using the predicted trends and the second spreadsheet shows the data with the worst case trends.
 
 
Summary
 
It's very clear we are on the edge/midst of a community (and possibly a network) split. This is a very dangerous situation for bitcoin. A huge divide has appeared in the community and opinions are becoming more and more entrenched on both sides. If we cannot come together and find a way forward it will be bad for everyone except bitcoin's competition and enemies. While this proposal is born from an attempt at finding a balance based on as many relevant factors as possible, it also fortunately happens to fall in between the two sides of the debate. Hopefully the community can see this proposal as a way of making a compromise, releasing the entrenchment and finding a way forward to scale bitcoin. I have no doubt that if we can do this, bitcoin will have enormous success in the years to come.
 
Lets bring bitcoin out of beta together!!
submitted by ampromoco to btc [link] [comments]

Why I Am Not A Libertarian

The consensus among angry white males on the Internet is an ideology known as libertarianism. As a teenage boy, I dabbled in this subculture for a bit, but luckily, I grew a little more wise as the years went by. Libertarianism is essentially an ideology for alienated middle age white men with full time jobs, who have bought into the promises delivered by the industrial machine, but feel as if they're missing out on the rewards. In reality they do receive the rewards, but because the rewards are spiritually non-fulfilling, they mistakenly believe they don't receive the rewards at all.
What I support, rather than a small government that stays out of people's lives, is a strong government that actively pursues negative population growth, negative economic growth and the spiritual ennoblement of the population. I have relatively positive feelings towards the model of government that characterized North-Western Europe in the late 40's and 50's. It might not have been perfect and our lives might not have been perfect back then, but the cause is not so much government as it is our human inability to be content when we find ourselves in an unnatural environment.
What is referred to as the European populist right, is caught in a position where they find themselves stuck between two contradictory ideologies. On the one hand, their own voting demographic consists of working class people who have been alienated by the new modern left, who have abandoned working class white families to pursue a social justice agenda. They realize that this population does not want to have the various government programs they depend upon eliminated. On the other hand, they feel an affiliation with angry white males from the United states, men who have swallowed an ideology that represents the interest of their plutocratic elite. These men effectively parrot the story their boss tells them and read books like Atlas Shrugged that are meant for their boss. They complain about Marxism, without having any real clear idea what it entails.
To point out why I dislike libertarianism, I want to start out with the "democrats are the real racists" trope. This is a bit like a group of popular girls in high school who let an unpopular girl sit with them at their table but talk shit about her behind her back. The "democrats are the real racists" trope makes minorities believe that you somehow wish to represent their interest, whereas in reality, you don't. Multicultural societies don't function, one reason being the fact that those who earn an income find themselves reluctant to contribute to programs that are meant to benefit the whole society. People prefer helping out those who are similar to them. I would much rather be completely honest and state that I wish to live in an ethnically homogeneous society, because this ensures that there remains a state or organic solidarity between people, rather than having an American type society where people have nothing in common and spend their days working hard in an effort to buy expensive trinkets that demonstrate that they're not "losers".
What black Americans benefit from is to have a government that represents their interest and is composed for a significant portion of people who understand black culture. A black man understand better than a white man how black people would respond to a particular change in government policy. This also ensures that black people feel as if they work towards a common goal, rather than being 21st century cotton pickers in a system designed to serve white people. Whether or not the police are racist is besides the point: A society where people believe the police does not represent their interest as a community is a society that's going to fail. Trump can't say this, nor can most conservatives, which means that they end up packaging egalitarian ideas in an angry white male cover.
This is just one reason I dislike libertarianism. There are many more. Another issue I have with libertarianism is that libertarians seem to believe that I somehow benefit from having a choice on many subjects. To have the government make decisions for me is seen as "nannying". I like having the government take decisions for me. I don't gain any sense of existential fulfillment out of having to compare different health insurance plans, different telephone contracts or different electricity contracts. I would very much prefer not having people bugging me on the street or on the phone, trying to get me to change from one telephone/health insurance/electricity/internet/television provider to another.
There are things out there that I enjoy doing more than painstakingly trying to figure out how I can save more money. Having one single company that takes care of a particular problem takes away a lot of the busywork out of my life. Our modern society is an accountant's paradise. In the decades after the second world war, the government took care of most of these type of decisions for us. This allows me to avoid having to spend my time making petty choices. In practice it also ends up being more efficient. Today we have a handful of different electricity companies, all of whom need their own customer service department, their own competing marketing departments and their own technicians, even though they all deliver us electricity through the same shared electricity network. When I switch from one contract to another, I don't have someone visit my house to place a new line and get rid of the old one for me. It thus seems pretty straightforward to me that it's ridiculous to have multiple electricity companies.
This doesn't just apply to utility companies however. When I buy food in the supermarket, I like the idea of not having to check whether all the ingredients on there might cause cancer, birth defects or other horrors. I even like being able to visit a restaurant and having some degree of certainty that I won't shit my pants on the way out. Regulation is fantastic. I don't particularly care whether or not your libertarian paradise would allow me to file a class action lawsuit against a potato chips manufacturer when I develop a tumor 20 years from now in my liver because the potato chips I bought happened to be contaminated with a fungus that causes liver cancer. I like having standards that help prevent such pointless deaths. And yes, I even enjoy having a government that takes action against obesity by restricting calories on food. If parents fail to take these decisions for their children, children end up being the victim. When you're 20 years old and stuck in the bloated body of a 40 year old, do you think "good thing the government didn't nanny me with their regulation"? I doubt it.
What's more, I like the idea of my society not being turned into an uninhabitable wasteland thanks to government regulation. I'm not just talking about greenhouse gasses like carbon dioxide. A single accident at a pesticide factory can kill thousands, in addition to permanently injuring hundreds of thousands. That's what happened in Bhopal in 1984. An entire city was ruined by a single chemical accident. When Trump said he's going to get rid of regulation, what did he mean with that? Do you know? I don't. The reason there's so much regulation is because modern technology makes it ridiculously easy to cause catastrophes. It's not just in third world countries, it's right here. In the city of Enschede in 2000, a fireworks deposit exploded. This led to 23 deaths. However, near the fireworks deposit was a beer manufacturer with an ammonia deposit that came close to exploding too, as part of a chain reaction that would have asphyxiated everyone in a 400 meter radius, meaning you'd be faced with a couple of hundred deaths.
Regulation is needed, because not every regular Joe Sixpack hoping to buy a McMansion one day can figure out for himself the vast risks his "entrepreneurial instincts" could pose to humanity. You can't figure out for yourself what kind of chemical derivatives your industrial activity might release in a worst case scenario and how many cases of cancer and birth defects this might lead to in the long term. Industrial activity opens up a vast realm of new man-made compounds, the consequences of which for our health we barely manage to comprehend. The risks are dangerous, precisely because they are numerous and interact in ways that are not directly apparent to us. Lack of regulation can make entire towns uninhabitable from underground coal fires, toxic piles of lead dust or persistent pollutants that gather in the soil. There are various towns in the United States that were rendered uninhabitable and native tribes that had entire generations of children brain-damaged, all because of a lack of regulation.
Furthermore, I like having a minimum guaranteed standard of living. Why is that? Because I'm a lazy loser who wants a government handout? Not necessarily. I like the idea that children can play outside with the neighbors without catching tuberculosis from the neighbors because Sally Soccermom could not afford to feed her child enough calories anymore after her husband died. I like the idea that children can swim in the river without catching cholera because Billy Bob got laid off at the auto plant and now decides to shit in the river as he can't afford to pay his sewage bill anymore. I'm happy that nobody has to go so hungry in childhood that he spends the next sixty years of his life six inches shorter than his peers and suffering permanently reduced cognitive skills that prohibit him from ever doing something productive with his existence.
I'm also glad that desperation does not have to drive men towards theft and burglaries, nor women towards prostitution. Having a minimum guaranteed standard of living for people caught in tough times ensures that they are not driven to extreme options. It was quite common in Victorian times, for women in London pregnant out of wedlock to leave their dead newborns on a garbage pile somewhere. These are things I'm glad children don't have to run into when they're playing outside. Similarly, suicide is a catastrophe that has ripple effects on families and communities. It's important that there exists a social safety net that allows people to seek mental help, whether they're dealing with mental illness, drug addiction or other problems. The cost to society is much bigger if people can not treat their problems.
You might think that none of this is necessary if people were just taught to act in a prudent and responsible manner. Well, in reality, you can't prepare yourself for everything. You might have a nest egg for when your boss fires you, but what if your house is burglarized, or burns down? Worse, it's perfectly possible for you to lose your sanity and destroy everything you've built up over the decades. It's quite common for dementia patients in their early stages to become delusional and start spending vast amounts of money on all sorts of ludicrous projects they come up with. There's a prominent case that happened here a few months ago, of a wealthy man in his mid seventies, who decided he was going to enter politics and use his wealth to build facilities for refugees. People didn't think too much of it at first and the newspapers simply reported on these actions, but then it became undeniable later on that he had begun to suffer severe mental illness. He was then institutionalized and died not much later.
I also like having a government that has a strong influence on the direction our culture takes. The reason American culture is so mediocre is because the free market decides what kind of culture is produced. People don't make fully conscious decisions when they purchase a product, so the best way to earn money is by appealing to our lowest common denominator. If people are left completely free to make their own decisions limited only by their finances, they tend make mediocre decisions. We buy beer that we started subconsciously associating with attractive women because we saw a television commercial as we were dozing off in front of a TV. Nobody makes a cost benefit analysis before deciding whether they should go to a strip club or a museum. The government has to guide people along in this regard.
The government should aim to restrict options that are harmful to the overall fabric of society, while encouraging options that are conducive to our individual spiritual development and collective self-respect as a people. For this reason, it's important that libraries, theater, museums and other expressions of human culture are subsidized, while cinemas, casinos, strip clubs, cafes are placed under punitive taxation. A society where people, through access to art and culture come to recognize that they are the modern incarnation of a people who have produced their own unique culture for hundreds if not thousands of years, is a society that will not seek to turn itself into a carbon copy of the United States. I want a society where taking pride in your Irish heritage means reading Yeats, rather than getting drunk on St Patrick's day. The only reason angry white males are so triggered by art subsidies is because they have been emotionally stunted. They grew up in a society that did not allow them to mature as well balanced individuals, but rather, taught them to chase after money to prove their value.
Last but not least, the reason I hate libertarianism is because it is utterly anthropocentric. It fails to recognize that nature is not just a natural resource, but a living community of organisms that provides highly valuable ecological services to all of humanity. The free market pretends that nature has no value until it is transformed by humans. Objectivists, who should all be turned into human fertilizer, even believe that Native Americans had no right to the lands they inhabited, because they did not transform them or claim them as property. In reality, when we destroy nature, we reap temporary wealth that comes at the cost of our long-term standard of living. Those who abuse the land they live upon have no right to it.
When you build a dam to generate electricity, you harm all those downstream, who now receive no sediment and little water. When you chop down a tree to produce wood, you harm the soil that will be swept away, you harm local agriculture that loses a sponge that sucks up excess water and releases it during droughts. When you pump up excessive groundwater, you dry out the peat that has accumulated on the Earth's surface, causing massive wildfires that release greenhouse gasses that change our climate. When you kill otters, you create an explosion of sea urchins that destroy kelp forests and thereby end up ravaging the entire ecosystem, ensuring that fish disappear too.
The examples are endless. The whole living world is interconnected, but libertarians perceive it as passive and static, merely there for us to develop and transform. This is ultimately a form of autism that underlies libertarianism, as autism leads people to be better capable of interacting with passive objects, while struggling to empathize with and understand the behavior of living beings. In the autistic brain, actions stand on their own, they do not have any power simply by virtue of being perceived or signaling a mentality, nor do they trigger a cascade of different reactions. For this reason, libertarianism always leaves us with a very impoverished view of how the whole genuinely works. Its simplicity makes it sound sensible on the surface, but it completely fails to consider how normal human beings operate. Libertarians like to claim that socialism would work for ants, but libertarianism is something that works for robots. The real world benefits from a strong government that enshrines the collective values and aspirations of a community of human beings.
submitted by -triggerexpert- to accountt1234 [link] [comments]

An attempt at a fully comprehensive look at how to scale bitcoin. Lets bring Bitcoin out of Beta!

 
WARNING THIS IS GOING TO BE A REALLY REALLY LONG POST BUT PLEASE READ IT ALL. SCALING BITCOIN IS A COMPLEX ISSUE! HOPEFULLY HAVING ALL THE INFO IN ONE PLACE SHOULD BE USEFUL
 
Like many people in the community I've spent the past month or so looking deeply into the bitcoin scaling debate. I feel there has never been a fully comprehensive thread on how bitcoin could scale. The closest I have seen is gavinandresen's medium posts back in the summer describing the problem and a solution, and pre-emptively answering supposed problems with the solution. While these posts got to the core of the issue and spawned the debate we have been having, they were quite general and could have used more data in support. This is my research and proposal to scale bitcoin and bring the community back together.
 
 
The Problem
 
There seems to me to be five main fundamental forces at play in finding a balanced solution;
  • 'node distribution',
  • 'mining decentralisation',
  • 'network utility',
  • 'time',
  • 'adoption'.
 
 
Node Distribution
Bandwidth has a relationship to node count and therefore 'node distribution'. This is because if bandwidth becomes too high then fewer people will be able to run a node. To a lesser extent bandwidth also effects 'mining decentralisation' as miners/pool owners also need to be able to run a node. I would argue that the centralisation pressures in relation to bandwidth are negligible though in comparison to the centralisation pressure caused by the usefulness of larger pools in reducing variance. The cost of a faster internet connection is negligible in comparison to the turnover of the pools. It is important to note the distinction between bandwidth required to propagate blocks quickly and the bandwidth required to propagate transactions. The bandwidth required to simply propagate transactions is still low today.
New node time (i.e. the time it takes to start up a new node) also has a relationship with node distribution. i.e. If it takes too long to start a new node then fewer people will be willing to take the time and resources to start a new node.
Storage Space also has a relationship with node distribution. If the blockchain takes up too much space on a computer then less people will be willing to store the whole blockchain.
Any suitable solution should look to not decrease node distribution significantly.
 
Mining Decentralisation
Broadcast time (the time it takes to upload a block to a peer) has a relationship with mining centralisation pressures. This is because increasing broadcast time increases the propagation time, which increases the orphan rate. If the orphan rate it too high then individual miners will tend towards larger pools.
Validation time (the time it to validate a block) has a relationship with mining centralisation pressures. This is because increasing validation time increases the propagation time, which increases the orphan rate. If the orphan rate it too high then individual miners will tend towards larger pools.
Any suitable solution should look to not increase mining centralisation significantly.
 
Network Utility
Network Utility is one that I find is often overlooked, is not well understood but is equally as important. The network utility force acts as a kind of disclaimer to the other two forces. It has a balancing effect. Increasing the network utility will likely increase user adoption (The more useful something is, the more people will want to use it) and therefore decreasing network utility will likely decrease user adoption. User adoption has a relationship with node count. i.e. the more people, companies and organisations know about and use bitcoin, the more people, companies and organisations that will run nodes. For example we could reduce block size down to 10KB, which would reduce broadcast time and validation time significantly. This would also therefore reduce mining centralisation pressures significantly. What is very important to realise though is that network utility would also be significantly be reduced (fewer people able to use bitcoin) and therefore so would node distribution. Conversely, if we increased the block size (not the limit) right now to 10GB, the network utility would be very high as bitcoin would be able to process a large number of transactions but node distribution would be low and mining centralisation pressures would be high due to the larger resource requirements.
Any suitable solution should look to increase network utility as time increases.
 
Time
Time is an important force because of how technology improves over time. Technology improves over time in a semi-predicable fashion (often exponential). As we move through time, the cost of resources required to run the bitcoin network (if the resource requirements remained static) will decrease. This means that we are able to increase resource requirements proportional to technological improvements/cost reductions without any increase in costs to the network. Technological improvements are not perfectly predictable though so it could be advantageous to allow some buffer room for when technological improvements do not keep up with predictions. This buffer should not be applied at the expense of the balance between the other forces though (i.e. make the buffer too big and network utility will be significantly decreased).
 
 
Adoption
Increasing adoption means more people using the bitcoin/blockchain network. The more people use bitcoin the more utility it has, and the more utility Bitcoin has the more people will want to use it (network effect). The more people use bitcoin, the more people there that have an incentive to protect bitcoin.
Any suitable solution should look to increase adoption as time increases.
 
 
The Solution Proposed by some of the bitcoin developers - The Lightning Network
 
The Lightning Network (LN) is an attempt at scaling the number of transactions that can happen between parties by not publishing any transaction onto the blockchain unless it is absolutely necessary. This is achieved by having people pool bitcoin together in a "Channel" and then these people can transact instantly within that channel. If any shenanigans happen between any of the parties, the channel can be closed and the transactions will be settled on the blockchain. The second part of their plan is limit the block size to turn bitcoin into a settlement network. The original block size limit of 1MB was originally put in place by Satoshi as an anti-DOS measure. It was to make sure a bad actor could not propagate a very large block that would crash nodes and increase the size of the blockchain unnecessarily. Certain developers now want to use this 1MB limit in a different way to make sure that resource requirements will stay low, block space always remains full, fees increase significantly and people use the lightning network as their main way of transacting rather than the blockchain. They also say that keeping the resource requirements very low will make sure that bitcoin remains decentralised.
 
Problems with The Lightning Network
The LN works relatively well (in theory) when the cost and time to publish a set of transactions to the network are kept low. Unfortunately, when the cost and time to publish a set of transactions on the blockchain become high, the LN's utility is diminished. The trust you get from a transaction on the LN comes only from the trustless nature of having transactions published to the bitcoin network. What this means is that if a transaction cannot be published on the bitcoin network then the LN transaction is not secured at all. As transactions fees rise on the bitcoin blockchain the LN utility is diminished. Lets take an example:
  • Cost of publishing a transaction to the bitcoin network = $20
  • LN transaction between Bob and Alice = $20.
  • Transaction between Bob and Alice has problem therefore we want to publish it to the blockchain.
  • Amount of funds left after transaction is published to the blockchain = $20 - $20 = $0.
This is also not a binary situation. If for example in this scenario, the cost to publish the transaction to blockchain was $10 then still only 50% of the transaction would be secure. It is unlikely anyone really call this a secure transaction.
Will a user make a non-secured/poorly secured transaction on the LN when they could make the same transaction via an altcoin or non-cryptocurrency transaction and have it well secured? It's unlikely. What is much more likely to happen is that transaction that are not secured by bitcoin because of the cost to publish to the blockchain will simply overflow into altcoins or will simply not happen on any cryptocurrency network. The reality is though, that we don't know exactly what will happen because there is no precedent for it.
Another problem outside of security is convenience. With a highly oversaturated block space (very large backlog of transactions) it could take months to have a transaction published to the blockchain. During this time your funds will simply be stuck. If you want to buy a coffee with a shop you don't have a channel open with, instead of simply paying with bitcoin directly, you would have to wait months to open a channel by publishing a transaction to the bitcoin blockchain. I think your coffee might be a little cold by then (and mouldy).
I suggest reading this excellent post HERE for other rather significant problems with the LN when people are forced to use it.
The LN is currently not complete and due to its high complexity it will take some time to have industry wide implementation. If it is implemented on top of a bitcoin-as-a-settlement-network economy it will likely have very little utility.
 
Uses of The LN
The LN is actually an extremely useful layer-2 technology when it is used with it's strengths. When the bitcoin blockchain is fast and cheap to transact on, the LN is also extremely useful. One of the major uses for the LN is for trust-based transactions. If you are transacting often between a set of parties you can truly trust then using LN makes absolute sense since the trustless model of bitcoin is not necessary. Then once you require your funds to be unlocked again it will only take a short time and small cost to open them up to the full bitcoin network again. Another excellent use of LN would be for layer-3 apps. For example a casino app: Anyone can by into the casino channel and play using real bitcoins instantly in the knowledge that is anything nefarious happens you can instantly settle and unlock your funds. Another example would be a computer game where you can use real bitcoin in game, the only difference is that you connect to the game's LN channel and can transact instantly and cheaply. Then whenever you want to unlock your funds you can settle on the blockchain and use your bitcoins normally again.
LN is hugely more powerful, the more powerful bitcoin is. The people making the LN need to stick with its strengths rather than sell it as an all-in-one solution to bitcoin's scaling problem. It is just one piece of the puzzle.
 
 
Improving Network Efficiency
 
The more efficient the network, the more we can do with what we already have. There are a number of possible efficiency improvements to the network and each of them has a slightly different effect.
 
Pruning
Pruning allows the stored blockchain size to be reduced significantly by not storing old data. This has the effect of lowering the resource requirements of running a node. a 40GB unpruned blockchain would be reduced in size to 550MB. (It is important to note that a pruned node has lower utility to the network)
 
Thin Blocks
Thin blocks uses the fact that most of the nodes in the network already have a list of almost all the same transactions ready to be put into the blockchain before a block is found. If all nodes use the same/similar policy for which transactions to include in a block then you only need to broadcast a small amount of information across the network for all nodes to know which transactions have been included (as opposed to broadcasting a list of all transactions included in the block). Thin Blocks have the advantage of reducing propagation which lowers the mining centralisation pressure due to orphaned blocks.
 
libsecp256k1 libsecp256k1 allows a more efficient way of validating transactions. This means that propagation time is reduced which lowers the mining centralisation pressure due to orphaned blocks. It also means reduced time to bootstrap the blockchain for a new node.
 
Serialised Broadcast
Currently block transmission to peers happens in parallel to all connected peers. Obviously for block propagation this is a poor choice in comparison to serial transmission to each peer one by one. Using parallel transmission means that the more peers you have, the slower the propagation, whereas serial transmission does not suffer this problem. The problem that serial transmission does suffer from though is variance. If the order that you send blocks to peers in is random, then it means sometimes you will send blocks to a peer who has a slow/fast connection and/or is able to validate slowly/quickly. This would mean the average propagation time would increase with serialised transmission but depending on your luck you would sometimes have faster propagation and sometimes have slower propagation. As this will lower propagation time it will also lower the mining centralisation pressure due to orphaned blocks. (This is just a concept at the moment but I don't see why it couldn't be implemented).
 
Serialised Broadcast Sorting
This is a fix for the variance that would occur due to serialised broadcast. This sorts the order that you broadcast a block to each peer into; fastest upload + validation speed first and slowest upload speed and validation speed last. This not only decreases the variance to zero but also allows blocks to propagation to happen much faster. This also has the effect of lowering the mining centralisation pressure due to orphaned blocks. (This is just a concept at the moment but I don't see why it couldn't be implemented).
 
Here is a table below that shows roughly what the effects these solutions should have.
Name Bandwidth Broadcast Time Validation Time New Node Time Storage Space
Pruning 1 1 1 1 0.014
Thin Blocks 0.42 0.1 0.1 1 1
libsecp256k1 1 1 0.2 0.6 1
Serialised Broadcast 1 0.5 1 1 1
KYN 1 0.75 1 1 1
Segregated Witness 1 1 1 0.4 1
TOTAL 0.42 0.0375 0.02 0.24 0.014
Multiplier 2.38 26.7 50 - 70
(The "multiplier" shows how many times higher the block size could be relative to the specific function.)
 
 
The Factors in Finding a Balanced Solution
 
At the beginning of this post I detailed a relatively simple framework for finding a solution by describing what the problem is. There seems to me to be five main fundamental forces at play in finding a balanced solution; 'node distribution', 'mining decentralisation', 'network utility', 'time' and 'adoption'. The optimal solution needs to find a balance between all of these forces taking into account a buffer to offset our inability to predict the future with absolute accuracy.
To find a suitable buffer we need to assign a set of red line values which certain values should not pass if we want to make sure bitcoin continues to function as well as today (at a minimum). For example, percentage of orphans should stay below a certain value. These values can only be a best estimate due to the complexity of bitcoin economics, although I have tried to provide as sound reasoning as possible.
 
Propagation time
It seems a fair limit for this would be roughly what we have now. Bitcoin is still functioning now. Could mining be more decentralised? Yes, of course, but it seems bitcoin is working fine right now and therefore our currently propagation time for blocks is a fairly conservative limit to set. Currently 1MB blocks take around 15 seconds to propagate more than 50% of the network. 15 second propagation time is what I will be using as a limit in the solution to create a buffer.
 
Orphan Rate
This is obviously a value that is a function of propagation time so the same reasoning should be used. I will use a 3% limit on orphan rate in the solution to create a buffer.
 
Non-Pruned Node Storage Cost
For this I am choosing a limit of $200 in the near-term and $600 in the long-term. I have chosen these values based on what I think is a reasonable (maximum) for a business or enthusiast to pay to run a full node. As the number of transactions increases as more people use bitcoin the number of people willing to pay a higher price to run a node will also increase although the percentage of people will decrease. These are of course best guess values as there is no way of knowing exactly what percentage of users are willing to pay what.
 
Pruned Node Storage Cost
For this I am choosing a limit of $3 in the near-term (next 5 years) and $9 in the long-term (Next 25 years). I have chosen these values based on what I think is a reasonable (maximum) for normal bitcoin user to pay. In fact this cost will more likely be zero as almost all users have an amount of storage free on their computers.
 
Percentage of Downstream Bandwidth Used
This is a best guess at what I think people who run nodes would be willing to use to be connected to the bitcoin network directly. I believe using 10% (maximum) of a users downstream bandwidth is the limit of what is reasonable for a full node (pruned and non-pruned). Most users would continue to access the blockchain via SPV wallets though. Downstream is generally a much more valuable resource to a user than upstream due to the nature of the internet usage.
 
Percentage of Upstream Bandwidth Used
This is a best guess at what I think people who run nodes would be willing to use to be connected to the bitcoin network directly. I believe using 25% (maximum) of a users downstream bandwidth is the limit of what is reasonable for a full node (pruned and non-pruned). Most users would continue to access the blockchain via SPV wallets though. Upstream is generally a much less valuable resource to a user than downstream due to the nature of the internet usage.
 
Time to Bootstrap a New Node
My limit for this value is at 5 days using 50% of downstream bandwidth in the near-term and 30 days in the long-term. This seems like a reasonable number to me for someone who wants to start running a full node. Currently opening a new bank account takes at least week until everything is set up and you have received your cards, so it seems to me people would be willing to wait this long to become connected. Again, this is a best guess on what people would be willing to do to access the blockchain in the future. Most users requiring less security will be able to use an SPV wallet.
It is important to note that we only need enough nodes to make sure the blockchain is distributed across many places with many backups of the full blockchain. It is likely that a few thousand is a minimum for this. Increasing this amount to hundreds of thousands or millions of full nodes is not necessarily that much of an advantage to node distribution but could be a significant disadvantage to mining centralisation. This is because the more nodes you have in the network, the longer it takes to propagate >50% of it.
 
Storage Cost Price Reduction Over Time
Storage cost follows a linear logarithmic trend. Costs of HDD reducing by 10 times every 5 years, although this has slowed over the past few years. This can be attributed to the flooding in South East Asia and the transition to SSD technology. SSD technology also follows the linear logarithmic trend of costs reducing 10 times every 5 years, or roughly decreasing 37% per year.
 
Average Upload and Download Bandwidth Increases Over Time
Average upload and download bandwidth increases in a linear logarithmic trend. Both upload and download bandwidth follow the same trend of doubling roughly every two years, or increasing 40% per year.
 
Price
I was hesitant to include this one here but I feel it is unavoidable. Contrary to what people say (often when the price is trending downwards) bitcoin price is an extremely important metric in the long-term. Depending on bitcoin's price, bitcoin's is useful to; enthusiasts->some users->small companies->large companies->nations->the world, in roughly that order. The higher bitcoin's price is the more liquid the market will be and the more difficult it will be to move the price, therefore increasing bitcoin's utility. Bitcoin's price in the long-term is linked to adoption, which seems to happen in waves, as can be seen in the price bubbles over the years. If we are planning/aiming for bitcoin to at least become a currency with equal value to one of the worlds major currencies then we need to plan for a market cap and price that reflect that. I personally think there are two useful targets we should use to reflect our aims. The first, lower target is for bitcoin to have a market cap the size of a major national currency. This would put the market cap at around 2.1 trillion dollars or $100,000 per bitcoin. The second higher target is for bitcoin to become the world's major reserve currency. This would give bitcoin a market cap of around 21 trillion dollars and a value of $1,000,000 per bitcoin. A final, and much more difficult target is likely to be bitcoin as the only currency across the world, but I am not sure exactly how this could work so for now I don't think this is worth considering.
 
As price increases, so does the subsidy reward given out to miners who find blocks. This reward is semi-dynamic in that it remains static (in btc terms) until 210,000 blocks are found and then the subsidy is then cut in half. This continues to happen until all 21,000,000 bitcoins have been mined. If the value of each bitcoin increases faster than the btc denominated subsidy decreases then the USD denominated reward will be averagely increasing. Historically the bitcoin price has increased significantly faster than subsidy decreases. The btc denominated subsidy halves roughly every 4 years but the price of bitcoin has historically increased roughly 50 fold in the same time.
 
Bitcoin adoption should happen in a roughly s-curve dynamic like every other technology adoption. This means exponential adoption until the market saturation starts and adoption slows, then the finally is the market becomes fully saturated and adoption slowly stops (i.e. bitcoin is fully adopted). If we assume the top of this adoption s-curve has one of the market caps above (i.e. bitcoin is successful) then we can use this assumption to see how we can transition from a subsidy paid network to a transaction fee paid network.
 
Adoption
Adoption is the most difficult metric to determine. In fact it is impossible to determine accurately now, let alone in the future. It is also the one of the most important factors. There is no point in building software that no one is going to use after all. Equally, there is no point in achieving a large amount of adoption if bitcoin offers none of the original value propositions. Clearly there is a balance to be had. Some amount of bitcoin's original value proposition is worth losing in favour of adoption, and some amount of adoption is worth losing to keep bitcoin's original value proposition. A suitable solution should find a good balance between the two. It is clear though that any solution must have increased adoption as a basic requirement, otherwise it is not a solution at all.
 
One major factor related to adoption that I rarely see mentioned, is stability and predictability. This is relevant to both end users and businesses. End users rely on stability and predictability so that they do not have to constantly check if something has changed. When a person goes to get money from a cash machine or spend money in a shop, their experience is almost identical every single time. It is highly dependable. They don't need to keep up-to-date on how cash machines or shops work to make sure they are not defrauded. They know exactly what is going to happen without having to expend any effort. The more deviation from the standard experience a user experiences and the more often a user experiences a deviation, the less likely a user is going to want to continue to use that service. Users require predictability extending into the past. Businesses who's bottom line is often dependent on reliable services also require stability and predictability. Businesses require predictability that extends into the future so that they can plan. A business is less likely to use a service for which they do not know they can depend on in the future (or they know they cannot depend on).
For bitcoin to achieve mass adoption it needs a long-term predictable and stable plan for people to rely on.
 
 
The Proposal
 
This proposal is one based on determining a best fit balance of every factor and a large enough buffer to allows for our inability to perfectly predict the future. No one can predict the future with absolutely certainty but it does not mean we cannot make educated guesses and plan for it.
 
The first part of the proposal is to spend 2016 implementing all available efficiency improvements (i.e the ones detailed above) and making sure the move to a scaled bitcoin happens as smoothly as possible. It seems we should set a target of implementing all of the above improvements within the first 6 months of 2016. These improvements should be implemented in the first hardfork of its kind, with full community wide consensus. A hardfork with this much consensus is the perfect time to test and learn from the hardforking mechanism. Thanks to Seg Wit, this would give us an effective 2 fold capacity increase and set us on our path to scalability.
 
The second part of the proposal is to target the release of a second hardfork to happen at the end of 2016. Inline with all the above factors this would start with a real block size limit increase to 2MB (effectively increasing the throughput to 4x compared to today thanks to Seg Wit) and a doubling of the block size limit every two years thereafter (with linear scaling in between). The scaling would end with an 8GB block size limit in the year 2039.
 
 
How does the Proposal fit inside the Limits
 
 
Propagation time
If trends for average upload and bandwidth continue then propagation time for a block to reach >50% of the nodes in the network should never go above 1s. This is significantly quickly than propagation times we currently see.
In a worst case scenario we can we wrong in the negative direction (i.e. bandwidth does not increase as quickly as predicted) by 15% absolute and 37.5% relative (i.e. bandwidth improves at a rate of 25% per year rather than the predicted 40%) and we would still only ever see propagation times similar to today and it would take 20 years before this would happen.
 
Orphan Rate
Using our best guess predictions the orphan rate would never go over 0.2%.
In a worst case scenario where we are wrong in our bandwidth prediction in the negative direction by 37.5% relative, orphan rate would never go above 2.3% and it would take over 20 years to happen.
 
Non-Pruned Node Storage Cost
Using our best guess predictions the cost of storage for a non-pruned full node would never exceed $40 with blocks consistently 50% full and would in fact decrease significantly after reaching the peak cost. If blocks were consistently 100% full (which is highly unlikely) then the maximum cost of an un-pruned full node would never exceed $90.
In a worst case scenario where we are wrong in our bandwidth prediction in the negative direction by 37.5% relative and we are wrong in our storage cost prediction by 20% relative (storage cost decreases in cost by 25% per year instead of the predicted 37% per year), we would see a max cost to run a node with 50% full blocks of $100 by 2022 and $300 by 2039. If blocks are always 100% full then this max cost rises to $230 by 2022 and $650 in 2039. It is important to note that for storage costs to be as high as this, bitcoin will have to be enormously successful, meaning many many more people will be incentivised to run a full node (businesses etc.)
 
Pruned Node Storage Cost
Using our best guess predictions the cost of storage for a pruned full node would never exceed $0.60 with blocks consistently 50% full. If blocks were consistently 100% full (which is highly unlikely) then the max cost of an un-pruned full node would never exceed $1.30.
In a worst case scenario where we are wrong in our bandwidth prediction in the negative direction by 37.5% relative and we are wrong in our storage cost prediction by 20% relative (storage cost decreases in cost by 25% per year instead of the predicted 37% per year), we would see a max cost to run a node with 50% full blocks of $1.40 by 2022 and $5 by 2039. If blocks are always 100% full then this max cost rises to $3.20 by 2022 and $10 in 2039. It is important to note that at this amount of storage the cost would be effectively zero since users almost always have a large amount of free storage space on computers they already own.
 
Percentage of Downstream Bandwidth Used
Using our best guess predictions running a full node will never use more than 0.3% of a users download bandwidth (on average).
In a worst case scenario we can we wrong in the negative direction by 37.5% relative in our bandwidth predictions and we would still only ever see a max download bandwidth use of 4% (average).
 
Percentage of Upstream Bandwidth Used
Using our best guess predictions running a full node will never use more than 1.6% of a users download bandwidth (on average).
In a worst case scenario we can we wrong in the negative direction by 37.5% relative in our bandwidth predictions and we would only ever see a max download bandwidth use of 24% (average) and this would take over 20 years to occur.
 
Time to Bootstrap a New Node
Using our best guess predictions bootstrapping a new node onto the network should never take more than just over a day using 50% bandwidth.
In a worst case scenario we can we wrong in the negative direction by 37.5% relative in our bandwidth predictions and it would take one and 1/4 days to bootstrap the blockchain using 50% of the download bandwidth. By 2039 it would take 16 days to bootstrap the entire blockchain when using 50% bandwidth. I think it is important to note that by this point it is very possible the bootstrapping the blockchain could very well be done by simply buying an SSD with blockchain already bootstrapped. 16 days would be a lot of time to download software but it does not necessarily mean a decrease in centralisation. As you will see in the next section, if bitcoin has reached this level of adoption, there may well be many parties will to spend 16 days downloading the blockchain.
 
What if Things Turn Out Worse than the Worse Case?
While it is likely that future trends in the technology required to scale bitcoin will continue relatively similar to the past, it is possible that the predictions are completely and utterly wrong. This plan takes this into account though by making sure the buffer is large enough to give us time to adjust our course. Even if no technological/cost improvements (near zero likelihood) are made to bandwidth and storage in the future this proposal still gives us years to adjust course.
 
 
What Does This Mean for Bitcoin?
 
Significantly Increased Adoption
For comparison, Paypal handles around 285 transactions per second (tps), VISA handles around 2000tps and the total global non-cash transactions are around 12,400tps.
Currently bitcoin is capable of handling a maximum of around 3.5 transactions every second which are published to the blockchain roughly every 10 minutes. With Seg Wit implemented via a hardfork, bitcoin will be capable or around 7tps. With this proposal bitcoin will be capable of handling more transactions than Paypal (assuming Paypal experiences growth of around 7% per year) in the year 2027. Bitcoin will overtake VISA's transaction capability by the year 2035 and at the end of the growth cycle in 2039 it will be able to handle close to 50% of the total global non-cash transactions.
When you add on top second layer protocols( like the LN), sidechains, altcoins and off-chain transactions, there should be more than enough capacity for the whole world and every possible conceivable use for digital value transfer.
 
Transitioning from a Subsidy to a Transaction Fee Model
Currently mining is mostly incentivised by the subsidy that is given by the network (currently 25btc per block). If bitcoin is to widely successful it is likely that price increases will continue to outweigh btc denominated subsidy decreases for some time. This means that currently it is likely to be impossible to try to force the network into matching a significant portion of the subsidy with fees. The amount of fees being paid to miners has averagely increased over time and look like they will continue to do so. It is likely that the optimal time for fees to start seriously replacing the subsidy is when bitcoin adoption starts to slow. Unless you take a pessimistic view of bitcoin (thinking bitcoin is as big as it ever will be), it is reasonable to assume this will not happen for some time.
With this proposal, using an average fee of just $0.05, total transaction fees per day would be:
  • Year 2020 = $90,720
  • Year 2025 = $483,840.00
  • Year 2030 = $2,903,040.00
  • Year 2035 = $15,482,880.00
  • Year 2041 = $123,863,040.00 (full 8GB Blocks)
Miners currently earn a total of around $2 million dollars per day in revenue, significantly less than the $124 million dollars in transaction fee revenue possible using this proposal. That also doesn't include the subsidy which would still play some role until the year 2140. This transaction fee revenue would be a yearly revenue of $45 billion for miners when transaction fees are only $0.05 on average.
 
 
Proposal Data
You can use these two spreadsheets (1 - 2 ) to see the various metrics at play over time. The first spreadsheet shows the data using the predicted trends and the second spreadsheet shows the data with the worst case trends.
 
 
Summary
 
It's very clear we are on the edge/midst of a community (and possibly a network) split. This is a very dangerous situation for bitcoin. A huge divide has appeared in the community and opinions are becoming more and more entrenched on both sides. If we cannot come together and find a way forward it will be bad for everyone except bitcoin's competition and enemies. While this proposal is born from an attempt at finding a balance based on as many relevant factors as possible, it also fortunately happens to fall in between the two sides of the debate. Hopefully the community can see this proposal as a way of making a compromise, releasing the entrenchment and finding a way forward to scale bitcoin. I have no doubt that if we can do this, bitcoin will have enormous success in the years to come.
 
Lets bring bitcoin out of beta together!!
submitted by ampromoco to bitcoinone [link] [comments]

[Table] IAmA Person on day 44 of Paddling the entire Mississippi River

Verified? (This bot cannot verify AMAs just yet)
Date: 2012-05-29
Link to submission (Has self-text)
Link to my post
Questions Answers
How do avoid the larger river traffic (barges, ships, etc..) that might not be looking out for something as small as a kayak? Any close encounters? The barges stay in their marked channel well and are not a huge problem. I was in a few large pools this last weekend when everybody took out their motor boats. A bunch of drunks in speedboats are scarier to me. I had a guy Sunday come within a few feet of me. I almost threw my paddle at him.
When I was passing through Burlington Iowa 2 boats collided a few miles down from where I was camping. 4 people died and I have been much more cautious since then.
I had a barge sneak up on me from behind near the Wisconsin, Illinois border. I about pooped my self when it blew it's horn at me. Stupid Iowa NPR had a segment called "steamboat stories" that had that sound every time it started and would send shivers up my spine.
Not that I'd be pulling rank with a barge, but don't you technically have the right of way being that you have no motor? At least sail boats always have the right of way. Barges stay in their channel that is well marked by bouys. I might have the right of way but that means nothing if they can't see me.
Simple question- Why are you doing this? Also, any pics to share? Generic answer I give - "Because life is short and I wouldn't want to live it without having paddled the Mississippi"
Personal answer - "I need to get back to nature to figure out some stuff after Iraq"
Reason Now - "I want to come back next year and help a wounded warrior to become the first paraplegic to paddle the entire river. The amount of freedom I feel everyday is breath taking and I want to share it with someone who deserves it"
*edit - I am uploading an album to imgur now.
I want to come back next year and help a wounded warrior to become the first paraplegic to paddle the entire river. Please let us know when you get to the planning phase of this. I'll gladly kick in some money towards it. First thing when I get back. This is my new biggest priority besides not dying on the river.
Personal answer - "I need to get back to nature to figure out some stuff after Iraq" If you find yourself in New Orleans next Saturday, I will buy the booze. I will be there in 4 weeks.
The first answer is good enough for me, but each one after gets better and better. Best of luck to you :o) The ups is that I go as far as I want everyday, stop when I want and have time to really discover myself. I also can sing as loud as I want to a Kesha or Pink song on the radio while I am paddling.
Another question if you will? - What are the ups and downs to doing this solo? (Note: Solo, not alone) The downside is it is very lonely. When I first started out I would not see people for days and was alone which was ok and I felt fine. Now that I am somewhere where I see people all the time I feel lonely. Every person I meet asks me the same 3 or 4 questions.
Where do you jerk off? In my tent, the hammock makes it hard to maneuver.
When will you pass through Memphis? I reddit work literally on the banks of the river just south of the I-55 bridge. In about 8 days.
1) What are the expected total costs (gear included)? 1) The boat and gear ran me about 2000 dollars. 400 dollars for the ticket to Minneapolis, 300 to the guy who took me to Itasca. Then about 20 dollars per day I was on the river.
If you ever need a ride from Minneapolis to Itasca again, please just come to /twincitiessocial or PM me. $300 is ridiculous and I know that we could find someone to tote you up there for much less. I gave him 300$ because while I was waiting to go up I was bumming around the Mall of America, killing time. A cute girl asked me if I wanted to go to a casino and I said yes, because I love buffets and knew I could eat whatever I wanted. Waiting for the bus back to the mall so I could catch the shuttle back to my hotel I put 20 dollars in the Ghostbusters slot. I won 600 dollars. I don't really gamble and so I bought a nice hat and some nicer sunglasses for my trip. The guy who gave me a ride would have done it for free but I felt he deserved more and so gave him half of my winnings.
Is your name Huck or Jim? I am glad you did not write out Jim's name like Mark Twain did.
Would that even be possible? You'd exert so much energy per mile compared to going downstream... Everything from Minneapolis to St. Louis is flat because of the 29 locks and dams. It makes the river more like a staircase than a slope.
I noticed there was a picture of you inside a lock. Do they actually let a tiny boat like yours through the locks? Do they open and close the locks just for your little kayak? It seems a bit excessive but they send me through all by myself. The people at the locks are the only people I regularly talk to and are usually cool guys. In the locks with the bigger drops it feels like Star Wars with the giant gates opening.
But I mean you're going against the current regardless. Do kayaks skim the water so it wouldn't be too difficult? I guess I imagine paddling downstream somewhat like tubing down a river. Am I wrong? Back when the river was small and shallow there are sections that are class 2 rapids that would be very very difficult to paddle upstream. Also Saulk Rapids a couple of days north of Minneapolis would be almost impossible to paddle through. I think a rowing skiff would work best on most of it.
Pool 26 represent. FYI, St. Louis's sewer company, MSD, dumps raw sewage into the Mississippi. Hows the water quality now that you've come to our fine city? It has been nasty since Minneapolis. Everybody's poo goes into the river.
How do you get on reddit? I am at a hotel today. I have a smartphone and reddit is fun on it.
1) how are you going to paddle to pensacola? is it safe to take your boat through the gulf? 1) I plan on paddling the inter coastal most of the way from the mouth to Pensacola, my boat is very stable and can handle the gulf if I need it to.
2) do you like living in pensacola? do you consider it part of the deep south? 2) I do not like living in Pensacola, I plan on moving back to SLC. Pensacola is a great place to visit but not so much to live in, and yes it is very deep South.
Do you stop and visit some places you pass? If so, did you stop in the quad cities? (that's my hometown) I paddled through the quad cities at night. Your hometown is probably the most polluted area on the Mississippi. The water smelled like paint. I broke my paddle in the quad cities and was not very happy there.
How did you break your paddle? Going through the last lock in the quad cities I had to pee very bad. There is a rocky area just left of the locks when you exit. A lock can take 30 minutes and I had to go really bad. When I was paddling into that rocky area my paddle hit a rock and the blade broke.
Twin cities resident here! Did you see all the dogs along the shore chasing balls and having a merry time just before passing Fort Snelling? I did. They were on my left as I paddled by. Dogs love to come to the banks and bark at me. *edit - I keep a detailed journal while I am out here but you just reminded me of something I might have never remembered had you not asked. Thanks.
Had I been there that day this may have greeted you. Link to imgur.com I do have a serious question though: how has gear weight played a part in your selection of gear? How much does all of your gear weigh sans kayak? How often do you stop to resupply food and how much food and water do you carry with you? I do not have to worry about weight like I do when I backpack. My kayak alone weighs around 65 pounds. My gear is probably around 45 pounds now and I have about 15 pounds of food. I carry usually a weeks supply of food that is mostly mac and cheese and stovetop stuffing for dinner with pop tarts and candy bars for the day. Water is more difficult than food. I have a 10 liter MSR water bag and a 4 liter platypus bag. I have not been able to filter or treat my water since Minneapolis, and usually fill it up with a hose.
Do you not have a good enough filter & treatment for the water or just don't trust it given the water quality? You can't filter water from an oil slick.
So yeah, antiseptic. Hand sanitizer would be cheap and relatively light. I worked in Yellowstone after college at the Snow Lodge. Fly fishing is an art I will never master. If you ever have a chance to go out there and fish the Snake River or the Yellowstone River, take it. I am glad your eye is ok now.
I have plenty of other questions as well: when it's time to sleep do you simply pull off and sleep on shore? I know there has been some torrential rain lately, how has this effected your trip? Any weather situations that have forced you to stop for the day/had you scared shitless? When I was crossing Lake Cass it began sleeting on my and the winds were causing 3 foot waves. I fell in. I had a bag with fleece pants a fleece jacket and a pak-towel in case of this. After I got into dry clothes I paddled upriver to a lodge I saw earlier. I went into the shower and could not touch the water with my hands without intense pain. Without having been prepared I could have died that day, but luckily I didn't.
I usually just find an island on the river and set up there.
Do you have it setup so things stay in the kayak if it tips? Yes everything is strapped down and in waterproof bags.
What is this monkey swing you speak of? I take one arm and grab a tree branch then swing way back so my poo does not hit my feet. I call it the Monkey Swing because I feel like a monkey swinging from branch to branch.
How was La Crosse? Did you stop there by any chance? I did. A beautiful girl at the awesome river park recommended a pizza place and I ate four very large slices. La Crosse was a beautiful town with a great river front.
What did you do with your boat while you went to get the pizza? The rocks up to the park are pretty steep and it was such a nice clean place I felt like it was safe there.
Awesome! It's my hometown. (I'm in Ohio right now for school.) I'm glad you enjoyed it! What pizza place was it, do you recall? Good luck on the rest of your journey, sir! It was across from a bar called the library.
Beautiful women, recommending pizza? I must go to this place. She had just come from a food co-op also.
Australian cricket legend and World War II fighter pilot Keith Miller put things into perspective when he was asked how he handled the pressure of international cricket. His reply: "Pressure? A Messerschmitt up your arse is pressure. Playing cricket is not." My question: Does your currrent undertaking feel like a walk in the park compared to your time in Iraq? Do you think that this challenge is made (or feels) easier in some way by the experiences you made during your service? Apples and Oranges. We relied on each other a ton over there and it was a shared experience. I feel that my time in the service gave me the confidence to try to achieve something that might seem impossible.
Are you going through the locks when you come to them? Or are you going around on foot? I am going through the locks. I pull a little cord right before them that signals the lockmaster and they put me through just like a barge. I sometimes have to wait upwards of an hour and a half for the barges to go through first. Before Minneapolis I would have to carry my boat around the dams, sometimes up to a mile.
How do you carry the kayak? I've found them a lot harder to portage than canoes. I usually take 2 trips. First I carry all my gear then I use a handle on the side of my kayak to carry it.
Once you conquer the Mississippi what will be your next adventure? I want to come back and help a paraplegic be the first to paddle the entire river. I have had this on my mind for the last month and I think it could be done. The biggest obstacle is portaging around all the dams in Minnesota.
Someday I would like to ride a bike from Coney Island, NY to Chicago then take route 66 to LA. Then I will have done my personal triple crown. Walk up the country, float down then peddle across.
Are you worried about how violent the river becomes in Louisiana? That undercurrent is a killer, literally. Yes I am. 5 people have died on the river within a few miles of me since I have been out here. 4 in Burlington Iowa and one near Hannibal, MO. I stay very near the shore to avoid barges and to be safe. I am very aware that it will be dangerous but will continue anyways.
Most people who die on the river do so because they leave their life vests and brains on the dock to make room for more beer. I have never been or will be on this river without my life vest. I keep a small drybag on my vest with my phone and wallet in case I get separated from my boat.
Are you doing your ama from a mobile device on the water or are you taking a break right now? I am taking the day off. I am at a holliday inn with a business center. I do check reddit every couple of nights from my phone but have to conserve my battery in case I need my phone for an emergency. I stay in a hotel about once every 10 days and this is the second time I took an entire day off. I woke up today and was unable to close my fingers in a fist without a ton of pain and thought it would be a good idea to rest.
Where is your kayak while you are in the hotel room? Did you take it in with you? A marina here is letting me keep it there overnight. Sometimes I hide it among the trees on the shore when I run into town.
How much gear have you ditched so far because you overpacked? Haven't ditched any gear but have lost or broken; solar panel, gps, laptop, gloves, knit hat, kayak paddle and a fleece.
What piece of gear do you wish you had that you don't? What piece of gear has surprised you most? What piece of gear has disappointed you most? I wish I had a spare kayak paddle. My kayak paddle dissapointed me when it broke but the worst piece of gear I had was a Brunton Solar charger. It just straight up did not work even with 12 hours of direct sunlight.
Cat can stove? Cat Can Stove! I don't think anything inflatable could make it down this river because of all the debris.
Do you have any plans for future excursions? I want to do the river again but to act as a guide for a paraplegic and help him/her around the dams and such. It has become clear to me out here that life is better when you stop worrying about yourself and start helping others. If I could share this freedom with someone who might feel confined by their chair then that is a pretty good life.
One day I want to ride a bicycle across the country to complete my triple crown. Walk up, paddle down and ride across. I want to touch the South Pole before I die.
Ehat do you mean by "walk up"? Can you elaborate? When I hiked the Appalachian trail I walked up the country from Georgia to Maine.
When you camp on the side of the river, do you just do it wherever? did you have to organize/reserve locations, or do you just hobo-style it? any problems with authorities ever? I usually stay on islands and pull my boat all the way off the water. No one can really see me.
What kind of wildlife do you see?? At the start there was an amazing amount of wildlife. My favorite was a small furry wolf that was drinking from the riverside. I have seen a ton of deer, ducks, geese, loons, herons and beavers. I also saw a whooping crane. I have a picture of it.
How enormous are the whirlpools? I heard the Mississippi gets massive whirlpools, if so, have you ever gotten stuck in one? They can be upwards of 20 feet. They can be frustrating because there seems to be no good way to paddle around them without being spun around a bit. The more speed you have when skirting by them the less effect they have.
How fast does the Mississippi move? Like, you say you're paddling down it, but could you conceivably just float down it? From Minneapolis to St. Louis the river is controlled by locks and dams. Usually the wind comes from the South and if I do not paddle it pushes me upstream. The current picks up a ton after St. Louis because there are no more dams and floating becomes an option.
Tell us about the stuff you need to figure out about Iraq. What have you been doing since you came back, and why the need for adventure right now? The weight of being responsible for other people's deaths weighs heavy on my heart. I worked for the company that made the drone I flew for a while until they told me I would have to go to Afghanistan. I went back to school for a bit and waited tables. I knew in my heart that I was an adventurer and the only way to get back to that is to dive in.
How polluted is the Mississip? Outside of the cities it is not too bad. I have been by probably 25 coal power plants and tons of factories. The quad cities treats the river like a dump. The water is polluted beyond belief but local groups keep the shoreline decently clean, except in Minneapolis.
As someone who is looking at the filthy bastard right now, (Muscatine, Iowa) what made you choose the Mississippi? I grew up in Memphis and used to hang out at the river. I am just one of those people that when they see a mountain they want to climb it.
Ever read the story "Big Two-Hearted River" by Hemingway? You sound a bit like the character in that. Enjoy your journey and thanks for sharing. No I did read The River Why, Down the River, Huck Finn, and A River Runs Through it though.
How swole are your arms? I lifted a while before this and my arms have actually gotten smaller but more toned.
Any close calls with shady people? Any times where you feared for your safety? Thank you for your military service. Whenever I go through a larger town or city there are people who hang out under the bridges. I avoid them.
Once you get to the mouth in Venice, Louisiana. Would you like to have a beer with me? Sure.
How often do you listen to Black Water by the Doobie Brothers? I heard it on the radio about two weeks ago and sang along. The stroke by Billy Squire and Drift Away are 2 good paddlin songs too. You can usually find me singing along to Brittney Spears and Ke$ha to be honest.
How easy would it be to do this? Like how much experience do you recommend having before you set out on this journey? You need a decent amount of paddling experience for this and must know how to read a river.
Cool.... Where would you get started for all of this? Join a local paddling club. I went through the Memphis canoe and kayak club's courses on whitewater canoeing and kayaking in the 90's growing up. Even if you don't own a boat your local club will probably help you find something to paddle. When I am on my kayak it moves like another limb of my body. When you can paddle and not think about it you are golden. I used to work for an Outdoors shop in memphis. After work every day I would go to a small public lake at shelby farms and paddle for 2-3 hours. I did it because I loved it, even though I just went around in small circles. I did not know at the time that it would lead to this. Start small and dream big. I love the feeling of being on the water. Some people love climbing rocks. If it is el Cap, Everest, a solo sail around the world or maybe a float of the Mississippi that is your calling you will know.
Have you been smacked by any Asian carp yet? Yes they do hit my boat daily. Since lock 19 in Iowa they have been everywhere.
Very cool, I think it is very cool to see someone actively crossing things off a bucket list! Too many people just talk about doing those things but are never serious. Thank you for your service as well! I was paddling north of Minneapolis when I saw a couple of kayaks in front of me. I paddled to catch up and there were about 40 people paddling down the river. I had not seen anyone else paddling before and I was excited. They were a river club from Minneapolis that was out for a day paddle. One of the nice older ladies offered me a place to stay but I did not take the offer and paddled another 10 miles after they got out.
Just curious, how did you get by the Coon Rapids Dam in Minnesota? I imagine you just pulled out some where and put back in down river but I'd be interested to hear how anyway. There is a ridiculously long trail that goes up and down over 2 old rail beds, across a concrete path, down a steep hill, across a 2 foot wide bridge, up a hill with a tree fallen in the middle, then down a long path, that turns into another long path, that finally goes down a hill into a parking lot and then down another steep hill. The path was covered in ticks and there was dicarded panties and broken liquor bottles the whole way. I described it in another response as "rapey". It was not a good time.
How long do you plan on this trip taking? And did you do anything special to prepare for a journey of this magnitude? 70-80 days Nothing too special to be honest. Having gone through SERE-C in the Army helped as well as a lifetime of trips in the outdoors.
Welcome to St. Louis! Just wondering if the river's as muddy everywhere else as it is here? We even have a cake named Mississippi Mud Cake, so, yeah... lol. I used to drink the water and see down 6 feet. Since Iowa it has been bad. Remember playing "hot lava" as a kid. It is like that but with cancer.
Why? I once heard that the afterlife might be a separation from time and you live your life over and over again. Do yo measure life in dollars or in sunsets?
To an alien my life has purpose. What do you have. If it is kids and love you win. If not . . .
Because I own things that money could never buy.
Did I miss the imgur link to OP's pictures? The link is in my comments.
I work at a kayak rental shop in Cleveland, on lake Erie. Im assuming the boat is about 17 feet because you are obviously an experience paddler. Is that right? It is 14 feet.
Did you bring any weed? No :(
Bummer man. I might find a stealth grow on the banks one of these days but I wouldn't want to steal it. I will keep on looking though.
Real men paddle FROM Pensacola TO Minneapolis. If I could find someone to fund it I would turn around and paddle back when I am done.
I'd love a brief overview of the gear you're using. The kayak is a Jackson Cuda Sit on top. I was using an Accent kayak paddle until the blade snapped in the quad cities. I use an Accent paddle board paddle now. I sleep in either my REI 2 man tent or on my ENO hammock. I cook with a denatured alcohol stove. I always wear my life jacket which I have a dry bag attached to hold my phone and wallet. I have a rather large river knife attached to my vest also. I use a Marmot 30 degree sleeping bag with a Thermarest Z-rest for my bed. I had a solar panel and a gps but the river took those from me a month ago.
LOVE my ENO hammock! Slept in it all weekend... Good luck brotha! The ENO hammock is my favorite piece of gear.
As would I! I can't imagine using a sit on top for expedition paddling...a sea kayak feels so much more cozy to me. I picked the Jackson Cuda because I can stand and paddle it like a paddle board. I didn't go with a traditional kayak because I was afraid my legs would not be able to handle months inside a regular kayak.
Good luck, sir. I hope you find what it is you're looking for. You seek a great fortune, you three who are now in chains. You will find a fortune, though it will not be the one you seek. But first... first you must travel a long and difficult road, a road fraught with peril. Mm-hmm. You shall see thangs, wonderful to tell. You shall see a... a cow... on the roof of a cotton house, ha. And, oh, so many startlements. I cannot tell you how long this road shall be, but fear not the obstacles in your path, for fate has vouchsafed your reward. Though the road may wind, yea, your hearts grow weary, still shall ye follow them, even unto your salvation.
Post that shit everywhere :D Maybe our numbers will swell abit. And the trivia team will grow.
Please tell me that's not a fishing pole. I hope you don't plan on eating any fish from that river. Polluted nasty poop fish! That's my poop you are kayaking with! (I live in STL) I would not eat anything south of the quad cities.
You are still north of myself - but when you reach Cairo to Caruthersville (spelling) anthing along that stretch - Basically the Convergance of Ohio and Miss - to where I44 crosses the River. Thanks. I will be passing by probably Friday. I could definitely use a new kayak paddle but I think my mom in Memphis has a spare she will lend me. Mine broke in the quad cities and I have been using a paddleboard paddle like a canoe paddle. It is a mess and I can't close my hands fully anymore but I kind of like it.
You need anything because I could probably get it to you. You can come out and we can high five if you want.
So - regarding Paddle and whatever - looks like I can swing heading North along the river on Thursday - so we are not constrained to a Friday crossing timeline. So outside of the Paddle - any "inland" favorites you desire let me know and we will try and work this out. I talked to my mom and I have an old paddle of mine at her place in Memphis. If you just want to come say hi that would be nice.
Because of the width and the height of the Cuda, a 240cm paddle would be best if you're going to provide a replacement. Maybe the Bending Branches infusion with the soft grips... I was using a 240 before because of the cuda's height. When you set the chair in the low position it is actually not that tall. It is an amazing vessel.
You should launch a Kickstarter campaign to write/document your travels. Perhaps when you do the trip again with a Wounded Warrior. The Wounded Warrior project could perhaps help too. If I could raise money I might. I am well read and well educated but I feel no need to share this. If I could help someone by being popular that would be good. I would rather just die with this than let someone sell it.
I plan on writing a book but I do not like attention while I am doing it. I have already written over 120 pages in my journal but I feel the river is the true story, not some asshole like me going down it If I do ever publish a book about this I want it to be like cannery row, a bit of the wild slipping on the knife. Some days I just wish I was like the kid in into the wild and if I die out here it is worth writing about.
I'm pretty sure I recall you posting your "ride wanted" ad in the twinscitiessocial subreddit or something of the like. Glad to see you found your ride! I recently traveled alongside the river just in Minnesota alone and am really jealous of your trip. No questions here, just good luck! Give some love to mn_redditor. Without him I would not be here.
When you come through Vicksburg, Mississippi, let me know! I will send you a message when I am close.
Did you get bitten by a snake. I fear most bodies of water because of this T_T. I have only seen two snakes in the water, both while waiting for locks. There will be more.
Oh my gosh HEY, i know you! I work at the Four Points you stayed at in MPLS and drove you around in the shuttle :) So fun to see your post on here and see the pictures of where you've been! Hey thanks for the radio station advice. You were a cool chick.
I admire your exercise in Zen. I find mine climbing rock walls. Enjoy the solidarity, risk, and enlightenment. The process of present moments is what matters. The best days are the ones where the hours melt like minutes.
When you get back the zombie contamination will be over. I always wanted to be patient zero in the zombie apocalypse. Maybe the foul waters of lousiana will cause this.
Last updated: 2012-06-03 02:11 UTC
This post was generated by a robot! Send all complaints to epsy.
submitted by tabledresser to tabled [link] [comments]

what time does downstream casino open today video

YouTube Community Guidelines & Policies - How YouTube Works How To BANKRUPT The Casino In 20 Minutes On 1 Slot Machine ... Julia Michaels - What A Time ft. Niall Horan - YouTube Black Conservative Patriot - YouTube Terms of Service - YouTube

The COVID-19 pandemic closed all commercial and tribal casino properties in the United States. This map tracks reopening across the country at the property-level. A property is considered open based on gambling availability. Please contact an individual property to determine what amenities are available. Current Status: 78 Closed | 919 Open. Now Open 24 Hours! Please watch our Facebook page to stay updated. It’s what you enjoy — playing your favorite games where you feel lucky. With all of the newest slots and latest table games, we’ve got your lucky spot. Downstream Casino Resort is owned and operated by the Quapaw Nation of Oklahoma. FOUR STATE AREA — You now have another option if you want to hit the slots this holiday weekend. One the area’s largest entertainment venues is back open, on a limited basis. Chris Currier Downstream Casino, and restaurants for the time being. the casino is no longer 24 hours. It is open Monday through Thursday from 10 a.m. until midnight and Friday through Saturday from 10 With one swipe of your Q Club card, you’ll discover that every play is a winning play and the more you play, the more benefits you earn. Enjoy VIP rock star treatment from the moment you arrive — express valet services, dining discounts, exclusive event invites — all for Very Important Players like you. Make your reservation today by calling 918-919-6000 or book online above. For group bookings, contact 918-919-6000 and ask for the Sales Department. Hotel rates are subject to availability. A 10% occupancy fee will be added to the nightly rates shown. A $5.00 resort fee will also be charged. QUAPAW, Okla. () — Downstream Casino Resort is set to re-open May 21st with some different hours, just in time for Memorial Day Weekend.Here is the Initial Phased One Re-opening for that long Filed Under: Coronavirus Reopening, Thunder Valley Casino LINCOLN (CBS13) — There are a lot of handles, buttons, and tables to touch if you’re going to gamble at Thunder Valley Casino. Downstream Casino Resort, Quapaw: Address, Phone Number, Downstream Casino Resort Reviews: 4/5. United States ; Oklahoma (OK) Quapaw especially the outside one is clean and huge! The gift shop has really cute things all the time, I usually find something I want every visit, The staff at Downstream are service-oriented, food 63 reviews of Downstream Casino "one of the best casinos that i have visited in a while. it's quiet, nice, friendly and i enjoyed my 2 hour visit here. not bad for a small town"

what time does downstream casino open today top

[index] [9716] [161] [5204] [4303] [682] [7050] [7199] [671] [8561] [8374]

YouTube Community Guidelines & Policies - How YouTube Works

What A Time ft. Niall Horan (Official Video)Song Available on Inner Monologue Part 1: https://JuliaMichaels.lnk.to/InnerMon...Connect with Julia Michaels:htt... In this video, I am going to detail for you what it's like being a high roller at the casino, what VIP status is like, how the casino determines whether or n... You understand that YouTube does not guarantee any confidentiality with respect to any Content you submit. You shall be solely responsible for your own Content and the consequences of submitting ... Enjoy the videos and music you love, upload original content, and share it all with friends, family, and the world on YouTube. YouTube TV is a subscription streaming service that lets you watch live TV from major broadcast and popular cable networks. Enjoy local and national live sports, breaking news, and must-see shows the moment they air. Included: unlimited cloud DVR storage space so you can record your favorites, and stream them wherever you go. A lot of people have been asking where to get the bank. Here is the website: https://showforinc.com/?ref=6Save 10% off your purchase of the WinnersBank. Use... Thanks for Watching How To BANKRUPT The Casino In 20 Minutes On 1 Slot Machine! Wonder 4 Boost Slot Machine W/ SDGuy1234! Like the video? Thumbs it up! Love ... How does YouTube identify content that violates Community Guidelines? With hundreds of hours of new content uploaded to YouTube every minute, we use a combination of people and machine learning to ... Freedom and Liberty are Colorblind! The only colors we care about here are Red, White and Blue. This is the Red Pill channel with a conservative/quasi-libert... Steve and Matt Bourie, from the American Casino Guide, discuss 8 things to never do in a casino. They explain why you should never do these eight things and,...

what time does downstream casino open today

Copyright © 2024 top100.playrealmoneygametop.xyz