I think one of the bigger issues is tooling around creating web applications and related content. For now, webpack and other bundlers do a pretty decent job of grouping bundles together, however the additional costs for handling routing or server-rendering/caching in order to determine which bundles to push is a bit in the dark.<p>I think we will definitely get there in the near future. I also think that one can definitely get a well-crafted application together by hand, but until the tooling catches up, it will not be widely used.<p>One thing that could be done is a webserver that tracks which resources are most commonly requested within say 5 seconds of an initial resource, and if >N% of them also request a given resource, it gets pushed by default. That could be a good starting point, but then comes the cost of keeping those relations/counts/tables in memory and not overloaded.<p>Definitely some opportunities out there.