On average, wind reduces your groundspeed. The short of it is you spend more time in a headwind, so you spend more time experiencing the bad than good.
There's also the fact that even a direct crosswind slows down you ground speed (you lose some speed for correcting your course) but I don't think this compares to block chains or hitchhikers.
An interesting related fact is that with equal distance traveled through headwinds and tailwinds a slower plane will be relatively more affected. From ~12% longer time with a wind speed 1/3rd plane speed down to ~1% with a wind speed 1/10th plane speed.
You will, on average, wait 10 minutes. If you hitch hiked that road 1000 times, you'll have waited 10 minutes on average.
But that doesn't mean you won't wait longer that 10 minutes on a given wait. In theory, you're waiting time will follow an exponential distribution, so you could wait 1, 10, 50, or even 1000 minutes (although quite unlikely)!
But again... On average, you'll be waiting for 10 minutes from car to car.
Only if you didn't have to do the standard physics problem comparing swimming X meters upstream and back downstream to swimming X meters across and then back across.
This seems paradoxical, but you're more likely to meet the players which train most often, and they are also most likely to be the best tennis players.
Mathematical explanation of why Facebook makes you depressed.
I go out every weekend, I talk to everyone, I ask everyone for follow up contact info.
Yeah I get turned down probably 50% of the time, but its a numbers game. Sometimes you meet incredible people, but its taking that first step that matters.
Anyway, if you want to meet people, always go to events you are invited to, meet people. No one remembers how a conversation starts, people that are weird about communication are forgettable.
If the network guesses too fast due to more cumulative guesses per second, the target number increases.
Interesting historical antidote, in early November of 2017 there was an event where it became more profitable to mine Bitcoin Cash. During that time about 60% of the miners left BTC Core in unison to focus on BTC Cash. Transactions for BTC Core started taking upwards two to three times as long as there wasn't enough hash power to guess the magic number in time.
Eventually the miners returned to mine BTC core and transaction times returned to normal, other than the backlog in the memory pool that built up during that period.
Checkout fork.lol which tracks DARI, an estimate of the profitability of mining the coin, you see how the more profitable one frequently switches:
A more interesting question, I think, is given a POW algorithm which adjusts difficultly to target a 10 minute block rate, and assuming network hash rate is constant and propagation is instant, what percentage of blocks take 20 minutes to solve? 60 minutes? And what’s the odds of solving two blocks in <= 60 seconds?
Stackexchange has a good discussion on the topic:
https://bitcoin.stackexchange.com/questions/1863/why-was-the...
[1] http://www.tik.ee.ethz.ch/file/49318d3f56c1d525aabf7fda78b23...
If you find the hash after say 6 minutes, you could delay broadcasting the block to the network for another minute or two, and give yourself an advantage.
Yes there’s a risk another miner would find the same hash, but statistically you could estimate the optimal delay for risk vs reward.
However, if you publish the first block you still have a 1/3 chance of getting the next block first and ending up with 2 blocks. Thus waiting provides risk but zero gain.
In theory this changes if you can do a 51% attack, but that erodes trust in the block chain.
Contemplating adding the "20 minute paradox" as a section since I already explain the foundational principles in the write-up.
Accepting transactions blindly after 5 confirmations/blocks throws away the information of the amount of time it takes to generate those blocks
Note that the dependency of the expected value on sampling method also show up in other places, like Benford's law. The expected value of the first digit of a number drawn from a uniform distribution depends on how the upper bound of that distribution is chosen.
Put more clearly, an event happens on average 10 minutes in the past, but using the same starting point for the event in the future links the events with a dependency. We could also arbitrarily start looking forward at the instance of the event in the past, or another random point in time.
The conditional probability is equal to the unconditional probability, specifically because the Poisson model (which Bitcoin hashing approximates) is a model of fully independent events.
While the average difference in time between one record and the next is 10, the weighted average over the entire duration is 20.
I thought this sounded funny, and I did a little simulation to see if it was correct. Given his assumptions (poisson with lambda 10), you do not get that answer. I got right around 10, which is what I would expect.
https://gist.github.com/tvladeck/e7a164dfe70fa765b10c1af64b3...
Here is a formula to calculate your cumulative_times array correctly for a 10,000 minute period (which is expected to generate 1,000 blocks but may vary of course):
minutes = 10000
cumulative_times <- sort(runif(rpois(1, minutes/10), 0, minutes))
See https://en.wikipedia.org/wiki/Poisson_point_process#Simulati...With correct block times, I get ~20 minutes from your formula.
Anyone know what the longest wait time on a block in recent history was?
Final question -- do large mining operations network their miners so that they don't overlap their hashes. I'm thinking the overhead in doing that would probably be counter-productive given the massive problem space. But, if they were networked that then the probability would eventually go down for a long enough wait between blocks (assuming there exists some massive mining operation).
No, under the assumptions in this article the next block is on average 10 minutes away.
The paradox is that at any random point in time the previous block will also have been, on average, 10 minutes ago. Meaning that if you pick a random point in time and wait for the next block then on average you'll wait for 10 minutes, but the block will have taken 20 minutes in total to mine. Despite the fact that blocks are only supposed to take 10 minutes on average.
Interestingly, it's hypothesized that Satoshi did this:
> He suggested that Satoshi had access to 58 machines for mining, so to avoid checking the same nonce twice he gave each machine a different id, which was stamped in the LSB of the nonce.
https://bitslog.wordpress.com/2013/09/03/new-mystery-about-s...
The short answer is "no" (there is no need).
The SHA-256 space (2^256) is larger than the number of atoms in the observable universe, if you pick the (extra)nonces at random, there is practically no chance you can ever pick the same number as anyone else.
There is no need to do it -- if each miner has a source of true randomness, then it's enough that each miner randoms large number (how large, depends on the number of miners, see the birthday paradox), and slap it on to "salt" their block. If the number space is large enough, it is unlikely that two different miners will get the same salt.
You use what is called the nonce in the block header. Each time you do a hash of the block you increment this nonce. If your hash is under or equal to the difficulty the block is valid. The difficulty essentially means how many zeroes are in front of your hash.
What big mining operations do is to slice this nonce into appropriate ranges for each miner. So no miner is hashing with the same nonce. So miner 1 starts at nonce=0 and miner 2 on nonce=2000. The nonce range depends on how many hashes each miner can do in a ten minutes span. By doing this each miner is not doing hashing with the same nonce. That would be wasting hashing operations.
Now bitcoin cash changed the difficulty adjustment algorithm (DAA). Instead of adjusting the difficulty every 2016 blocks this is done after each block has been found. This was done to stabilize the difficulty. So miners stay mining bitcoin cash instead of switching between the most profitable chain (bitcoin or bitcoin cash). This was a problem before the new DAA was implemented for bitcoin cash.
There has been times in recent history were no new block was found for 20 minutes on bitcoin. For bitcoin cash around 2 hours. This was in November 2017. It has been 10 minutes stable ever since.
You can check this yourself on bitinfocharts.com for each blockchain under Block Time.
What big mining operations do is to slice this nonce into appropriate ranges for each miner. So no miner is hashing with the same nonce. So miner 1 starts at nonce=0 and miner 2 on nonce=2000. The nonce range depends on how many hashes each miner can do in a ten minutes span. By doing this each miner is not doing hashing with the same nonce. That would be wasting hashing operations.
Now bitcoin cash changed the difficulty adjustment algorithm (DAA). Instead of adjusting the difficulty every 2016 blocks this is done after each block has been found. This was done to stabilize the difficulty. So miners stay mining bitcoin cash instead of switching between the most profitable chain (bitcoin or bitcoin cash). This was a problem before the new DAA was implemented for bitcoin cash.
There has been times in recent history were no new block was found for 20 minutes on bitcoin. For bitcoin cash around 2 hours. This was in November 2017. It has been 10 minutes stable ever since.
You can check this yourself on bitinfocharts.com for each blockchain under Block Time.
Still, kudos to the OP. That was a great attempt to be precise.
And why do 3 buses come at once? Because the first one takes all the passengers, so stops more and gets slowed down. The other 2 catch up.
And also if you do half your trip and 10mph and the other at 20mph your average isn't 15mph. You spent more time at 10mph!
If you're measuring "half your trip" in terms of distance covered, sure. If "half your trip" refers to half the total time, then your average is exactly 15 mph.
> And why do 3 buses come at once? Because the first one takes all the passengers, so stops more and gets slowed down. The other 2 catch up.
This is not related to the other phenomena you mention; as described here, the buses are actually being driven together as opposed to varying randomly.
Consider a simple (not-exactly-Poisson) set of blocks: 20x1minute intervals, plus 1x10minute interval. The average interval size is (20x1min + 1x10min)/21 = ~1.4min
A random moment in time is twice as likely to be in a fast blocks as in the slow blocks.
But average wait time (given a uniformly random start times) is (20min0.5min + 10min 10min)/30min = 110min^2/30min = ~3.6min.
That per-start-instant average wait time is longer NOT because you are more likely to be in a slow block, but because being in a slow block has a much longer average wait-time than being in any of the fast blocks.
First of all, when the GP says "you are more likely to be in a slow block", it means "you are more likely to be in a slow block, relative to how many blocks there are".
In your example, if you pick a block at random, you have 1/21 chance of being in a slow block. If you pick a block by choosing a moment in time at random, you have 1/3 chance.
It is obviously not true that with any distribution you would be absolutely more likely to be a slower block.
Secondly, your last sentence seems to give a reason which doesn't fully make sense, and certainly isn't 'the opposite' of the given reason. Slow blocks of course have longer average wait-times than fast blocks. But this affects both the 'time-weighted' average and the 'block-weighted' average.
If you think that slow blocks have a longer wait-time than fast blocks, but that slow blocks are less likely than fast blocks (in the time-weighted average), shouldn't that make the time-weighted average LOWER?
you expect to wait 2x the average.
Actually, this is also slightly incorrect, conflating "expected wait time until next block" with "average current block duration". These are two different expectancies: You always expect to wait exactly the average wait time of 10min until next block; and you expect your block to be of double average duration (20min, with the instant of sampling lying somewhere in the middle).The concept of memorylessness is not very intuitive, and thus from the true statements "average block time 10min" together with "the current instant is expected to be somewhere in the middle between two blocks" is drawn the wrong conclusion (disregarding memorylessness): "average wait time is 10/2 = 5min". So, new attempt at a tl;dr:
"you expect to wait 2x the intuitively (wrongly) expected time (of 5min)"
I've been thinking about the game theory aspect of that, and it's a bit hard to work out whether that will cause even more miners to flee. If so, that could very well be a death spiral.
It's hard because transaction fees might make up the difference. Though it's hard to imagine everyone being ok with >$100 transaction fees.
If we acknowledge the propagation delay, their expected profit increases slightly because of the reduction in the probability that their blocks would be orphaned.
Additionally, the increased congestion would likely increase the transaction fees, further increasing the per-block profits.
Once the network readjusts and the difficulty decreases, the remaining miners would see a windfall profit.
The potential death-spiral would only come if the temporary increase in delay causes the value of bitcoin to fall, in which case more miners will likely flee. If this happens fast enough, the blockchain may never reach its next adjustment.
Surprisingly this is not true with Blockchain topics. Upvoted Blockchain stories feel ok but not that relevant or often random. Comments, discussions are sometimes constuctive (like this one) but often anti-blockchain or of low quality.
When it's in the topic of your domain expertise, you perceive HN to be incorrect, but in all other domains, to be right?
This is precisely because of: "The upvoted stories, the comments, the discussion are of such a high quality. It's just the best resource to stay informed and educated in tech."
If the best, the brightest, the most educated are anti-blockchain, there are definitely reasons for them to be.
---
BTW. Is this true what the article is saying: it takes 10 minutes for a transaction to clear in bitcoin?
This is due to most blockchain projects being overhyped garbage.
The tech itself is also of questionable practical value.