Look back to when desktop apps were the norm. People eventually realized it was counter intuitive to write the same program 5 times for 5 different platforms so they started moving to frameworks (Java/.Net). Then as the web gained the power to host comparable apps people started moving to the web.
It was a natural progression of societal knowledge based on trial and error.
So why are we now making the same mistakes on mobile platforms? Especially since web apps can already match the functionality needed by 99% of the applications out there? Seems a little silly