1. 36
  1. 22

    I don’t know what else to say other than a huge THANK YOU to Cameron for this project.

    Trying to maintain a modern browser with a single primary developer is difficult bordering on insane. Everyone using this project knew this day would come, and we kind of expected it many years ago. It has been a real gift to the community that transcends what anyone could ever expect a hobbyist developer to do.

    1. 12

      Hey, thanks. That’s really kind of you to say.

    2. 11

      As someone rooting for NetSurf (and any other remaining independent browser engines) to survive, I wonder if they’d be better off not supporting Javascript at all and simply focusing on good support for modern HTML and CSS, so it can at least be used to read documents. If Javascript is what finished TenFourFox, maybe attempting to support the full weight of modern Javascript and web apps is a trap. Let the big browsers try to be an entire operating system.

      Ultimately I’m coming to think that Gemini may be the best hope for a simpler internet that individuals can contribute and manage.

      Personally I love the Lagrange client on desktop, and the Ariane Android client.

      1. 5

        Ultimately I’m coming to think that Gemini may be the best hope for a simpler internet that individuals can contribute and manage.

        Gemini appeals exclusively to other Gemini users.

        1. 3

          Is Javascript really the “hard part”? I understand of course that JS is, in itself, not easy, but at least there’s a good amount of self-containment. And at least you could do something like hook up V8 to your presentation layer. And like… I really think that shunning existing JS engines seems like a big mistake overall if you’re trying to tackle something like this.

          Meanwhile you really have to start from scatch for display issues, to my knowledge nobody is compiling the presentation layer for any browser in its own thing.

          (I would not want to do any of this of course, just imagining in the scenario in which I’m building a browser, JS would be relatively further down in my list of worries)

          1. 5

            The JavaScript engines have tendrils everywhere in the browser.

            And at least you could do something like hook up V8 to your presentation layer.

            Implementing Javascript isn’t that hard, especially if you’re ok with typical interpreter speeds. Hooking it up is hard. There are a lot of interactions with the DOM, with CSS, networking, and everything else. Getting it right is a lot of work.

            1. 3

              And, with async and await, now you have browser-controlled coroutines. There are hooks everywhere and everywhere is a chance to do something insecurely or cause something else to regress.

            2. 5

              I had the same idea, but I also wonder if it’s really that easy.

              There’s a huge amount of decisions to make about whether something is allowed or not when a browser is running untrusted JavaScript. Just duct taping a Node.JS binary to a browser DOM might work, but it’ll probably be a security nightmare. Can you read that cookie? How about that other third party cookie? Can you make this XHR request or is CSP stopping you? Did the request have the correct CORS headers, can you make the result available to the JS engine based on that? Is the protocol actually https? It’s http? But we were on unsecured http ourselves.. Is it fine then?

              Just from the top of my head. There have been written enormous amounts of way too long documents about this kind of stuff, and you have to consider all of it if you want to mount a JavaScript engine on your (otherwise secure) browser.

            3. 1

              I actually first came across NetSurf while looking for a browser that didn’t bother with JavaScript. Clearly one would struggle to use it for everything, but when I’m in certain modes (mindlessly browsing cough) I thought it would be nice.

            4. 4

              I’ve followed @classichasclass for quite a long time, first from ttytter (circa 2008 or 2009?) and I think I even used TFF for a few days on a PPC Mac Mini I got many years ago to use as a kiosk for an event. I’m sad to see TFF go away but I’m interested to see what he’ll work on with the “free” time.

              1. 4

                TTYtter’s first release was 2007. Man, I’m old.

                My big thing is to get a POWER9 JIT in Firefox off the ground (which will probably, even necessarily, have some TenFourFox DNA in it). I’m likely going to just start over since so much has changed from my first abortive attempt.

                TenFourFox will still be around, just not maintained anywhere near as actively, and people will need to maintain their own builds if they want to use the code.