The browser is very accessible and understandable as an environment as compared to different kinds of desktop environments that exist. Sometimes having an imperfect thing which exists is better than a non-existent perfect thing. Sure, a web application will never be as snappier as a native application, but it can be built, deployed and maintained by a much smaller team than what would be required for supporting desktop applications for multiple environments. If it feels 'good enough' to the users, they won't care.