just pay another couple pennies to get your transactions confirmed in the next block.
Ahh, yes. If only those 10k unconfirmed transactions had paid higher fees they would be confirmed by now.
Yes they will not be confirmed. We need 20 MB blocks to make spamming the network more expensive.
That is a false, or at least incomplete, argument.
The cost of spamming the network and delaying transactions is, in a simplistic representation, a function of the cost per kB and the size of the block.
This is an important distinction.
Although larger blocks would increase the cost to delay other user's transactions, the exact same result could occur from a functioning fee market.
Increasing EITHER capacity OR the cost per kB would increase cost.
The ultimate result of these two strategies is different, however.
With a larger block size, the long-term cost to the network rises.
Each kB of block chain must be stored by all of the full nodes participating in the network
forever, given the current system.
Each kB of transaction stored in the chain has a very real long-term "cost".
The increased cost is
permanent.
With a higher fee per kB, the short-term cost to the network rises.
Transaction fees must rise for users, in order to be included in a block, during the spam attack.
The increased cost is
temporary.
This trade-off should not be underestimated.
Maybe the wallets could be updated to scan for spam attacks, and in the event of one suggest paying a higher transaction fee. A message could explain the situation and suggest a higher fee for urgent transactions, or the normal fee for non-urgent transactions.