• mlg@lemmy.world
    link
    fedilink
    English
    arrow-up
    11
    ·
    14 hours ago

    Hey it could be worse. It could be the completely and utterly worthless MIT license.

  • AnimalsDream@slrpnk.net
    link
    fedilink
    English
    arrow-up
    43
    ·
    1 day ago

    I don’t understand why everyone wants to jump ship to a whole new browser, when the governance of a browser is the real issue to solve regardless of which browser is supported. A good stewardship model has to be established by people of integrity, technical skill, and funding. From there forking making a hard fork of Firefox is way cheaper and easier than trying to invest in one that’s not even finished.

      • AnimalsDream@slrpnk.net
        link
        fedilink
        English
        arrow-up
        19
        ·
        20 hours ago

        Okay, you do you. But it still doesn’t make sense to try to rally everyone else behind a whole new unfinished browser, when an otherwise very good one just needs new leadership.

        • grepe@lemmy.world
          link
          fedilink
          arrow-up
          8
          ·
          14 hours ago

          i do not control mozilla leadership or their mishandling my data. the most influence i can exert as an individual is by not being a willing participant to their mischief. i’ll be happy to come back if the leadership changes and i get some guarantees.

          • AnimalsDream@slrpnk.net
            link
            fedilink
            English
            arrow-up
            2
            ·
            43 minutes ago

            Absolutely untrue. Firefox is entirely open-source. Forks of it already exist. The only thing that’s needed is for people who are willing and capable, to create a more dedicated stewardship model and the rest of us to get behind the hard fork they release. This is exactly the kind of thing software freedom is meant to allow us to do.

  • Kusimulkku@lemm.ee
    link
    fedilink
    arrow-up
    41
    ·
    1 day ago

    Not only C++ but also Swift, which just feels strange

    Why build a new browser in C++ when safer and more modern languages are available?

    Ladybird started as a component of the SerenityOS hobby project, which only allows C++. The choice of language was not so much a technical decision, but more one of personal convenience. Andreas was most comfortable with C++ when creating SerenityOS, and now we have almost half a million lines of modern C++ to maintain.

    However, now that Ladybird has forked and become its own independent project, all constraints previously imposed by SerenityOS are no longer in effect.

    We have evaluated a number of alternatives, and will begin incremental adoption of Swift as a successor language, once Swift version 6 is released.

  • Possibly linux@lemmy.zip
    link
    fedilink
    English
    arrow-up
    27
    ·
    edit-2
    1 day ago

    That’s not controlled by Google…

    It is also important to note that the license is still foss and GPL compatible. In the future they could made it GPL.

  • rickdg@lemmy.world
    link
    fedilink
    arrow-up
    51
    ·
    1 day ago

    Let’s see how ladybird writes docs in the future. Will they assume the user is a man and shut down any corrections for being political?

  • vaguerant@fedia.io
    link
    fedilink
    arrow-up
    126
    ·
    2 days ago

    As long as we’re filling out our fantasy browser brackets, I’m hoping that the Servo engine and browser/s can become viable. Servo was started at Mozilla as a web rendering engine only, before they laid off the whole team and the Linux Foundation took over the project. Basically revived from the dead in 2023, the current project is working on an engine and a demonstration browser that uses it. It’s years away from being a usable replacement for current browsers and the engine is certainly the main project. A separate browser which employs Servo as its engine is a more likely future than an actual Servo browser.

    Still, you can download a demo build of the official browser from the web site. Currently, it’s only usable for very simple web sites. Even Lemmy/Mbin display is a little broken, and I think of those as fairly basic. YouTube is out of the question. One of the sites that’s been used to demonstrate its capability to render web pages is the web site for Space Jam (1996) if that gives you any idea of its current state.

    The original 1996 Space Jam web site, running in the Servo demo browser.

    • stetech@lemmy.world
      link
      fedilink
      arrow-up
      9
      ·
      edit-2
      1 day ago

      Honest question, since I have no clue about web/browser engines other than being able to maybe name 4-5 of them (Ladybird, Servo, Webkit, Gecko, … shit, what was Chromium’s called again?):

      What makes browsers/browser engines so difficult that they need millions upon millions of LOC?

      Naively thinking, it’s “just” XML + CSS + JS, right? (Edit: and then the networking stack/hyperlinks)

      So what am I missing? (Since I’m obviously either forgetting something and/or underestimating how difficult engines for the aforementioned three are to build…)

      • cmhe@lemmy.world
        link
        fedilink
        arrow-up
        3
        ·
        3 hours ago

        What makes implementation so difficult is that browsers cannot just “work”, they need to be correct is what they do. And support all websites.

        The standards of HTML, CSS and JS have developed over a long time, not only is the amount of stuff massive, over time sometimes strange features where implemented, that were then used by website developers, and now these all need to be handled correctly by all new browsers.

        Emulating and reimplementing existing stuff is often more difficult, especially if you cannot leave out any feature, no matter how obscure, because that might break someone’s website.

      • qqq@lemmy.world
        link
        fedilink
        arrow-up
        28
        ·
        edit-2
        1 day ago

        JavaScript alone is not a simple beast. It needs to be optimized to deal with modern JavaScript web apps so it needs JIT, it also needs sandboxing, and all of the standard web APIs it has to implement. All of this also needs to be robust. Browsers ingest the majority of what people see on the Internet and they have to handle every single edge case gracefully. Robust software is actually incredibly difficult and good error handling often adds a lot more code complexity. Security in a browser is also not easy, you’re parsing a bunch of different untrusted HTML, CSS, and JavaScript. You’re also executing untrusted code.

        Then there is the monster that is CSS and layout. I can’t imagine being the people that have to write code dealing with that it’d drive me crazy.

        Then there are all of the image formats, HTML5 canvases, videos, PDFs, etc. These all have to be parsed safely and displayed correctly as well.

        There is also the entire HTTP spec that I didn’t even think to bring up. Yikes is that a monster too, you have to support all versions. Then there is all of that networking state and TLS + PKI.

        There is likely so much that I’m still leaving out, like how all of this will also be cross platform and sometimes even cross architecture.

        • vaguerant@fedia.io
          link
          fedilink
          arrow-up
          14
          ·
          1 day ago

          Adding on to this, while this article is fast approaching 20 years old, it gets into the quagmire that is web standards and how ~10 (now ~30) years of untrained amateurs (and/or professionals) doing their own interpretations of what the web standards mean–plus another decade or so before that in which there were no standards–has led to a situation of browsers needing to gracefully handle millions of contradictory instructions coming from different authors’ web sites.

          Here’s a bonus: the W3C standards page. Try scrolling down it.

        • stetech@lemmy.world
          link
          fedilink
          arrow-up
          2
          ·
          19 hours ago

          Thanks for these explanations, that makes a lot more sense now. I didn’t even think to consider browsers might be using something else than an off-the-shelf implementation for image/other file formats…, lol

          • qqq@lemmy.world
            link
            fedilink
            arrow-up
            4
            ·
            18 hours ago

            Sorry I didn’t mean to imply they don’t use shared libs, they definitely do, but they have to integrate them into the larger system still and put consistent interfaces over them.

            • stetech@lemmy.world
              link
              fedilink
              arrow-up
              2
              ·
              edit-2
              18 hours ago

              Yeah I realize that. My go-to comparison would be PDF. Where Firefox has PDF.js (I think?), Chromium just… implements basically seemingly the entire (exhaustive!) standard.

    • Kidplayer_666@lemm.ee
      link
      fedilink
      arrow-up
      34
      ·
      1 day ago

      Well… according to ladybird, at this point they are more conformant than servo in web standards…

    • vfsh@lemmy.blahaj.zone
      link
      fedilink
      arrow-up
      20
      ·
      1 day ago

      Is he the one constantly spewing hateful shit in the Issues on GitHub whenever people ask him to not use only “he” and “him” in the docs?

      • floquant@lemmy.dbzer0.com
        link
        fedilink
        arrow-up
        7
        ·
        edit-2
        1 day ago

        That dev definitely doesn’t seem like the best human around, but this is all around terrible to me. Calling the project “dehumanizing” and “vile” because of this is ridiculous. Are people really willing to have their browsing tracked and sold rather than using a browser that has an assumed gender in the documentation? Not saying that they shouldn’t use gender neutral language, but as the original issue said, it’s a minor nitpick, let’s be honest. It’s also something that’s representative of one dev as a person, not of the project as a browser. Additionally, it could be something as simple as the dev coming from a gendered language, where the word “user” itself is masculine, and doesn’t see it the same way as English speakers asking for neutral language.

      • TheFadingOne@feddit.org
        link
        fedilink
        arrow-up
        23
        ·
        edit-2
        1 day ago

        I’ve only tangentially picked up things about this but this is an example for it

        (For some context, if you didn’t already know this, Ladybird originated from a SerenityOS component and the first reply is from the lead dev)

          • Turret3857@infosec.pub
            link
            fedilink
            English
            arrow-up
            5
            ·
            1 day ago

            was that nukeop? that Guy is a known asshole. He was also quoted Saying licenses don’t matter and threw a huge fucking hissy fit when someone forked his project and gave it a copyleft license because of making such a stupid statement. Unfortunately the website archiving the drama is down, and I could only find an archive if the first iteration of it (it had at least 2 more paragraphs after this) https://archive.is/UT9Xe

        • toothpaste_ostrich@feddit.nl
          link
          fedilink
          arrow-up
          9
          ·
          edit-2
          1 day ago

          Oh… That’s… Disappointing. Firefox it is, then, for now.

          It’s weird… It makes “business” sense, too. If you want people to use your stuff and you can choose to appeal to more people, why wouldn’t you? I think we’ve reached the stage of normalcy now where using “they” and “them” are not in itself something that would necessarily scare away right-wing users (given you want to keep appealing to that attractive market, too.)

  • stochastictrebuchet@sh.itjust.works
    link
    fedilink
    arrow-up
    47
    ·
    edit-2
    1 day ago

    I’m OOTL. Are these actual issues people have with the project?

    C++ might not be as memory-safe as Rust, but let’s not pretend a Rust code base wouldn’t be riddled with raw pointers.

    BSD tells me the team probably wants Ladybird to become not just a standalone browser but also a new competing base for others to build a browser on top of – a Chromium competitor. Even though BSD wouldn’t force downstream projects to contribute back upstream, they probably would, since that’s far less resource-intensive than maintaining a fork. (Source: me, who works on proprietary software, can’t use GPL stuff, but contributes back to my open-source dependencies.)

    • thann@lemmy.dbzer0.com
      link
      fedilink
      English
      arrow-up
      9
      ·
      1 day ago

      If you cant tell from just looking at the relative successes of BSD and linux that copyleft licenses are better than I dont know how to convince you of anything

      • pmk@lemmy.sdf.org
        link
        fedilink
        arrow-up
        8
        ·
        1 day ago

        By that logic proprietary licenses are best for desktop OSs because Windows has the biggest market share?

            • thann@lemmy.dbzer0.com
              link
              fedilink
              English
              arrow-up
              4
              ·
              edit-2
              1 day ago

              Actually macos was based off of BSD, but there were no basically contributions back to the community, so its whithered away. meanwhile linux is running in every sattelite and scientific insrument, it runs every router and nearly every server that are the internet. Microsoft google and apple all begrudginly make linux better while they make the operating systems they sell worse

    • Zacryon@feddit.org
      link
      fedilink
      arrow-up
      4
      ·
      1 day ago

      I don’t like that “C++ isn’t memory safe”. It is. Users of that language are usually just not experienced or educated enough and therefore more mistakes happen.

      I agree though, that other languages like Rust or Java can make it easier to prevent such mistakes.

      In my experience, using smart pointers alone already solves 90% of memory issues I have to deal with. C++ improved a lot in that regard over the decades.

      • lolcatnip@reddthat.com
        link
        fedilink
        English
        arrow-up
        7
        ·
        edit-2
        1 day ago

        I’m very experienced with C++and I still feel like I’m juggling chainsaws every time I use it. And I’ve personally run into into things like use after free errors while working in Chromium. It’s a massive codebase full of multithreading, callbacks, and nonlocal effects. Managing memory may be easy in a simple codebase but it’s a nightmare in Chromium. Tools like AddressSanitizer are a routine part of Chrome development for exactly that reason. And people who think memory management is easy in C++ are precisely the people I expect to introduce a lot of bugs.

        • Zacryon@feddit.org
          link
          fedilink
          arrow-up
          1
          ·
          22 hours ago

          I’ve a very long track record using C++ as well and I can’t share the feeling. I don’t say it’s alyways easy. I’m just saying that it’s doable and therefore whether the software is memory safe depends on the expertise of the devs. Modern C++ practises, programming patterns and as well tools from the STL (or even your own implementation) make life a lot easier. If you don’t use them, that’s not the languages fault. In the end, how you use the language still matters a lot. If you’d like to think less about memory management, go on and use Rust or C# or Java or even Python if performance doesn’t matter. That’s perfectly fine. This can come with other issues, like more boilerplate in the case of Rust for example, but in the end those languages are tools. Choose the tool which gets your job done.

          • WhyJiffie@sh.itjust.works
            link
            fedilink
            English
            arrow-up
            1
            ·
            10 hours ago

            I don’t think this solely depends on the level of experience. People make mistakes, and these kinds of mistakes are very hard to find. And don’t tell me you are the perfect coder that makes no mistakes, introduces no bugs.

          • lolcatnip@reddthat.com
            link
            fedilink
            English
            arrow-up
            3
            ·
            edit-2
            18 hours ago

            whether the software is memory safe depends on the expertise of the devs

            No. Just stop. If a language depends on the expertise of the developer to be free of memory bugs, then by definition, it is not memory safe because memory safety means such bugs are impossible by design. Quit trying to redefine what memory safety means. A program being free of memory bugs does not in any way imply memory safety.

      • Possibly linux@lemmy.zip
        link
        fedilink
        English
        arrow-up
        2
        ·
        1 day ago

        The good news is that the browser comes from Serenity OS which means it probably is lightweight and well written.

  • NateNate60@lemmy.world
    link
    fedilink
    arrow-up
    69
    ·
    2 days ago

    I’m never going to be one to dog on something before I try it. If it’s good and can offer the same or better experience as Firefox then sign me up. The biggest sticking point for me, though, is potentially losing Firefox’s massive add-in library. I really like my uBlock Origin and Restore YouTube Dislike and my VPN extension and Metamask and all the other crap I’ve got there.

    • TXL@sopuli.xyz
      link
      fedilink
      arrow-up
      11
      ·
      1 day ago

      Yes. Good filters and privacy/security are an absolutely vital requirement today. Unbreaking things and adding features via extensions or something are also good.

    • Jumuta@sh.itjust.works
      link
      fedilink
      arrow-up
      2
      ·
      edit-2
      1 day ago

      you can try it now if you want and it does work surprisingly well, but their timeline is still “alpha in 2026”

  • ZeroOne@lemmy.world
    link
    fedilink
    arrow-up
    7
    ·
    1 day ago

    Is it that difficult to implement a CopyLeft licence ? Well we do have Servo (A modular browser engine) in development & SeaMonkey is a thing too (Which is an entire internet-application suite)

  • exocortex@discuss.tchncs.de
    link
    fedilink
    arrow-up
    19
    ·
    1 day ago

    What is the problem with a BSD-license? I’m not familiar with the different open source licensing models and their problems.

    • Allero@lemmy.today
      link
      fedilink
      arrow-up
      47
      ·
      1 day ago

      Basically, it allows you to steal all the code and use it in your closed-source programs, giving a green light for corporations to use open-source code without giving anything back.

      GPL doesn’t allow that, forcing you to open-source anything that was produced using other GPL-licensed code. That’s, for example, why so much of Linux software is open-source - it commonly relies on various dependencies that are GPL-licensed, so there is no other legal option other than sharing the code as well.

    • HouseWolf@lemm.ee
      link
      fedilink
      English
      arrow-up
      10
      ·
      1 day ago

      It’s not really an issue for the end user. But it’s basically made for companies to take advantage of free hobbyist developers without needing to give anything back in return.

      So if you’re the kind of person who runs to foss software to get away from corporate tech bull, having a license that benefits companies more than users just kinda feels scummy.

    • ColdWater@lemmy.ca
      link
      fedilink
      arrow-up
      27
      ·
      1 day ago

      Apple, Sony, N*****do, Netflix all use BSD but they don’t contribute any code to the BSD project itself, because of the BSD allow other people/company to close source their code when using with BSD

    • phlegmy@sh.itjust.works
      link
      fedilink
      arrow-up
      14
      ·
      1 day ago

      It’s not a viral copyleft license, so you’re free to use the source code without giving anything back.

      This has pros and cons over something like GPL, but people like to circlejerk GPL and pretend it’s always the best option 100% of the time.
      For situations where you have to sign an NDA and are unable to release source code (eg; console game dev), MIT and BSD licensed projects are a godsend.

    • ZeroOne@lemmy.world
      link
      fedilink
      arrow-up
      5
      ·
      1 day ago

      Remember the Minix operating system that runs on your processors ? It’s a proprietary spyware now because of BSD licencing

  • RadicalEagle@lemmy.world
    link
    fedilink
    arrow-up
    20
    ·
    2 days ago

    I’m downloading this and contributing to prove the haters wrong. Y’all are gonna regret not being able to say “I toad a so” like me.