The idea for an adaptive block size has crossed my mind too, several times during the past few months. From a faraway perspective, it seems like the right thing to do. Aside from the obvious fact that the number of transactions is exploding, mining a single block is becoming exponentially more and more difficult, and the cost per transaction is going way up.
Putting more transactions in a single block, may help reduce the average cost per transaction, but only if block size increases faster than market demand. This may lead to a problem that scares most Bitcoin proponents — centralisation of power. With the difficulty factor of mining set so high up already, we may inevitably reach a situation, in which a handful of miners in the world will be responsible for adding all new transactions to the blockchain. Well, it’s not that the majority of the mining effort is not in the hands of a minority of players already, but smaller transaction size => relatively lower transaction value. This means, less of an impact if things screw up, and need to be reverted.
We need more players on the mining field.
IMHO, what we need eventually, is adaptive mining difficulty, based on the average transaction value of a given block. This would allow more players to jump on board and take on smaller-value blocks, consisting of microtransactions, for example. Bigger players would still be accounted for putting most of the new blocks on the blockchain, but with more eyes watching the network, it will be more difficult for them to make the wrong move, without being sanctioned.