I am a software engineer, and I have some idea about how to scale things and the limitations of algorithms. I also try to inform myself and hear both sides. But it's becoming increasingly difficult with all the hate-posts. It's like the Democrats and the Republicans all over again.
In the final analysis, I keep coming back to this simple question. Does it really make any sense, from any point of view (practical, technical, ideological, anything) for my daily coffee purchase to be replicated to thousands of nodes and then recorded for-stinkin'-ever?
No. Again, no. I can't think of any good reason it HAS to be this way. And I can think of plenty of reasons (scalability, privacy, practicality) why this should NOT be.
I'd love to use Bitcoin for these everyday purchases though.
So this leaves me agreeing that we need off-chain extensions or layers on Bitcoin, such as the Lightning Network. Solutions that eventually do settle on the blockchain, while conveniently forgetting the minor details that I didn't want to share with the world anyway. Done right, these could even let me pay in pennies or fractions of a penny for web content, etc.
But of course, I also see the need for increasing raw throughput. If Bitcoin scales to billions of users, we'll need much larger blocks even just to settle on the blockchain once a month! It's simple math.
So why can't we have both? And why can't we work on both at the same time?
Because… politics. And personal issues. And the hardening of positions on both sides, digging their heels in and refusing, ridiculing or even ripping out the other side's solutions just out of pure spite. All while somehow managing to convince ourselves with "reasons" that show how right we are and how wrong… no, EEEEVIL, the other side is.
Calm down, stop the FUD and the conspiracy theories, and realize most people just want Bitcoin to succeed.
TL;DR 1. Recording coffee purchases on the block-chain makes no sense. 2. We need off-chain scaling and on-chain scaling. 3. Our stupid politics is hurting Bitcoin because we're separating the two necessary parts of the overall solution.