10 ms·
Frugal Web Browser: A Design Experiment
- deleted 6y ago[deleted]
- alsetmusic 6y agoThis seems like a fantastic concept for people in the developing world. Also for people who need to travel worldwide and may find themselves operating on "two tin cans and a string," as I once saw someone remark on a discussion thread. Hell, Text-only mode sounds like the way I already consume a lot of news articles via my browser's reader mode.
- fallat 6y agoSomeone make it with something like imgui and then we need to popularize it internally at our tech companies. Then, we win.
- dreadlordbone 6y ago>JavaScript disabled by default. To ignore one of the pillars of the modern web seems silly to me. I understand that a lot of sites have become bloated and resort to chunking in JS, but I disagree that JS is used as just seasoning on top of a website.
- kiwidrew 6y agoIt looks to me like this design concept is meant as a browser for consuming the web of documents, i.e. pages meant primarily for reading. A news article or a blog post has very few legitimate reasons for using Javascript. (Perhaps some very advanced interactive charts/graphs/maps?) You'd obviously want to use a different browser to run sophisticated webapps.
- dreadlordbone 6y agoEh it's called a frugal "web browser" - I get the purpose of a document reader.
- userbinator 6y agoWhen you are "browsing the web", i.e. looking for information and following links to various places, how much of your time is spent interacting with complex webapps vs. reading text, looking at images, and following links? I would say that if you are using a webapp, you are not really "browsing the web" anymore, but simply interacting with an application in much the same way as if it was a local one.
- achn 6y agoDisagree. We should build better standards so that JavaScript is not necessary to consume content. We should also separate apps from web pages.
- derefr 6y agoWhat about "content" that certainly is a document, but which just happens to not be a hypertext document? For example, a mind-map, or zoomable-level-of-detail timeline. Content that, on the modern web, you'd expect to be sent as a lightweight Javascript viewer app wrapped around the document itself. But where that's only required because the web-browser itself isn't already doing the job of attempting to render that document. Like it does with, say, SVG. A lot of people think that "web browser" has some fundamental identity with "hypertext document viewer", but that's not what "the Web" is — the web is the set of resources you can request over HTTP; not the subset of those resources that are formatted in HTML. A "web browser" is fundamentally "a tool for letting you navigate to the resources at HTTP URLs" — essentially an address-bar with a "meta-renderer sandbox" attached. (Remember RealPlayer, QuickTime, and other plugins you could install that would enable your web browser to "natively" render new content types? Those things are all also "the web"!) And to put an even finer point on it: if you put a PDF, or an SVG image, at a URL; and that PDF or SVG image contains clickable links — then that document is a web hyperdocument. A web of PDFs is just as much a web as a web of HTML documents is! So not even "publishing hyperdocuments on the web" is necessarily coupled to HTML. (Tangent: remember VRML? It allowed clickable links, too. VRML was a hyperdocument format!) (Are plaintext files that happen to include textual URLs, hyperdocuments? If so, then a gopher or FTP client would also technically be a "web browser." That's going a bit too far, I think.)
- millstone 6y agoGP's critique is not that web browsers render SVG and PDF in addition to HTML. It's the outsized role of JavaScript specifically: our browsers execute arbitrary (possibly user-hostile) code while simultaneously trying to protect us from its effects.
- 6y ago
- emptyparadise 6y agoI think breaking the pillars of the modern web is kind of the point here. JavaScript is necessary for web applications and it can be enabled manually for those, but it shouldn't be needed for static text.
- benatkin 6y agoJavaScript frameworks like Next and Nuxt are great at generating static markup. One thing slowing them down a bit, and giving AMP a larger share of attention, is that not enough people are browsing with JavaScript disabled. Disabling JavaScript on the browser doesn't mean JavaScript is out of the picture. =)
- userbinator 6y agoIndeed, I don't think the people arguing against JS are arguing against all uses of it --- rather, it's become synonymous with "client-side scripting/code execution", and even if that was a totally different language, the point still stands.
- emptyparadise 6y agoI think most people, me included, specifically mean client side JavaScript in conversations like this.
- benatkin 6y agoWell, with Next and Nuxt, the client side JavaScript is also running on the server. It's isometric. So you turn it off, but it keeps running.
- GoblinSlayer 6y agoMost web is text and uses javascript only for google analytics, nothing essential.
- XCSme 6y agoI tend to disagree, most of my web usage is: * Google (which uses JS for autocomplete and faster results) * Gmail (uses a lot of JS) * Media: YouTube/Twitch.tv (they use JS) * Chess (chess.com, uses JS) Yes, I sometimes read News or HackerNews and Reddit but they also use JS (comments, upvotes, inline media playing infinite scroll).
- thunderbong 6y agoIt says 'disabled by default'. Which means, you can enable it. Also, this kind of a browser is not really for the general populace. I mostly browse with Javascript disabled. If a site doesn't work without Javascript, I have a shortcut key to enable it.
- jancsika 6y agoI prefer the design of Firefox Reader Mode. That is-- do your thing, modern web. Once you finish I click a button to destroy your Rube Goldberg machine and retain only the tiny marble I wanted in the first place. I only wish it could detect when asshole newspapers do that last minute mutation of the DOM to put bullshit divs in front of the article. It makes me play a button-click race to beat the rendering of the bullshit div to reader mode. Btw-- why do asshole newspapers actually send the article content before adding the bullshit divs? If you're gonna be evil, just send the first paragraph over the wire and make it appear as if the rest of the article is just one email sign-up away.
- christophilus 6y agoSEO is the likely answer to your last question.
- jancsika 6y agoAh, that makes sense. Good catch.
- abraae 6y agoSurely that would constitute cloaking? Much frowned on by Google.
- that_guy_iain 6y agoCloaking is showing different content, no? Not making it easier for Google to read the content than normal users. Lots of newspapers show Google the content for paywalled content.
- jackinloadup 6y agoBtw if you do this often look into the Auto Reader View addon. Then the common places you visit and can use reader view will be viewed in reader view immediately. The escape hatch works to which is nice. https://addons.mozilla.org/en-US/firefox/addon/auto-reader-view https://addons.mozilla.org/en-US/firefox/addon/auto-reader-v...
- shinnc 6y agoWhy not a browser extension instead?
- deleted 6y ago[deleted]
- emptyparadise 6y agoI'd love a tiny browser with uBlock Origin, reader mode, and user scripts built in. I don't really need much else than that.
- krylon 6y agodillo (https://www.dillo.org/ https://www.dillo.org/) might come close to that. AFAIR, it does not support Javascript at all, and has very limited support for CSS, so many pages look terrible in it, BUT it can have dozens of tabs open and still run on just about 100MB of RAM, plus it is really fast.
- anonymousiam 6y ago"Websites should only be using JavaScript to enhance the overall user experience. If a web page fails to load properly with the absence of any scripts, then that site is poorly optimized and deserves to be ignored*." As much as I would like for this to be true, it is unfortunately wrong. I routinely browse with the NoScript Security Suite add-on, and more than half of the sites I visit require JavaScript. In some cases the page will not even load. In many cases the page will load, but none of the links will function. I wish that web design standards required non-JavaScript enabled browsers to function, but I just don't see it ever happening.
- ogre_codes 6y agoThe sad truth is web developers don't worry about web standards unless they affect the way they think their site should look. I should correct that. Many web developers likely do their best to build to whatever standards/ best practices they can. Management, design specs, clients, etc... rarely if ever care about those standards and don't pay/ allocate time for conforming to them. There are a fair number of web developers who are lazy too, but I suspect web developers care about best practices more than most other stakeholders.
- mikl 6y agoIt’s not that we don’t care, it’s just that there’s not enough time in the day to cater to all sorts of esoteric configurations. Sure, you can make a non-JS fallback version of your interactive elements, but that often takes twice as long, and since 99.99% of web users have JavaScript enabled, it’s simply not worth the time to build separate versions for those 0.01% of users who don’t.
- ogre_codes 6y ago> Sure, you can make a non-JS fallback version of your interactive elements, but that often takes twice as long This is largely just not true and the results are often no-entirely-legal. The majority of interactive controls can be supported by extending and styling bone stock html and using progressive enhancement. The only way it takes less time to roll your own solution for most of these components is when you don't bother implementing accessibility for your controls. That isn't just a few esoteric users at this point, you are now brushing up against the ADA and have just exposed your site to potential legal action, lawsuits, and a big honking fine. (Not to mention the fact that you being an ass to a bunch of people who need that functionality.)
- postalrat 6y agoYou can skip the development, beta, early access and go directly to a download of such a browser: https://en.wikipedia.org/wiki/Gopher_(protocol)#Client_software https://en.wikipedia.org/wiki/Gopher_(protocol)#Client_softw...
- thinkloop 6y agoThe interesting feature is being able to avoid heavy sites without having to visit them - but doesn't that: A) Leak privacy by first having to check urls against a centralzied db? B) Add slowness to every site due to having to request metadata from the centralized service first?
- smallstepforman 6y agoAs a user of an alternative operating system (so not Windows, Mac or Linux), my default browser is a "Frugal" browser.
- lolinder 6y agoWhich OS and which browser? (Just curious).
- smallstepforman 6y agoHaiku OS :) In my spare time I develop Haiku open source apps, my latest research/experiment/playground (as of 1st Jan 2021) is writing a new browser from scratch (that is not WebKit based), C++20 features, Actor model for multi-processing.
- richardanaya 6y agoI want a WebAssembly only browser.* *I know that's not possible currently
- chrismorgan 6y agoThat’s not only not possible currently, it’s fundamentally nonsensical. A browser needs ways of presenting things to the user; WebAssembly is just a small VM for executing code. You need the platform to provide some sort of UI library (e.g. HTML DOM + CSS). Beside the complexity of that lot, WebAssembly’s is just rounding error.
- shash7 6y agoAt a first glance, this looks good. However, users will be quickly annoyed when they can't interact with 95% of websites and the other 5% throws page weight errors.
- zamalek 6y agoThis looks like a great idea. What I would really love to see is a no-tab browser with extension support. I have come to realize that a sufficiently advanced window manager is indistinguishable from a tabbed browser, but you will pry uBlock and 1PasswordX from my cold dead hands.
- alpaca128 6y agoSurf + hosts file-based ad blocking gets you there except for 1password. As soon as you want this kind of extensions you probably need a browser based on Chromium or Firefox to have any shot at having an addon ecosystem at all.
- djeiasbsbo 6y agoTrue. It will render the web and certain CAPTCHA systems entirely broken. What we need instead is more control on what can be accessed with javascript. Things like screen and window size, locale etc. should all be spoofable and configurable by default. We also need a sophisticated firewall and control matrix right in the browser. I can already do a similar thing for mobile apps on android. I spoof what permissions they can use and what data they actually get. That can include sophisticated things, such as stripping EXIF data from any image before an application gets access to it. Or a simple popup that asks whether an application can access the clipboard once. I can't even fathom how most people live without such finegrained control. The only hope is a new browser that respects the user from the beginning.
- gm 6y agoStopped reading and closed the tab at "JavaScript disabled by default. Websites should only be using JavaScript to enhance the overall user experience". Good luck putting your thumb up in a try to eliminate the sun. Absolutely never gonna happen. Either this project is someone's wishful thinking of what a perfect world looks like to them (in which case I'm not interested), or this is actually a serious attempt to enforce arbitrary rules on web sites, and the authors are trying to do it at the expense of the users, in which case I don't care either.
- ngold 6y agoWell I'm in. This looks great. And if I can't see your website because of java, that's fine. I have plenty of other options. This is a great tool in the box.
- slmjkdbtl 6y agoFor experiments in the internet realm, people have the ability to start from scratch and don't deal with the shit pile like the web today. Don't like JavaScript? Design protocols and content formats that don't rely on that kind of stuff, like gopher gemini or whatever. (also should we even call this an experiment all these points appear on hackernews front page everyday..)
- ampdepolymerase 6y agoI want the exact opposite. All the current efforts in amateur browser building are all focused on documents. Gemini, and HN's other perennial favorite, Gopher, all look several decades out of date. I want a clean slate platform that is focused on high performance, superb design, and great developer productivity with an emphasis on 2021 hardware. A clean slate redesign of HTML with WebAssembly GUI widgets as a first class citizen (instead of the current "draw-to-canvas" hack). Gemini and Gopher will never gain traction if they perpetually look anachronistic. Forget about stuff like the semantic web. Those are dead ideas that will never take off unless they are properly backed by a strong business model. When I look at Gemini and the various new browser experiments, I get the feeling that HN web engineers lost their way. I know this forum worships Alan Kay and Brett Victor, but if all the new web browser projects here focus on the "good ole days" where everything is a semantically linked document, then there is no more room for growth. Where's the emphasis on UI and UX? Users clearly want apps that run fast and look pretty. For some reason engineers here reject that proposition and prefers ugly looking documents in the name of simplicity. Compiler and language technologies have advanced leaps and bounds since the Netscape days. We have .NET, LLVM, GraalVM, Julia, and two dozen different high speed production ready WebAssembly interpreters. 16+ cores hardware is starting to become the norm. Yet everybody is obsessed with the concept of a boring Tim Berners-Lee era document. Dream bigger. Figure out how to get native level performance on mobile devices if you are building a "web" browser. Make creating responsive GUIs as easy as traditional absolute positioned Windows Forms. Design a browser such that making a Stripe-level gorgeous landing pages becomes trival. Integrate Figma as a first class GUI design tool. Make collaboration and CRDTs first class (like the Braid RFC, https://braid.news https://braid.news). Use neural models to speed up content delivery and assets loading. The wave of unimpressive "new" browsers that cropped on HN in the last year reminds me of the Node.js web frameworks hype during the first half of last decade where there was a micro web framework on Show HN every week claiming to be the One Framework to Rule Them All despite mostly being a thin shim on top of express.js/the default node.js APIs and offering no real value. Dream bigger.
- oscargrouch 6y ago> WebAssembly GUI widgets as a first class citizen (instead of the current "draw-to-canvas" hack). Just a info. The 2d canvas of Chrome at least render to a texture layer only by appending commands to a display list that is only executed on the final stage (merged with all other commands) on the final stage in the gpu process. So it is as fast as it can get.. for instance its basically the same for the Chrome painted by C++ and you actually have to use canvas primitives to paint widgets. Once (if) WASM have access to something like this, it will be a canvas, the same one you have bindings for javascript. So i would not call it a hack, as you basically have raw access to paint primitives that are very optimized.
- mikl 6y agoNice ideas, but the “No JavaScript by default” is probably a mistake. Like it or not, most sites use JavaScript these days, and blocking it will often give you pages that are subtly and strangely broken, and if the end user is not a web expert, they might not realise they need to turn on JavaScript to fix it. I’m not unsympathetic, I ran Firefox with the NoScript extension for years, but I eventually had to give it up, because I’d have to spend time figuring out what to unblock on most new sites I’d visit, just to make the them render properly.
- alpaca128 6y agoI'm just going to say that if I see this big red box telling me the browser blocked ads it's the last time I use that browser. I want ad blocking so I don't have to look at bright-colored stuff distracting me from the content.
- systemvoltage 6y agoI have another idea. What if browsers limited the amount of JS that can be loaded? Say, no more than 2KB of JS. Enough to do basic things like form submissions and AJAX, may be some basic canvas graphics.
- roadbeats 6y agoThe FatHomeCat browser (https://github.com/fathomecat/fathomecat https://github.com/fathomecat/fathomecat) had “90s mode” choice for sites like Google.com, not for the sake of disabling JS, but actually getting simpler & better version of Google.
- deleted 6y ago[deleted]
- keyle 6y agoYou lost me at JavaScript disabled by default. Whilst a noble reach, this doesn't fly in the real world. I had a stint using W3M for browsing for a bit and well, not much flew. Frugal yes, but it has to work.
- thunderbong 6y agoI think you misunderstand. It is disabled by default, you can enable it. I mostly browse with Javascript disabled and have a shortcut key for enabling it when a site refuses to render.
- sxt 6y agoAre you familiar with Opera Mini's(mobile) extreme data saving mode? It's quite remarkable at reducing web page sizes and has an option to render images at a preferred quality, or turn it off altogether. Also, some of the design of the original web page is preserved and it's somewhat usable. But the issue with it is all the compression happens on their servers before reaching you, which is troublesome from a privacy standpoint. I wish there was a browser(or a selfhosted instance) similar to Opera Mini which can compress pages before it reaches the client