1. UI is inherently a very complex problem, because of the state. Most of the so called web apps are thin clients with most of the state machine delegated and spread over backend services.
2. Android platform was shitty designed to begin with. Terrible architecture, ugly UX, frustrating docs etc.