lainchan / Ω
What's wrong with web browsers?
BloodCat · 2022-08-06 17:55
How come web browsers are such hogs? I wouldn't think interpreting a handful of scripting languages to be such a herculean task, and yet, browsers are considered more complex than even an OS!
Are there any web browsers that are actually lightweight, that will correctly draw html+css and run js?
Also, how did webdev come to this sorry state? The browser itself sounds like a decent idea, if a "webapp" came with a sane set of source files which you could conceivably read before running, it'd all be good and nice. What happened?
Thank you.
Ender · 2022-08-06 18:09
>>62367
>Are there any web browsers that are actually lightweight, that will correctly draw html+css and run js?
Yes. Any older browser and maybe lynx/elinks too. There's another one but I forget the name of it. Alternatively use a gemini browser. However if you want real work done you pretty much have to use Chromium and its forks.
>Also, how did webdev come to this sorry state?
Because people are fuarrrking tards and can't be bothered to learn how the computer works at the lowest level nor how to correctly implement algorithms. Little Timmy wants to make a vidya gaem now goddamnit!.
Liet Kynes · 2022-08-06 18:47
>>62367
I don't really know but one evil thing that has lead to this situation, is the fact that web browsers use magic heuristics to guess how to display a malformatted page. Also, JabbaShit and its consequences.
Netrunner · 2022-08-06 21:27
Would be nice if a "browser frontend" of sort could be made which captured pages as PDF in its own interface and printed input text fields either overlayed on the PDF or in its own dedicated area. That way the literal browsing is something that only occurs for as long as it takes to make the snapshot, as well as a few other neat things like tab focus being a load/close PDF at will, fetching web pages on schedule, and having a robust history backed up in an archivable format. And all easily filtering out tracking and surveillance elements, especially the behavioral ones such as mouse tracking.
Though I am not a programmer so I have no idea how monumental of a task making such a 'browser frontend' would be. However I agree that web browsing has become incredibly bloated, and is showing no signs of slimming down in the foreseeable future.
Jean Dupont · 2022-08-06 21:54
>>62368
Lynx and links don't do JavaScript. Links can do HTML okay when using graphics. Netsurf has support but it can't manipulate the DOM so it's more pointless than JavaScript itself to have it enabled, but it also comes with the best support for HTML and CSS of the three.
Pris · 2022-08-07 04:42
>and yet, browsers are considered more complex than even an OS!
This really leaves a sour taste in my mouth.
Even without web browsers there are PLENTY of vulnerabilities to be found in client software, the OS, processes running on a machine, services running within a network, people downloading malware client software (like "antivirus" or toolbars), etc. But at least the problem was in the limited scope of execution flow through which all of that attack surface parses arbitrary data.
But when it comes to web browsers, the entire web is based upon intentionally running an interpreter that executes arbitrary JavaScript (historically Java and Flash, more recently web assembly) instructions and parses arbitrary files like PDFs from large quantities of untrusted sources. It feels like a rather bizarre way to go about operating computers, it's a bit nauseating to think about. At least the isolation of various parts of these browsers has raised the bar a bit such that individuals don't find it so easy to pwn them all by themselves in a short time.
Crash Override · 2022-08-07 05:40
There's no decent cross-platform, non-GPL/proprietary GUI framework that spans across Windows, Mac, Linux, iOS and Android. MacOS starting with 10.15 has become a walled garden requiring all developers pay at least $100 for "notarization" for people to run their apps, Linux is a clusterfuck to develop for as always, and iOS and Android are walled gardens. So what's the solution that all software/IT companies coalesced around this past decade? Transforming the web into an OS powered by JavaScript frameworks made by Google (Angular) in 2010 and Facebook (React) in 2013, with data in these web "apps" being passed and received through the internet via AJAX.
Neo · 2022-08-07 07:47
>>62382
>Linux is a clusterfuck to develop for as always,
Under what circumstance is Linux difficult to program for? When I was doing desktop app development I tested with Windows and Linux, completely ignoring macOS because I would've needed a strong enough computer to run it in a VM with any level of decent compilation speed or I would've had to go buy a Mac computer. That's not even accounting for the annoyance of having to switch computers just to test changes.
>Transforming the web into an OS powered by JavaScript frameworks
JS may not be everyone's favorite, but fuarrrk your desktop app, solid client side web apps let me download local copies that don't risk bricking my system, I can quickly use another machine to do what I need to do without worrying about system compatibility or long installs and setup, and I can do it on any device or OS. And if you consider the web as an OS, it is the largest and most used OS in the world, while also being open source. The future is through the web, an ever-evolving system without the problems of compatibility bloat that plague most modern systems. Do your part to not make the web a tracking-fueled hellhole, because the age of the traditional desktop will soon be over for most of the world.
Yamaoto Toshi · 2022-08-07 09:00
>>62383
>Do your part to not make the web a tracking-fueled hellhole, because the age of the traditional desktop will soon be over for most of the world.
The semi-mythical age when the web wasn't a tracking-fueled hellhole was an anomaly. It hasn't existed for at least ten years now, and it will never exist again. The best you can do is run a heavily modified firefox and simply do not give up your data for free.
It's still not as bad as smartphones, which somehow combine the awfuless of the web and the inconvenience of downloading native programs.
Zero Cool · 2022-08-07 10:10
>>62382
With that mindset its strange regular java didnt stay popular as a cross platform interface.
Yamaoto Toshi · 2022-08-07 23:51
First of: I'm a web (frontend - JS) developer for quite a while now, (at the beginning against my will - they searched for a python dev - but then Stockholm syndrome kicked in and I started to enjoy it).
So I'm biased as soykaf.
I think the web is the best thing that happened to the internet, not mainly from a technical point of view but because how open it (still) is.
People complain that websites should be only static and stuff that really needs interaction should be a real application.
If the web would have gone that way, it would be a niche product or already dead (remember gopher?).
Although, on mobile we have that situation: A soykaf ton of popular pages trying to make you use their app, instead of their web-page.
And why? Not because native applications have inherently a better UX, but because they can mine even more details about you from within their apps.
And that's with iOS and Android, which actually have a sandboxed environment, they still let corps collect more data about you than browsers allow it.
Now imagine that on Windows or Desktop Linux, where non-sandboxed applications are still the norm and definitely were back when Browser vendors decided that they needed more interactivity with JS.
>>62367
>I wouldn't think interpreting a handful of scripting languages to be such a herculean task, and yet, browsers are considered more complex than even an OS!
It's only one scripting language (JS), WASM is bytecode and the other stuff is markup and styling.
>if a "webapp" came with a sane set of source files which you could conceivably read before running, it'd all be good and nice. What happened?
not sure how you imagine that? Every non trivial program isn't really readable within a reasonable period of time, if you want to really read every single program before execution.
I mean how many open source applications do use and have actually read the whole source code and understood it? Personally for me, that's 0% - besides applications that I wrote myself - and I think that is true for pretty much everyone.
Besides that, there is a feature called source map (https://firefox-source-docs.mozilla.org/devtools-user/debugger/how_to/use_a_source_map/index.html) which makes it possible to read and debug minified JS by mapping it to its original code.
>[...] one evil thing that has lead to this situation, is the fact that web browsers use magic heuristics to guess how to display a malformatted page
The W3C tried to fix this with XHTML, it's purpose was to crash your page the instant it sees malformed markup. But even back than (around 2005) web-pages where quite dynamic and you couldn't be sure that your dynamically generated markup would 100% correct everytime. Now imagine you run a website to earn money, do you want to crash the entire page, just because somewhere in your dynamically created markup, there is a paragraph that isn't closed correctly? Or do you prefer that the browser still renders it, just maybe with a slightly weird looking paragraph somewhere?
That's why nobody used it.
Yes people learned and wrote their web-pages in XHTML, but at the end of the day it wasn't parsed as XML but as HTML.
Even the W3C himself doesn't use that strict version of XHTML: Yes they have their DOCTYPE set to `XHTML 1.0 Strict`, BUT they serve is as "content-type: text/html" not as "content-type: application/xhtml+xml", which would trigger the draconian error handling.
For further information:
Everything you know about XHTML is wrong (https://diveintohtml5.info/past.html#xhtml)
Also the "magic heuristics" are AFAIK now well defined via the WHATWG.
>The semi-mythical age when the web wasn't a tracking-fueled hellhole was an anomaly. It hasn't existed for at least ten years now, and it will never exist again. The best you can do is run a heavily modified firefox and simply do not give up your data for free.
It's still not as bad as smartphones, which somehow combine the awfuless of the web and the inconvenience of downloading native programs.
I couldn't agree more.
oh and as a side note: Browser Cookies - the reason for so many tracking issues inside browsers - were first implemented in the Lynx browser. Do what you want with that information.
John Rain · 2022-08-09 04:27
>>62387
JRE's not preinstalled in any OS and iOS doesn't support it, and Oracle kind of killed it for consumer use.