While it's true that "non-mining node" isn't as useful as as "mining node", "non-mining nodes" are required to verify many things such as :
1. Know which one is longest chain, it's really useful when chain-split occurred unintentionally. The example is Bitcoin-qt upgrade 0.8 in 2013.
2. Detect invalid transaction in block, since you can't detect it only from block header which SPV uses.
3. Know that other nodes/miners change their Bitcoin protocol intentionally.
But people should note that not every user should run full nodes, but user should be able to run full nodes if they want to without expensive/specialized hardware.
More info : https://freedom-to-tinker.com/2015/07/28/analyzing-the-2013-bitcoin-fork-centralized-decision-making-saved-the-day/
Then I assume that that my node is as good as a miner's node.
But why do some people believe that only the miners' nodes matter and are very quick to cite this?
Yes, your node is useful, but no, it is not "as good as". The blockchain really only takes a step forward when a block is created. You cannot create blocks.
Theoretically you can create blocks, but only lack the amount of PoW needed.