Although I have slowly, over the last 10+ years, started to foggily understand how Bitcoin works, it’s been a long journey of actively seeking out this info and slowly pulling it out from people who seem extremely smart but who just can’t seem to explain it coherently in a way which isn’t too dumbed down, but also doesn’t mention eight trillion undefined terms in each sentence and just assume prior knowledge about everything.
Some things really confuse me. This whole idea of "ins" and "outs" and sending the wallet contents followed by the "minus" the wallet contents plus a small amount… the "smart contracts" which nobody ever seems to even mention… It seems unnecessarily complicated for no good reason. But there probably is a good reason.
Okay, so it enables you to do this and that "weird thing". But why? Is it so unthinkable to just pay to address A, then address B, then address C as separate transactions? Why have all these "complexity-increasing edge-case features" included? The damn "vouts" alone have certainly hindered my ability to start using Bitcoin for payments in an automated manner, because it was so confusing to implement and talk to the Bitcoin Core RPC API.
And since then, there’s been countless "amendments" (BIPs) to this original thing. I don’t understand why they keep piling on stuff instead of actually getting it working super-solidly on a basic level and preferably keeping it like that forever. I don’t understand the priorities that the Bitcoin developers/community have. Why isn’t the goal to just make it possible to send and receive Bitcoin in the most dead-simple manner possible, and then to promote this simple system and get everyone to implement it?