Ok, so people say that SegWit is a soft fork. What does this mean?
So let's say I was running a version of Bitcoin Core that was downloaded and installed in 2015. And then I just left it running without updating the software.
And then on SegWit activation day, blocks start coming in that contain Segwit transactions, eg. those bc1q addresses. So my 2015 Bitcoin Core will accept those blocks as entirely valid and then add those blocks to my local Block Chain?
Yes it would accept them, but you would not be able to validate and receive transactions since your node would not understand them.
So what is to prevent me from doing my own soft fork? Let's call my soft fork SegCash, and then I buy a bunch of mining equipment and start mining my own blocks. Will those blocks that follow my own soft fork rules be accepted by all the other nodes?
So what is to prevent me from doing my own soft fork and increase the block size to 100MB per block? And then I buy a bunch of mining equipment and mine my own blocks which follow my own soft fork rules, and then those blocks will be accepted by the rest of the network?
So if a miner were to start mining TapRoot blocks right now, those blocks will also be accepted by the rest of the network as valid?
No, if you change things, every other node on the network will see these blocks as invalid and discard / ignore them.
Same as if you started using taproot before it's accepted date.
Doing this you would be creating an altcoin.
-Dave