I am not a web app developer, but as far as I can tell Flash and Silverlight will still have their own place for a long while, especially until browsers (most notably IE) get their act together with regards to standards compliance and Javascript performance. The iPhone is a single platform, and the apps only need to work on that one platform. Considering that no browser is completely standards compliant and they all have their own Javascript and HTML quirks, I would imagine it very difficult to program any complex game in purely JS and HTML and have it provide a quality experience in all browsers and platforms, either because it is too slow on some platforms and broken on others because of the lack of certain features. At the very least, Flash and Silverlight provides a uniform platform across all systems for a developer to work on, making life that much easier for everyone.