It's simply not possible to make bug-free software that's supposed to interact with the internet.
And even if it did, it would take so long to develop that it would never get released before it was already too old to be useful.
And even if it did, it would take so long to develop that it would never get released before it was already too old to be useful.
I am not suggesting anything that would increase development time, in fact it is the opposite. Having to explicitly support multiple platforms is hell for both developers AND users