@skyblond Things got messed up with the idea of webapps. Entire applications that run in the browser. As I am a web application developer, I love this idea. But you're 100% right.
The majority of the web is not web apps. Giving the browser all these capabilities makes it massive. Also browsers tabs work differently than most people know. Each tab is another entire browser in duplicate, they do this so a page in one tab that gets frozen doesn't freeze up the other tabs. 85mb chrome with 5 tabs is 425mb of chrome. Sadly all browsers are built this way.
As the internet has become dynamic, it's time for browsers to become the same. A browser that loads resources only when requested by the page would be a massive performance and efficiency boost. Like there is chrome lite, it would be sweet to make a "lite tab" in a normal chrome browser.
But here's the biggest caveat, you mentioned ad-block. Extensions are psuedo applications. For it to be able to run one, it must be able to run them all. That makes the browser gigantic again.
There needs to be a divide. If there are methods of installing web apps, not using the browser, the browsers can go back to being ultra light and fast.
You're absolutely right about the browser working like a JVM, because it is one. It's powered by Googles Java V8 engine. JavaScript tells the engine what to do. 🙂
You're a smart person to have noticed that.
Hehe too many JVMs out there. I'm not a big fan of it anymore. People think it gives you native performance but it really doesn't. That would be C and C++ that give native performance.
There is a standard for browsers, established by Mozilla, called the MDN. For developers, they standardize through the W3 consortium. Next time they have a convention I should go there and do my political thing and influence them.
But you're right before, there should be a browser for browsing, and not possibly doing a billion other things. 👍
@skanman
I want things to be not complicated.
I mean, the extension system is a good one, the purpose is to prevent browser from over-packing features and let user to install extension if they want something extra.
I tried some well developed web applications and extensions before. Those are really pleasant to use. With bad designed ones? You have to infer what's going wrong in code and avoid operations that will trigger the error. (I'm not a web development so I don't know what's going wrong exactly, I could only infer based on my limited experience).
The browser definitely need a way to load resources on request. Like if the website don't need to connect my wallet, why the wallet extension still running?
IMO, the browser works like the jvm for Java, where it serves the application by offering a standard interface. For java, they have a committee that release new standards every several months and let the vendor to implement the jvm, the one who actually run the program. Now we have oracle, openjdk, IBM, aluz, all different jvms that have their own special abilities.
I think it will be great if we have a standard yet open interface for browsers. So vendor like Google, Mozilla, Apple and others can do their own job while not screw up their users.