One of the biggest mistakes the Internet made was trying to make HTTP do everything.

What was HTTP supposed to do?

Transfer hypertext.

Transferring hypertext is simple. It has a utility.

Then we decided to transfer photos. Still simple. But photos are neither text not hypertext.

But that wasn't enough either. We added stuff like GIFs, JavaScript and Flash.

Fast forward. Now everything HTTP does is so complicated, a web browser can be more complex than an operating system.

@atomicpoet surely introducing other protocols would make browsers more complicated? Currently from a network point of view they only need to talk http/https. If we used different protocols for images, binary downloads, dynamic updates , scripts etc wouldn’t this make things more complex?
@atomicpoet once we get into the really complex stuff (streaming video, tunnelling dynamic connections over https, etc) I’d argue we aren’t using http as a protocol any more - we are using the fact that ports 80 and 443 are likely to be open to send data in whatever format the application needs

@Irongeek Not everything requires a web browser, not should it.

Maybe from a network point of view, it's easier to shove everything through HTTP/HTTPS.

But now you're just offloading complexity to other areas of development.

Call me crazy, but maybe it would be better to generally download things through a BitTorrent client than through a web browser.