|
|
|
|
|
by la12
2519 days ago
|
|
The real reason in vast majority of cases, why most of our software seems slow is not because someone used Javascript instead of Win32 C or something else programming language related. The real driver of slowness are the network requests for everything. You could build your software in assembly but if each action has to hit a rest endpoint, the network request will utterly dwarf anything else happening locally. So as more and more software moves to browser as web-apps this slowness is unavoidable. Consider how more quicker and responsive Thunderbird feels to using gmail, a web-app. |
|
OK, let's turn this into less of a rant: if you can do things in a native desktop app, you're almost always better off than with a browser based solution.
If you need networking, then you need to put up with latency and throughput. Thay is just unavoidable. What is avoidable is the overhead of unsuitable protcols. HTTP is perfect for one-off stateless requests for documents from a remote server. That is the whole point. But people crammed haphazard session tracking into it (cookies) and wonky authentication, then decided that having open sessions on the server is not something you do and layered an extra layer of statelessness on top of that while all the conplex browser based applications out there are actually incredibly stateful on the client and server. A native client that uses a custom tailor-made stateful protocol to talk to a server that also keeps session state would be much faster and more efficient than the shaky Jenga tower of compoments that are cobbled together to form the current generation of browser based software.