3 ms·
The main difficulty is that networked apps have a network to deal with and generating those bindings coupled with today's demands for interactivity etc. makes t
by sansnomme 7y ago
The main difficulty is that networked apps have a network to deal with and generating those bindings coupled with today's demands for interactivity etc. makes things tricky. RPC frameworks like gRPC tend to be quite rigid in this aspect too (requires setting up exact specifications), despite making things easier for the client. Also, the threat vectors are completely different. If all browser apps run on a iOS device (i.e. locked down tightly with secure elements, can be used as Point of Sale machines, very difficult to temper) with data piped over TLS then it might be another story. But we don't live in that world. Browser apps have to deal with the fact that they can be tempered with easily. That a lot of things requires securing on both the client side and the server side (just think about how many times you have had to write two validations for form input). Servers have to be designed not to be easily compronised. It forces data and state to be clearly specified and mapped out. You can't just hold everything in-memory when you have to pipe things down the wire.
Potentially soon we will be seeing more of such things. MSFT WebForms didn't work out for all sort of reasons, but with stuff like front end Flutter, WebAssembly, the whole server-control GUI over WebSockets thing with Phoenix LiveView, Plotly Dash, .NET server side Blazor we are seeing a resurgence of this idea. Building rich UI and having to manage state both ends is a pain in the butt and makes stuff like authentication/authorization tremendously difficult to implement properly and correctly. We have come a full circle.
What's almost ridiculous is all the manpower and engineering effort that was put in over the years just so we can have a better UI and UX. You can build a shiny GUI in React and use the same COBOL accounting software code running in a DOS simulator that once powered a TUI software and the end user would not know the difference and would be more than happy to hand over money.