First of all, plenty of systems have the ability to roll back transactions. Exchanges can and have declared some transactions void if they were the result of market manipulation or extreme volatility, such as during the famous flash crash.
Second, with a blockchain you need the other party to sign the reverse transaction. Either you have to trust that party, or a central and neutral authority with some sort of main key, to produce the inverse transaction. Once you have this, you have introduced a ton of trust and/or centralization into the system, in which case you could have just used a regular SQL database anyways.
It's the kind of thing that I would put in a "false things programmers believe about transactions" article if I ever wrote one.
Due to late fees, overdrafts, interest, frauds, various legislation and protections, cooling off periods, time zones, comm lags, etc etc etc, it's dangerously false to believe that transactions work in some kind of immutable real world time stamped process.
I know these days there's a network of banks that do much faster transfers between them, but that's because they trust each other to reverse charges as needed.
Maybe stray gold or silver coins or similar. Those offer more privacy than BTC though and are also quite easy to safely store (safety deposit boxes are cheap compared to any meaningful valuables). Or you can just buy GLD on the stock market.
Cash, at least in the US, offers a lot more privacy than BTC does. It also has low, stable transaction fees related to its use and existence.
The internet had tremendous utility at 56k speeds. The blockchain so far is mostly just useful for propagating itself and propping up the value of cryptocoins. There are some exceptions, such as using the blockchain to notarize documents (although has any court actually accepted blockchain-notarized documents as having legal power?), but the author's criticisms are well-founded. Even Ethereum Smart Contracts aren't particularly useful because in order to affect anything not on the blockchain you need an oracle, which destroys the whole decentralized 'trustless' concept.
> They mention "immutability" being a problem - so much so that it somehow disallows typos or undos. That's just not true - you just represent the updates as changes in their own right
The author already covered this. You can't undo a transaction without the cooperation of the other party. Accidentally send 10BTC to someone when you meant to send 1BTC? You're entirely beholden to the whims of the recipient to decide whether to refund you. Nobody else can do it. Or perhaps more importantly, if someone steals money from you, it's impossible to recover (because you can be sure the thief isn't going to refund it).
If you're using the blockchain in a manner where you can trust the recipient to be on board with correcting any errors, what benefit are you getting from the blockchain?
> I just think blog posts like these aren't really making compelling points other than "the current technology today has many flaws", which I think is uninteresting to most.
The only two points tied to "current technology" in the article are complaints about the blockchain speed and the blockchain size. But it turns out the first problem is going to be solved by literally not using the blockchain for most stuff (which pretty much proves the article's point), and the second problem is still a legitimate problem. Even if you can mine without having the full blockchain, someone is going to need to have it in order to actually validate the whole thing periodically. If we get to the point where the blockchain is so large that only a few major players can afford to have the whole thing, then we've lost the 'trustless' aspect because now we have to trust those major players when they say the blockchain validates properly.