Okay then change BIP101 so that the max block size doubles every 2.5 years. Problem solved.
Plus the change in timeframe is only the short term trend which is hardly an indication of what will happen between now and the next 20 years.
No, this does not solve anything. Basically if we had a minimum and maximum within a possible projection, while speculating, Gavin would opt for a choice near the maximum. We can not predict the future and the more we try to predict (more time, e.g. years) the more we are wrong.
If for some reason it starts to get too expensive to run a full node
and blocks are not filling up then increases of the maximum block sizes can be delayed and each increase in the max block size can be less then double. As a rough approximation, I think it will be unlikely for it to become prohibitively expensive to run a full node for small sized businesses.
Pieter Wuille actually made a better suggestion (17.7% increase per year). However, this is not that good if we start with a 1 MB limit because we would reach a maximum of 8 MB in 2030. It would be interesting if we had a initial 8 MB limit and a 17.7% yearly increase.
I think that would probably be too small of an increase, especially if Bitcoin is going to gain widespread adoption.
Regardless if Bitcoin is to remain decentralized the max block size needs to increase, and it needs to increase a lot over time. Otherwise it will become too expensive to use and people will be forced to either use the traditional banking system or centralized systems like LN and side chains. There is no way around this. There is a good chance that it might get more expensive to run a full node.
Actually I disagree, and so does Gavin (among other people). Blockchain systems do not scale properly, nor were they designed to do so. We can't just infinitely increase the block size, this will just lead to other problems. We need other solutions that are going to be built on top of the blockchain or that are going to work completely off-chain.
I agree that over the long term, there will likely be more off-chain uses for Bitcoin then there are now (one example of this would be someone prepaying a weeks worth of coffee onto a gift card and the user would use the gift card every day until they need to add additional funds to such card). However the max block size does need to increase a lot in order for Bitcoin to reach any level of mass adoption. Bitcoin was designed to be scalable, although it made little sense when Bitcoin was very new to have very large blocks because Bitcoin was not being used that much and because the cost of storage/the cost of bandwidth was higher then it is now.
Demonstration of the lack of scalability with Bitcoin:
At 1 MB per block, Bitcoin has a average of ~3 transactions per seconds (see
D&T thread). Visa has an average of 2,000 tps (a maximum of 56,000). Just to reach the average that Visa handles (not the maximum, nor peak times) everyday we would need ~666.6MB blocks right now.
Just for reference, we would need ~18.6666 GB blocks to be able to process the same amount of transactions that Visa can.
When Visa processes a transaction, they most likely need to transmit and store more data in their own database then is transmitted/stored when a 3 input, 2 output transaction is confirmed on the blockchain. Visa also needs to store information about each transaction in it's database for a long time (although not forever), it also most likely needs to store failed/denied transaction in it's database for a long time (which is not the case for Bitcoin).
Visa does need to keep a number of backups of all of their transactions (although they probably do not keep thousands of backups), and they do need to transmit each transactions a number of times, including to the issuing bank, which also would need to keep a number of backups and themselves will need to transmit each transaction they receive a number of times.
Right now Bitcoin is far from the level of adoption that Visa has, so there is no need to have a 600 MB (or a 19 GB) max block size now. Although hopefully it's adoption level will increase substantially over time and such a maximum block size will be necessary.
Tl;dr:
Bitcoin can't scale well on its own. We need to do everything, i.e. increase the block size, implement sidechains, the lightning network, payment channels. Everything.
I am glad that you agree on the larger block sizes. I am unsure about the others though. I do support a small amount of off chain transactions, and although I do not drink coffee, I would trust Starbucks with the ~$20 or so that I would need to send them each week in order to buy a cup of coffee every day.