40 ms·
> Turing-complete code You can't build apps without turing complete code. We would be back to downloading and executing applications/programs.
by dorgo 7y ago
> Turing-complete code
You can't build apps without turing complete code. We would be back to downloading and executing applications/programs.
- perl4ever 7y agoThe more I think about your statement, the more I don't know what you are trying to say. Do you think there is a fundamental difference between software that is precompiled all at once and software that is interpreted or compiled on the fly?
- yellowapple 7y ago> You can't build apps without turing complete code. Sure you can. None of these things should require me to run your arbitrary Turing-complete code in my browser: * Reading an article * Writing an article * Shopping online * Searching for things online * Reading social media posts/comments * Submitting social media posts/comments * Browsing a code repo * Submitting issues / PRs / etc. to a code repo * Reading documentation That (non-exhaustive) category accounts for a solid 80% of everything I do online (and the other 20% are things which I'd rather be doing through native apps). All of these things should be possible (and indeed are possible) entirely with HTML (and optionally CSS) + a server somewhere handling the backend logic. If they're not, then your "app" is over-engineered, or it is indeed better off as something I explicitly download and install, which brings me to... > We would be back to downloading and executing applications/programs. Good. That's the direction the mobile world has already been going for a decade now. Native apps actually integrate with the platform. Web pages don't (or at least don't do so well). At least in that situation I'm explicitly "downloading and executing those applications/programs" by my own choice. We even have things like WebAssembly now, with experiments and effort toward making it usable as a general-purpose compilation target/runtime outside a web browser. No reason why it'd take more than a decade for someone to figure out how to wire a WebAssembly module into some sort of Qt-based (or whatever) runtime + UI and get the best of both worlds.
- danShumway 7y ago> Good. That's the direction the mobile world has already been going for a decade now. I genuinely don't understand this argument at all -- either you understand something about native platforms that I don't, or you're working under the assumption that all of your native apps: a) aren't already vacuuming your data at the same rate as web apps. b) wouldn't get considerably worse if they replaced the web ecosystem. On the first point, native sandboxing is almost universally terrible. There's some promising stuff happening (notably with MacOS and with Flatpak/Wayland) but it's all just playing catch-up to where the web was years ago. Pick just about any company that maintains both a website and a native version of the same app -- almost universally, the web version is safer to use. Nobody should be installing Facebook, Twitter, or Reddit on their phone. In fact, I would say the single best piece of advice I can give to anyone to improve their privacy/security on their phone is to stop installing things. On the desktop, the situation is better, mainly because the desktop is very slowly turning into a niche platform and the web is a much more attractive place to put skuzzy, privacy-violating software. But this is a bit like the old argument that MacOS was more secure than Windows because no one was targeting Mac with viruses at the time. Get rid of the web and all of those skuzzy developers you hate aren't going to go away, they're just going to start making native apps. Where, again, the current sandboxing for most users and OSes is completely inadequate. If your security model on the desktop is, "I'll only run code I trust", you can already do that on the web today. You can already turn off Javascript. And if you don't feel like the modern web-app ecosystem accommodates that decision, then what makes you think a theoretical, purely native world would accommodate you running a small, tight system that only includes code you trust? I can run a beautiful, tight Linux system because I don't have to install much software on it. The unfortunate, horrible problem, is that running code we don't trust is gonna be necessary, no matter what world we move to. Sandboxing and permission systems are something we are going to have to figure out. Web or not, there is never going to be a world where you'll be able to trust all of the code you run on your computer. And currently, despite the many problems that browsers have, they're still still the best consumer-accessible solution for sandboxing code. Of course integration and app performance suffers on the web. But frankly, neither of those are more important than sandboxing.
- 7y ago