Ok. I want to ask a stupid question here. As someone who has been really out of the loop on the technical side of things and I also have really no idea of the politics behind these factions... but I want to ask what is the problem with big blocks exactly.
In terms of space on harddrives I don't see it. A 4 TB HDD is like 70 dollars on sale.
I did some quick math.
Assuming a block created every 10 minutes and is the max size(which is extremely unlikely but lets go with that) 1MB or 2MB or 3MB or 4 MB or 10 MB.
10 years from now here is how much more GB is added to the total size of the blockchain
1mb blocks - 525.6 GB
2mb blocks - 1,051.2GB
3mb blocks - 1,576.8GB
4mb blocks - 2,102.4GB
10mb blocks - 5,256GB
Even with 10 MB blocks starting now and goign to 10 years out there would not be a storage issue, for the average person. The average person(western) can afford to buy a 6 TB or a little higher HDD for like 150 bucks or something, and by the time we are 10 years out a 30 TB drive will be like 100 bucks or cheaper.
Cost of internet? On average most internet companies per month charge like 60 to 100 a month and you get between 250 GB to 1,000 GB a month downloaded before they charge you an extra 10 bucks for another 100 GB.
So even under the 10MB block size on a monthly basis you are only downloading on your node 40 GB per 4 week period. (I note that this number may be higher as others point out).
How about speed of that internet? Of course it can handle it... 10MB = 80 mb(mega bits) and in terms of speed, so to download 10MB on an average of every 10 minutes your internet speed needs to be at the minimum be able to handle 133 kbps, yes, kilobits per second, so convert to KiloBytes per second by dividing by 8 and you get 16.5 KBPS, DIAL UP IS 56 KBPS.
If you have 80mbps download you can do 600 10MB blocks in 10 minutes.
I honestly have no idea why anyone thinks big blocks are a problem, maybe if we got to 100 MB blocks and it happened in a few years, but that means almost everyone in the world would be using BTC to make 100MBblocks full every 10 minutes every day every week every year...
So what is the issue? Please lay it out for me, I have been away for awhile. Am I missing something? Maybe poorer people cant afford to host a node is the issue? But are they hosting it now anyways, probably not...
Please note I did edit some things as I realized I did not word some things correctly and some things were exclamatory for no reason. Thank you below for the great responses about the spam attacks, did not consider that. I guess that changes my mind then on what the real solution is, this may have made me more confused than before I posted to be honest.
You are perfectly right.
The real issue is that one wants to push agendas, and uses this false problem to do so.
While it is true that making bigger blocks makes a bigger block chain that is not to be afforded to be downloaded by the most modest of potential bitcoin users, one forgets to mention:
1) that to be a bitcoin user, one doesn't need the block chain in its whole, and a light client is perfect.
2) that the number of full nodes that do not mine has nothing to do with the decentralization of bitcoin.
The nasty thing about bitcoin is that it has lost most of its ideal decentralization, but not because of the size of block chains, but rather because of the economies of scale of proof of work. Bitcoin's design was exactly made such that "full nodes" have nothing to say, and only MINERS decide on consensus (of chain history and protocol). Only proof of work is a "credential" in bitcoin, exactly because Satoshi wanted to avoid the number of full nodes to play any role (it is too easy to sybil it).
And the mining entities, that make the decisions, are the mining pools and there are essentially 20 of them. That's the real state of "decentralization" of bitcoin (the majority is even in the hands of only 5 of them which may be sock puppets of 1 or 2 people).
In order to hide that ugly face, a lot of wind is made concerning the importance of "Joe with his full node in his basement", but that node has nothing to say. Joe's node can only download whatever single block chain the miners mine, or stop. If Joe's node stops, it is as if Joe switched off his node.
A light client can check that one isn't serving bullshit by just downloading the header chain, which contains all the proof of work ; and once that header chain is verified, any specific transaction can be checked by verifying the Merkel tree branch in the block at hand. A light client doesn't have to check for double spends, because the miners already did so, and if the miners decided amongst themselves to include a double spend in the consensus and continue to keep consensus over that (continue to build blocks on top of that), then in any case, you cannot do anything about it, and that double spend is now in any case part of bitcoin.
So the raw truth of bitcoin is that as a user, you are in any case at the mercy of what the miner pool consortium decides (it has full consensus decision power), whether that is "according to the rules of bitcoin you thought were in place or not", and once you accept those decisions (and you can't do anything about it), a light client is sufficient to check whether a given transaction has been decided by that pool consortium or not (nobody can fake it).
There are some advantages to running a full node, and one has to find out for oneself whether those advantages are sufficient to spend the needed modest investment of such a node is worth it or not. But it has nothing to do with the "decentralization" of bitcoin. Because bitcoin was exactly designed for it not to matter.
That ugly truth cannot be heard, and that's why a lot of fuzz is made by bitcoin evangelists about the importance of full nodes. But they are about as useful for the decentralization of bitcoin, as hanging a talisman around your neck is against car accidents.