4,280 karma · joined December 1, 2011
I think the commentary is taking an issue with the suggestion that there's something "wrong" with Firefox's font rendering, when it's really Chrome who is the outlier.
* The NT kernel does not overcommit; and
* As a closed-source OS, client and server editions of Windows do not use build configurations targeting embedded systems; they essentially require ample swap space. They won't run well if users attempt to forcibly minimize or disable their page file.
If I had a dime for every time people were being told to manually manage their Windows page file "for performance"...
Not on behalf of the website.
The nice thing about COM is that it provides a well-defined, C-based ABI for calling object-oriented interfaces; if your language has a FFI that supports C, then you can call COM objects.
I’m a big believer that COM bindings for any language with automatic memory management should not expose refcounts directly to the programmer (at least in 90% of cases). It’s not far fetched — the original, pre-.NET Visual Basic did a very good job of this.
Don't get me wrong, Apollo 8 was an extremely risky and critical part of the program, but it's not like somebody conjured everything up from thin air in 134 days.
> Why is libxul a shared library?
A lot of this is historical and is now very difficult to change without negatively impacting users.
> It is not used by a bunch of other applications besides Firefox so there isn’t much saving from being shared.
In the 2000s it was designed to do so, via XULRunner. You're also forgetting about Thunderbird and SeaMonkey (though I don't think that either of those can actually share libxul.so with Firefox anymore, but I digress).
But as to why it is the case now, there are still compatibility considerations that fall out from the era when Gecko+XUL were written as a runtime environment for hosting applications.
For example, I recall that during the Electrolysis project, we wanted to get rid of the plugin-container executable on MacOS and just host all Firefox child processes using firefox. Some "security" software would break Firefox because it made certain assumptions about the way that various Firefox binaries interacted with each other.
FWIW, Gecko used to consist of a lot more separate libraries, but over the years we recognized that there were a lot of performance issues that we could mitigate by combining them, so most shared libraries were folded into libxul.
And that was with unified builds enabled.
That was pretty much how it was viewed at the time (I worked at Mozilla during the Pocket acquisition). It was seen as, "we were going to build our own reading list, but let's just buy this instead and integrate it as /the/ reading list for Firefox."
I agree that the external perception was different, and remains so to this day.
Citation needed? And no, the 2020 layoffs don't count: It's 2023.
That service is what earns them non-Google revenue.
/me glares at "per-monitor v2" API awareness. I hate spreading rumours, but the one I heard about this was that nobody within Microsoft itself had tried converting any of their first-party GUI apps to per-monitor DPI. Once they started to do so, they finally realized how bad their offering was and came up with v2.
You clearly haven't been paying attention at all. Quantum 57 shipped in 2017 and was a huge investment.