What's the right way to build offline into a web application? Despite wide support of technologies like appcache and web storage, solutions remain hackish. Why?
It's easy to poke fun at websites with multi-megabyte pages, but latency and number of round trips are the biggest killers of page load performance, especially over 3G. How can we get the best out of the network and not let it slow down our apps? What's the best way to handle foreign resources, dependency management, batching and minification?
How can we get faster repaints, more frames per second, quicker layout updates? Why are in-browser operations still perceptibly slower than native? And with page session time growing dramatically, are web developers worried enough about memory leaks and garbage collection?
Why are some designs easy to implement and others almost impossible? Can we make it easier to do magazine style column layout, fitted wrapping or embedding sandboxed content? For those aiming for truly responsive design, are variables like CPU power, viewing distance, input interface and pixel density just as important as viewport-width?
How do we write web apps that are agnostic to different input technologies? What about devices that combine touch and mouse, and what of new interaction methods like remote controls, speech and 3D gestures? What problems do we encounter when we expand support to encompass embedded browsers in devices like kiosks, TVs, games consoles, in-flight and in-car screens?
Slowly, websites have been peeking outside the browser sandbox, though we remain some way off an interoperable solution for the holy grail of a website-as-desktop-app without any runtime other than the browser. How do we get there more quickly, and in the meantime navigate problems like conflicting and confusing user permission prompts, testing and updating, and do we get the access we actually need?
Sites have become too complex to build by hand, and too complex to test without automation. What are the tools we now rely on for authoring and testing? Where are the gaps? Where do we need to focus attention to improve support?