[HN Gopher] Understanding Complexity Like an Engineer - The Case...
       ___________________________________________________________________
        
       Understanding Complexity Like an Engineer - The Case of the
       Ladybird Browser
        
       Author : akling
       Score  : 145 points
       Date   : 2024-02-12 08:58 UTC (14 hours ago)
        
 (HTM) web link (t-shaped.nl)
 (TXT) w3m dump (t-shaped.nl)
        
       | yogorenapan wrote:
       | Looking at the screenshots, it's crazy good. I only frequent 5-6
       | sites on a daily basis; will actually daily drive LadyBird if at
       | least 3 work
        
       | ofrzeta wrote:
       | Related (chat with Andreas Kling about SerenityOS and Ladybird):
       | 
       | https://news.ycombinator.com/item?id=36620450
       | 
       | However I don't understand why many people are longing for
       | Ladybird as another free browser. There are already some and
       | Firefox is losing marketshare every day. So please do use it.
       | 
       | Ok, I guess Mozilla Foundation's running the Firefox project is
       | not to everyones liking, so that would be a valid reason. But not
       | to throw out the baby with the bathwater.
       | 
       | Firefox is a great browser and the only reason I sometimes use
       | Chrome is that more and more sites require Chrome (e.g. Teams).
        
         | apex_sloth wrote:
         | Side note: Teams works for me in firefox on linux if I change
         | the UserAgent with this add-on:
         | 
         | https://mybrowseraddon.com/custom-useragent-string.html
         | 
         | For these urls
         | 
         | https://teams.microsoft.com/
         | https://statics.teams.cdn.office.net/
         | 
         | To Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36
         | (KHTML, like Gecko) Chrome/85.0.4183.102 Safari/537.36
         | Edg/85.0.564.51
        
           | jwells89 wrote:
           | Changing the user agent seems to make things work more often
           | than not in the case of sites/apps like this. My inclination
           | is that most of them don't actually have hard browser
           | requirements and just haven't been tested against anything
           | but Chrome and the devs (or those managing them) would prefer
           | to not change that.
        
           | jcul wrote:
           | It seems to work for me on FF / linux out of the box, without
           | any user agent change.
        
         | timw4mail wrote:
         | I use Firefox, but I still want more browser engine diversity.
         | Blink and Webkit have a significant shared ancestry, and the
         | only other major one is Gecko.
        
         | jwells89 wrote:
         | Some of the discontent comes from Firefox not being very
         | interesting compared to other browsers.
         | 
         | The various Chrome-clones are doing interesting things like
         | adding toggleable vertical tabs built in (Vivaldi, Edge) or
         | even vertical-only (Arc) and Arc is playing with using native
         | OS widgets for UI across platforms for example.
         | 
         | There's also functionality advantages. All the chrome-clones
         | have better out of the box profile support, as does Safari as
         | of the last major release or so. Safari also IMO has a better
         | stock tab groups implementation than any of the other major
         | browsers.
         | 
         | Firefox can be fixed up to support these things, but you'll
         | need multiple extensions and if you want to make it all look
         | good (e.g. hiding the ugly sidebar header, extending sidebar
         | into toolbar area, configuring Sidebery/TST/etc), a substantial
         | amount of tinkering is needed. More of this should be rolled
         | into the base browser and "just work".
        
         | TheRealPomax wrote:
         | Firefox isn't made, run, or owned by the Mozilla Foundation,
         | though. You're thinking of the Mozilla _corporation_ , which is
         | a for-profit company working on the Firefox product.
         | 
         | The Mozilla _Foundation_ is a separate advocacy and campaigning
         | non-profit (which is also why donating to the foundation means
         | your money goes towards advocacy and campaigns, not Firefox)
        
           | DiggyJohnson wrote:
           | It's disingenuous to not explain the connection between these
           | organizations. You're making it sound like they both happen
           | to be named "Mozilla", when the reality is much more nuanced
           | and interdependent, but in terms of their current funding and
           | leadership, as well as their history.
        
             | TheRealPomax wrote:
             | No, it's not. Having worked at the foundation for a decade:
             | to the vast majority of folks, the difference that matters
             | is that "one makes Firefox, the other does
             | campaigning/advocacy/outreach".
             | 
             | The history behind _why_ there are two different entities
             | is fascinating, but also doesn 't change the fact that they
             | are two completely different companies with completely
             | different org charts and completely different focuses,
             | united under the Mozilla manifesto.
             | 
             | (And even in the tech crowd, far too many people have no
             | idea that there are two different things called Mozilla,
             | and that their donations to the Foundation go to "the
             | things the Foundation does", not Firefox)
        
               | DiggyJohnson wrote:
               | Honestly I didn't realize that you worked personally with
               | the Mozilla Foundation, so I'll defer to you (and color
               | myself surprised).
               | 
               | My apologies, and thanks for the information.
        
               | fifteen1506 wrote:
               | Which one fired most Rust developers?
               | 
               | The foundation or the corporation?
        
               | TheRealPomax wrote:
               | Corp. The Foundation doesn't make products.
        
               | wheybags wrote:
               | I'm aware and I hate it. I have zero interest in most of
               | the crap the foundation gets up to, but I keep sending
               | them money because it's the only way to "support
               | Firefox". I want to support Firefox but I resent every
               | cent I send them because I know they're wasting it on
               | irrelevant crap.
               | 
               | I would really love to see a mass resignation of Firefox
               | engineers, who then set up a new nonprofit + ff fork, and
               | I could just switch my attention and my donations over
               | there.
        
               | TheRealPomax wrote:
               | You can't fight for an open web just by making a browser.
               | As dire as the Firefox market share is today, it'd be so
               | much worse if the Foundation didn't spend its time and
               | effort making sure the folks who don't give a shit, but
               | should (e.g. politicians, law makers, lobbyists, news
               | outlets, etc. etc.) learn why they should give a shit
               | about the open web.
               | 
               | It sucks that you can't donate to Firefox directly, but
               | calling what the foundation does "irrelevant" feels like
               | you're not looking at the very real big picture of
               | everyone wanting to lock down the web, all the time,
               | everywhere.
        
               | WesolyKubeczek wrote:
               | Yes, but sometimes, just sometimes, I. Want. To. Support.
               | The. Freaking. Browser.
               | 
               | I realize that there's some creative bookkeeping and
               | bureaucratic barriers set up so that the only entity that
               | can meaningfully support Firefox financially is Google in
               | the end, but I hate the fact.
               | 
               | I'll probably donate to Andreas instead.
        
               | TheRealPomax wrote:
               | I'd much rather have the option to sponsor specific
               | bugzilla issues, to be honest, I don't want to give
               | Mozilla any money if it means it just pads out the CEO
               | salary a bit (here's hoping whoever the new CEO will be
               | takes the job in the understanding that it's not a
               | million dollar position, with a sensible salary instead).
        
               | NoboruWataya wrote:
               | But the Corporation is wholly owned by the Foundation,
               | isn't it? In that context, I don't see how it makes sense
               | to see them as completely separate. The Corporation is
               | answerable to the Foundation, the Corporation's profits
               | go to the Foundation and I imagine it is similarly
               | possible for the Foundation to fund the Corporation
               | (unless its charter prohibits it or something).
        
               | rgbrenner wrote:
               | Yes, claiming they're separate is like saying Walmart and
               | Walmart.com are separate. Except in that case, Walmart
               | only owns 88% of the .com... so thats actually more
               | independent than the Mozilla Corp.
        
               | asadotzler wrote:
               | Corporation profits don't go to the Foundation. That's
               | not allowed. The Foundation owns the Corporation and you
               | are correct that MoCo ultimately answers to MoFo which is
               | their full owner, but tax law doesn't let a non-profit
               | create a for profit to generate funnel commercial
               | activity cash back to the non-profit as that defeats the
               | purpose of having non-profits and giving them tax
               | exemptions, so the Mozilla Foundation gets its money from
               | fundraising while the Mozilla Corporation gets its money
               | from commercial agreements. Those pools of money are
               | almost entirely separate. Your overall point stands. MoCo
               | ultimately answers to MoFo in the big picture.
        
               | asadotzler wrote:
               | Now you're misrepresenting things. The Foundation fully
               | and wholly owns the Corporation and if the Corporation
               | ever strayed from the Foundation's intentions, the
               | Foundation could literally shut it down or sell it off.
               | Leaving off that critical detail -- and I was an original
               | MoFo and original MoCo employee that predates anyone else
               | here, suggests you've got some agenda here other than
               | informing folks about the corporate structures.
        
               | TheRealPomax wrote:
               | It may feel like an important detail, but not one that's
               | realistically relevant? In no real world would the
               | foundation ever sell the corporation off? O_o
               | 
               | And no one at the foundation has any say over what
               | happens to Firefox (certainly not during my tenure) which
               | was the original point: the comment said "I guess Mozilla
               | Foundation's running the Firefox project is not to
               | everyones liking", which perpetuates the mistaken belief
               | that the foundation has anything to do with Firefox.
        
         | joshmarinacci wrote:
         | Adding another free browser changes nothing. People don't
         | choose free browsers because people don't choose. The owner of
         | the platform chooses (with the notable exception of Windows
         | where Google has spent billions of dollars to advertise it).
        
           | metaxy2 wrote:
           | Chrome is also very big on macOS even though it's not
           | preinstalled, although yeah, that also has to do with the
           | marketing. It seems hard to find good stats on this but it's
           | definitely in the web developer zeitgeist. On mobile, though,
           | people do pretty much just use whatever comes installed.
        
         | DiggyJohnson wrote:
         | I'm not sure if longing is the right word, and I think you may
         | be confusing excitement and buzz around Serenity and Ladybird
         | as longing for another free browser, when it is more accurately
         | excitement and curiosity about a technically very impressive
         | project.
        
         | NoboruWataya wrote:
         | I think it's more excitement about the _idea that it is
         | possible_ to write a web browser from scratch, than about this
         | specific browser. This is just one of the most promising
         | implementations of that idea.
         | 
         | I am very much team Firefox and think it is important to
         | protect and promote it as much as possible. But I don't think
         | the attention that people are giving to Ladybird would
         | otherwise be dedicated to Firefox. Maybe when Ladybird gets
         | more functional and stable they might become competitors but
         | not right now.
         | 
         | IMO it is exactly because building a fully featured browser
         | from scratch is considered basically impossible today, that we
         | so desperately need Firefox to succeed.
        
           | andrewstuart wrote:
           | >> I think it's more excitement about the idea that it is
           | possible to write a web browser from scratch
           | 
           | Depends on your definition of "a web browser".
           | 
           | It's not possible to clone Firefox or Chrome without huge
           | huge resources and time and effort.
           | 
           | It is probably possible to make something like a web browser
           | from 20 years ago.
        
             | _heimdall wrote:
             | That might be true, but if that's where we've found
             | ourselves it seems like the best course of action is to
             | start over with a fresh web spec focused on staying as
             | simple as possible.
             | 
             | Browsers have never had a sustainable revenue model. If
             | we're at a point where building one is so complex that it
             | requires a massive resource investment we're setup to
             | eventually be left with only one or two highly centralized
             | and controlled browsers. That defeats the whole purpose of
             | the web.
        
               | asadotzler wrote:
               | maybe, but it absolutely won't happen, so why bother
               | suggesting it?
        
             | zamadatix wrote:
             | I think Ladybird has already surpassed that mark. Maybe not
             | in 100% of attributes, technically modern Chrome/Firefox
             | don't even meet that mark, but it's also already gone well
             | beyond in most of them. This including that they are doing
             | everything in house from the image decoding to the font
             | rendering (well, on Serenity - for other platforms like
             | Linux/macOS they have QT bridge their implementation to
             | existing stacks).
             | 
             | Still a long ways to go to be a Chrome/Firefox for sure but
             | that it's already beyond what you suppose might be possible
             | is just the point of why it's its own kind of excitement.
        
         | squarefoot wrote:
         | > However I don't understand why many people are longing for
         | Ladybird as another free browser. There are already some and
         | Firefox is losing marketshare every day. So please do use it.
         | 
         | Having more options in the FOSS world is always a good thing.
         | Firefox unfortunately lost market share because the Mozilla
         | Foundation does absolutely nothing to promote it, and that's
         | not going to change until they find a better source of revenue
         | than Google.
        
         | intelVISA wrote:
         | It's time to sunset Firefox and usher in The Next Age of libre
         | browsers.
         | 
         | Mozilla has betrayed FOSS for Google monies, at last the
         | chickens come home...
        
           | arcanemachiner wrote:
           | Maybe we should wait for a viable alternative before
           | sunsetting things and ushering in ages.
        
         | dale_glass wrote:
         | > However I don't understand why many people are longing for
         | Ladybird as another free browser.
         | 
         | I'm longing for a free web browser *engine*.
         | 
         | Neither Firefox nor Chrome like being used as a component of
         | something else. Chrome is used by Qt, but only by force through
         | a pile of hacks.
         | 
         | I'm really hoping a new project drops that nonsense and just
         | allows rendering HTML to a texture without needing a big
         | corporation to maintain a patch set to make it actually
         | possible.
        
         | jcul wrote:
         | That's strange, I sometimes (once every few months) use teams
         | with Firefox on Linux and it seems to work fine.
        
       | epgui wrote:
       | Very cool project, but this article isn't really about
       | complexity, and complexity makes a background appearance at best.
        
         | misterdata wrote:
         | Author here, I guess I could have chosen a better title. This
         | article is about diving into complexity that seems
         | insurmountable at first, with an engineer's mindset.
        
       | fifilura wrote:
       | He was lucky that the fix was to disable the functionality.
       | 
       | More likely would have been that it was non-compliant but chrome
       | renders it anyway.
       | 
       | And from there starts the work of figuring out how exactly to
       | make it bug-compliant with Chrome.
        
       | andrewstuart wrote:
       | I put it to you that the web browser and the operating system are
       | the two most sophisticated applications ever built.
       | 
       | No doubt it's possible to build a simple web browser that gets
       | some 50% of the job done and could serviceabley display some
       | websites.
       | 
       | However there would a very very long tail of detail and nuance
       | and edge cases that would be very very hard to catch up.
       | 
       | This is why you should use Firefox and we should never lose
       | Firefox.
       | 
       | If you don't follow it closely, the pace of new feature
       | development in web browsers is stunning. There is a huge amount
       | of new stuff going in constantly.
       | 
       | I'm not knocking this project..... developers can build whatever
       | they like. I'm just observing that the web browser is already the
       | Pyramids of Giza or some other such gigantic human endeavor.
        
         | kerrie wrote:
         | But is it really necesary to use the such a bloated piece of
         | software as a web browser? i think it would be better to
         | discard the whole web and replace it with the gemini protocol.
         | 
         | It can do 99.99% of what you use the web for with less resource
         | usage. you can implement your own gemini client in 100 lines of
         | code.
         | 
         | For the remainder 0.01% of stuff, use a dedicated application.
         | Dont trust it? Use it with docker or similar.
         | 
         | As far as Im concerned all the browser bloat is worse than
         | useless. Much of it is just to spy on you. Im sure these
         | dedicated spying apps, you call web browsers, are deliberately
         | full of security holes so they can upload your data to their
         | servers
        
           | andrewstuart wrote:
           | The web browser is one of humanities greatest achievements
           | and I don't mean that ironically.
           | 
           | The more you understand about the modern web browser and how
           | stunningly powerful it is, the more you should be amazed.
           | 
           | And far from bloated, the modern web browser is trim and fast
           | given the unbelievable feature range.
           | 
           | And if you don't trust something you're free not to use it.
           | 
           | When I see Chrome or Firefox and I deeply gladdened.
           | 
           | Go back 25 years and any time you wanted to do something at
           | the user interface in any context it was hard and glitchy and
           | maybe couldn't be done at all. Want to do something in a user
           | interface today? Chances are the browser can do it.
           | 
           | Truly breathtakingly beautiful and powerful software and I
           | love it.
        
         | samatman wrote:
         | Ladybird is doing an excellent job of demonstrating that the
         | putative unreproducible complexity of the modern web browser is
         | just FUD.
         | 
         | I'm glad they didn't listen to all the people repeating the
         | conventional wisdom that writing a modern web engine from
         | scratch is impossible. Success is the best proof.
        
           | asadotzler wrote:
           | Use it for a week. It's not really a complete web browser,
           | IMO, kind of like trying to navigate a massive Microsoft
           | Office document repository with Open Office in 2004.
        
             | samatman wrote:
             | It isn't finished, that's true. But my bet is that at some
             | point it will be.
        
         | asadotzler wrote:
         | It's been a while since I had a need to know, but Firefox is
         | certainly over 20 million lines of code by now. The web
         | platform has a lot of features to support, both standardized
         | and proprietary, and it needs to also work when web authors
         | mis-write their sites and apps. (Forgot to close that tag,
         | Firefox still works, that kind of stuff.)
         | 
         | What are the chances that a group of people come together to
         | build another 20 million line browser? I'm with you in thinking
         | not great. I'm also with you in supporting Firefox. That
         | shouldn't be surprising as I'm one of the guys that started
         | Firefox back in 2002 at Netscape when I was a member of
         | staff@mozilla.org
        
       | tantalor wrote:
       | Engineers don't do stuff for fun, they do it for money.
        
         | Retr0id wrote:
         | no true scotsman
        
       | robador wrote:
       | > As an example, the recently launched website for Dialogic
       | requires about 700 JavaScript-modules, and has about 19.000 lines
       | of code of its own. There is however a staggering amount of
       | complexity hiding beneath: just this website alone depends on
       | (potentially) another 1.3 million (!) lines of code in modules it
       | uses.
       | 
       | This is fine.
       | 
       | Seriously though, that's insane.
        
         | AlienRobot wrote:
         | The irony is that I clicked on the website and it looks like
         | you could make it with wordpress...
        
         | misterdata wrote:
         | Author here - this figure is insane but also a bit of an
         | exaggeration. I calculated it by running 'cloc' on the source
         | code directory, not excluding node_modules. Many modules in
         | there are actually unused or only used at build time. The built
         | output (from Nuxt) that is actually run is much more compact
         | (though partly minified so line counts are not that
         | interesting). Also, Nuxt specifically is a bit overkill here,
         | but greatly improved my productivity developing this website
         | (and was chosen because it aligns with our other web
         | applications, so less 'innovation tokens' [1]).
         | 
         | [1] https://boringtechnology.club
        
       ___________________________________________________________________
       (page generated 2024-02-12 23:01 UTC)