Hacker News

Top stories

Live mirror
30 storiesupdated just nowView source snapshot
  1. Bend 2 and the Vibe-Coding Trap(liampwll.com ↗)
    42comments
  2. OpenJev(openjev.com ↗)
    131comments
  3. ZCode, the GLM coding agent, silently uploads your Git history(tokenstead.ai ↗)
    27comments
  4. Jemalloc 5.4.0(github.com/jemalloc ↗)
    56comments
  5. I don't like passkeys(hawksley.dev ↗)
    57comments
  6. Subnormal floating-point numbers are expensive on Intel processors(lemire.me ↗)
    5comments
  7. The scourge of x86 emulation(fex-emu.com ↗)
    42comments
  8. Cekura (YC F24) Is Hiring(ycombinator.com ↗)
    discuss
  9. Microsoft exec called AI scraping 'the largest theft of labor in human history'(techcrunch.com ↗)
    289comments
  10. Bonsai 2 27B: Near-Lossless Compression in a 9x Smaller Footprint(prismml.com ↗)
    151comments
  11. Astra for Law(openai.com ↗)
    616comments
  12. Replacing Pull Requests with Delta(zed.dev ↗)
    25comments
  13. Warren Buffett Steps Down as Berkshire Chairman, Names Son to Replace Him(nytimes.com ↗)
    39comments
  14. Bend – A language that blocks AI mistakes via proof, on CPU and GPU(bend-lang.com ↗)
    244comments
  15. Qwen 3.8 Omni Flash(qwen.ai ↗)
    94comments
  16. Hister: A private search engine for the pages you visit and the files you keep(github.com/asciimoo ↗)
    173comments
  17. Wax motor(wikipedia.org ↗)
    77comments
  18. When the fractional part of a float fixes your shader(crocidb.com ↗)
    9comments
  19. Fujitsu launches made-in-Japan next-generation CPU FUJITSU-MONAKA(global.fujitsu ↗)
    238comments
  20. Pre-Greek: The lost language hidden within Ancient Greek(linguisticdiscovery.com ↗)
    51comments
  21. The Shadows Lurking in the Equations – Underwater Islands(gods.art ↗)
    discuss
  22. How to Write with an LLM(sockpuppet.org ↗)
    141comments
  23. Dr Julius Neubronner's Miniature Pigeon Camera(publicdomainreview.org ↗)
    discuss
  24. A heap overflow and SSO misconfiguration to compromise OpenAI internal repos(hacktron.ai ↗)
    163comments
  25. Shapelearn Qwen 3.8 27B (13.1 GB VRAM)(byteshape.com ↗)
    18comments
  26. Ask A Monk – A digital wilderness for thoughts with no immediate answer(askamonk.online ↗)
    27comments
  27. Flet 1.0 – Build cross-platform apps in Python(flet.dev ↗)
    70comments
  28. Diplodocus, Long Thought Exclusively American, Turns Up in Spain(sci.news ↗)
    47comments
  29. Telstra outage: The night a network decided the year was 2006(netnod.se ↗)
    29comments
  30. Speeding up gearhash on ARM64(sam.dev ↗)
    discuss

This year in Servo: over 1000 pull requests and beyond

265 pointsby 2y agoservo.org
81 comments
2y agoHN ↗

Is there any plan at Mozilla to eventually use Servo for Firefox or did them basically stopping working on it end any hope of that? Is the Servo team’s plan to build a new browser around it?

It definitely could get interesting soon, I’ve been keenly watching the development of the Ladybird browser (which is also a from-scratch engine) so if there were potentially two viable new browser engines over the next few years that could really shake things up!

2y agoHN ↗

Mozilla have already integrated a few key servo components into Firefox. Notably webrender, the rendering backend, and stylo, the style system. But they’ve effectively dropped all servo development at this point, and are not working on it further.

2y agoHN ↗

Huh? Why would they drop development of key components to their main product?

What is Mozilla without Firefox?

Update:

https://www.youtube.com/watch?v=9lkIX5ryZZ4

Basically, Mozilla gave Servo employees the foot and the project was taken over by the linux foundation.

Servo dev has been restarted (mostly) during 2023 and the changed Firefox made to their servo implemementation is now being added to servo in batches (ongoing).

So Servo team is aiming to become a full featured (standalone) web platform (browser).

2y agoHN ↗

They integrated what they felt was worthwhile, and continue to develop and support those pieces internally to Firefox.

2y agoHN ↗

Servo is not Firefox. It was always a testbed research platform. Stopping development of Servo does not mean stopping development of Firefox.

2y agoHN ↗

What is Mozilla without Firefox?

De facto? Google's puppet company to keep regulators happy.

2y agoHN ↗

De facto? Google's puppet company to keep regulators happy.

If you think that's the case, then Google is clearly failing at that goal, since they've aggressively taken browser share directly from Firefox users to the point where Firefox may no longer be supported by government services.

2y agoHN ↗

project was taken over by the linux foundation

Why? What is role of Linux Foundation anyway?

(Beside spending members tons of spam and completely ignore GDPR?)

2y agoHN ↗

The undue focus and almost wistful romanticization/fetishization of Servo is frankly weird, especially when it comes from people with only a tenuous grasp of (let alone hands-on relationship with) browser engine internals. I'm talking about tech news writers and kind-of-but-not-really technical commenters on e.g. Reddit who confabulate their own lore in the spirit of those press accounts, etc.

Firefox uses Gecko as its browser engine. The worthwhile parts of Servo are already in Firefox by way of Gecko. Servo is not The Answer to all of life's problems.

Or, to answer your question more bluntly: "No. Stop asking."

2y agoHN ↗

Firefox uses Gecko as its browser engine. The worthwhile parts of Servo are already in Firefox by way of Gecko.

And Gecko has been notoriously unembeddable. Which kinda helped the whole CEF spread.

Not to mention Mozilla basically kneecapped Servo and Firefox by firing most of its devs in a purge.

2y agoHN ↗

Mozilla needs to hear this more often.

There is only one browser, because browsers need to be embeddable, and Firefox isn't.

2y agoHN ↗

Interesting to work through that

On its face, it's a tough sustainability position for an org of Mozilla's size b/c browser revenue - today - is from controlling the search bar (and maybe now payments APIs?). By making Firefox embeddable, Mozilla gives that revenue to whoever is doing the embedding. Ex: Brave <> Chrome engine.

Building for embedding developers can be super distracting if no sustainability, which isn't a problem for Google: They still make money from embedding by owning the embedding environments like Android. AFAICT, Mozilla failed to land in sizeable markets there. They tried to own & partner in the embedding envs -- e.g., FirefoxOS -- so maybe the trick is to get a more generous rev share for phone vendors wanting to break free of Google? Historically didn't seem to really work out, but maybe genAI w/ consumer/prosumer-grade UIs is reopening that door.

Evolutions like that in turn may take quite an engineering & culture rethink as well, not easy to turn such a big & decentralized ship. I'll keep rooting for them!

2y agoHN ↗

I’m not well-versed on the internals of FirefoxOS, but I’m not sure it really counts as embedding because to my understanding, the entirety of the user-facing UI was built with Gecko. Embedding entails usage of the engine with unrelated toolkits, e.g. AppKit/UIKit or GTK.

If that’s true, then Mozilla wouldn’t have been making money from Gecko’s ability to embed with FirefoxOS unless the project took a sharp corner and changed UI toolkits.

2y agoHN ↗

The FirefoxOS scenario would be Gecko embedding in FirefoxOS, so Mozilla is their own customer, and makes $ by being the controller of FirefoxOS - OS search, and configuration of browser search

It's less likely the handset manufacturer would be able to change search bar defaults in those scenarios, at least without a stronger profit sharing negotiation, as they'd probably be already negotiating a more careful licensing & teaming agreement

2y agoHN ↗

I was part of Mozilla back then. I think we were already talking about making Gecko embeddable in __2003__.

But then… looot of things happened, other priorities, competition, bad decisions, etc etc.

2y agoHN ↗

Arguably neither is Chrome. Electron, CEF and WebView2 are all forks of it. Google has no interest in a supported official embedding API.

2y agoHN ↗

I'm struggling to see the logical throughline that connects your comment to mine, or even how it relates to itself.

Gecko was originally conceived to be embeddable by design. TPTB decided this was a handicap. It's not an accident that it's hard to work with outside the context that is its modern raison d'être; it is now unembeddable, if not "by design" then certainly by choice.

Servo is not a product, and there is no product for which Servo is an integral component. Servo was an R&D project. It succeeded. Mozilla laid off a bunch of Servo developers, partly because of COVID, and partly because it was (past) done; it doesn't make sense to keep paying for R&D at Servo's stage. It's debatable whether it's even R&D at that point—more like wankery/noodling (i.e. what most programmers want to do, but that the world already has enough of).

2y agoHN ↗

Gecko was originally conceived to be embeddable by design

Which part? And… what do you mean by embeddable in that context?

2y agoHN ↗

XULRunner was not Gecko embed. It was Gecko embedding stuff.

There was never a proper embeddable gecko.

There has been an attempt for a gtk widget, but it never matured.

2y agoHN ↗

K-Meleon used the Gecko rendering engine but with a native chrome and no SpiderMonkey. It also powers Thunderbird and the SeaMonkey browser. I'm sure it turned up elsewhere before it was too 'baked in' to Firefox.

2y agoHN ↗

In the case of Thunderbird and seamonkey, Gecko was not embedded, but was the "embedder".

For a short time, there was some attempts (native cocoa and gtk widget) to embed gecko, but it was really not meant to be, it was really hacky and never matured.

Gecko was never designed to be embedded. Really.

2y agoHN ↗

Throughline is unwanted fetishization/romantizadion of Servo.

I'd argue Servo's promise was never realized - embedding.

Another part of it is losing people in the purge. People fired weren't hired to work on Servo exclusively, some were long time developers of FF, including the MDN docs team.

So it's not like they started Servo, hired bunch of people to work on it, then fired them after R&D was done.

2y agoHN ↗

I remember Mozilla Prism as a "site specific browser"or what one calls it back in the days.

2y agoHN ↗

Is there any plan at Mozilla to eventually use Servo for Firefox or did them basically stopping working on it end any hope of that?

Initially, I think Servo was never meant to be integrated wholesale into anything. It was a experiment playground to evaluate ideas without having them coupled to mainline Firefox, and be able to iterate on things quickly.

Once the ideas were validated, they were integrated into Firefox without pulling in their entirety of Servo.

The "Quantum Render project" is one example of this, where the WebRender compositor was first created in Servo, and eventually integrated into Firefox mainline.

2y agoHN ↗

Hype? I guess

It made Firefox competitive again

2y agoHN ↗

Hype can be deserved, not always dismissive

2y agoHN ↗

Yeah, incredible that there was a brief period of time where Mozilla almost made Firefox exciting again.

2y agoHN ↗

Quote from the post:

In a decade that many people feared would become the nadir of browser engine diversity, we hope we can help change that with Servo.

I sure hope so! It might be a good thing that Servo is now independent from Mozilla. We can't rely on Mozilla anymore, and should move on. Maybe someday Servo can become the new Firefox (as in "modern and freedom-respecting browser")?

From testing the current version of Servo, it still has a long long way to go though, until it becomes a usable browser.

2y agoHN ↗

Servo is now independent from Mozilla

When I initially read the headline what I remember thinking before reading the article was 'I hope it has some use outside of Firefox'.

2y agoHN ↗

I build scrapers with rust, and use servo

2y agoHN ↗

is there a chance to see it? any links for someone interested?

2y agoHN ↗

I would have thought it overkill to memory manage scrapers by hand. Do you need such succinct memory usage?

2y agoHN ↗

Safe memory management without GC is the feature that gets Rust the most headlines, but it's not the only raison d'etre. It also has a great type system, that combined with the focus of the standard library and the library ecosystem makes it a lot easier to avoid bugs and makes refactoring a lot safer and easier. It's also very fast, and scrapers are surprisingly often CPU bound

2y agoHN ↗

Did you use servo in the context of the scaper? In general I'd be happy to hear more about how you use servo, which you could discuss in our zulip: https://servo.zulipchat.com/

2y agoHN ↗

There's also the Ladybird browser by the SerenityOS folks, that's however not written in a memory-safe language.

2y agoHN ↗

I thought Jakt was supposed to be memory safe (but it was very wip last I looked at Jakt)

2y agoHN ↗

It is for now, but as both Ladybird and Jakt are SerenityOS projects, eventually parts of Ladybird might get written in Jakt. Jakt compiles to C++ and plans to have features like "inline C++" to allow easy interop between the two, so I assume they are thinking about this.

2y agoHN ↗

Which, despite being much younger and 80% made by one guy, is somehow way farther along than Servo. Ladybird doesn't have any pre-built images, but it's downright usable.

2y agoHN ↗

Andreas is incredible but that's an overstatement.

  $ git log --format="%an %s" | grep -E "Browser|LibWeb|Ladybird|LibJS" | wc -l
  15524
  $ git log --format="%an %s" | grep -E "Browser|LibWeb|Ladybird|LibJS" | grep "Andreas Kling" | wc -l
  4249
  $ calc 4249/15524
  ~0.28530018036588508116

Still a monumental feat but don't downplay the community that's rallied behind him.

2y agoHN ↗

It's not further along when you consider the vulnerabilities that are present. C++ is unfit for long term use because it is intentionally introducing severe tech debt that we mistakenly imagine doesn't have to be repaid.

2y agoHN ↗

I rely on Mozilla just fine. Have used Firefox for a decade and will continue to do so. I am not about to accept Google as the sole provider of the web like you are so eager to do.

2y agoHN ↗

I think you misunderstood:

I think GP just like me wants neither Google nor Mozilla.

2y agoHN ↗

With Firefox being in single digit marketshare, the fight is already over. It's hard to justify developing for or testing against Firefox unless you want to appeal to the similarly small Linux desktop crowd.

2y agoHN ↗

This is why antitrust matters.

Google needs to have their arms tied for a bit. Their fingers are in every single pie, taxing the entire tech sector.

Likewise, Safari shouldn't be the default iPhone browser, Edge shouldn't be the default on Windows, and no company should be able to scare users or force their solution as a default.

The browser space would be fine without Google.

2y agoHN ↗

But looking at alternative browsers like Brave, Vivaldi, Opera or Arc they are also Chromium based. Brave is even by Mozilla's former CTO and they still don't use the Mozilla stack. Many apps will either bundle in CEF or are entirely written in Electron.

Mozilla just made technology that nobody else wants to use.

2y agoHN ↗

Mozilla just made technology that nobody else wants to use.

It's not that nobody WANT to use it, but more like nobody CAN use it. Are you mentioned yourself, most developer only test against chrome/chromium so using servo would be commercial suicide. It not really a statement on servo vs chromium on technical level, but of google vs Mozilla market dominance.

2y agoHN ↗

I have some good news:

For me it seems we are past peak "works only in IE^h^hChrome".

There was a time 5 years ago or so when several interesting websites only worked in Chromebut I haven't seen that problem in a while and the last website I had to deal with that only supported Chrome was a product that a company I work for used but threw out earlier this year.

Yes, some things still mysteriously work slower in Firefox or have some features disabled for no good reason which is why consumer protection agencies still have work to do but I haven't opened Chrome for weeks now I think and last time I did I think the thing I tried to access was just as broken there.

2y agoHN ↗

As a developer, nothing screams incompetence more than a site being completely unusable in FF though.

2y agoHN ↗

It is hard to justify testing for Mozilla when Internet Explorer has 95% market share.

What could possibly go wrong?

2y agoHN ↗

From testing the current version of Servo, it still has a long long way to go though, until it becomes a usable browser.

In reality, I think you're waiting for a different project. Servo is like Gecko/Webkit, it's the browser engine. As far as I know, they're not aiming to build a browser, just the engine part.

What you're waiting for is someone to start using Servo as an engine and provide the browser chrome :)

2y agoHN ↗

I thought it would be a fun weird project to make Servo work with MS' abandoned JavaScript engine:

https://github.com/chakra-core/ChakraCore

Of course it is written in C++ and you'd probably want a pure Rust browser. But it is sad seeing that fairly complete open source JIT JavaScript engine sit and rot.

2y agoHN ↗

I was specifically talking about Servo as a rendering engine. Just open their own website in Servo, and look for all the rendering problems present :)

2y agoHN ↗

finishing our integration with Tauri (thanks to NLNet)

This is really exciting! Hopefully can lead to tiny packages (compared to Electron) but still a consistent rendering story across platforms.

2y agoHN ↗

If it has enough features to match Electron, I think it's likely to end up the same size (100 MB on disk)

2y agoHN ↗

No, because Electron embeds Chromium/Chrome, Tauri uses whatever the platform already has.

2y agoHN ↗

Correct, but for the Tauri/Servo combination, you need Servo which is unlikely to be already available. Stripped release builds of servo are currently 106M which is quite large. Hopefully some size reduction will be achieved.

2y agoHN ↗

Why not a PWA? Does your app need more permissions to mess with people's system that a PWA would allow?

2y agoHN ↗

Can anyone tell me whether Servo is "ready enough" to use for small noncommercial projects? For example, I really like writing personal projects in Typescript using Deno, but there really isn't a very good UI library for Deno outside of running an HTTP server. Other attempts at UI libraries, last I checked, were experimental or half-assed. Would be cool to somehow integrate directly with Servo from Deno so that I don't have to resort to Electron.

2y agoHN ↗

Can anyone tell me whether Servo is "ready enough" to use for small noncommercial projects?

I don't think it is, yet. But why not play around with it and see if it's enough for your use case? Hard to know exactly without knowing what you need to be able to do.

Personally, Tauri currently hits the sweetspot of being way lighter than Electron, but still provide (mostly) the same benefits.

2y agoHN ↗

Could you tell me more about what you mean with "integrate directly with Servo from Deno" You're welcome to the chat to discuss in more details if you want: https://servo.zulipchat.com/

2y agoHN ↗

The budget to make a browser today (including a browser engine) is estimated to be around 400 million yearly (FF cost, estimates for Safari in the same range). They may be bloated, but even by being 10x more efficient it’s still 40 million a year of equivalent engineering work. How is servo intending to pull that work without the leverage of a big corp?

2y agoHN ↗

I might be wrong but I don't think servo is intending to be feature or standard complete ever. Most of the cost of firefox or safari likely comes from new features.

Also it is a web rendering engine, not a full fleshed browser.

2y agoHN ↗

How much of that cost is the browser vs the cost of the browser engine?

Servo currently describes itself as a "web rendering engine", so I don't think they are aiming to become a full-featured browser, and I'm not sure if there is an important distinction between "browser engine" vs "web rendering engine". It makes it sound like they only want to focus on the rendering part itself.

2y agoHN ↗

Ladybird has mostly been made by one guy in a few years and has somehow become a usable browser. Where did you get that estimation?

2y agoHN ↗

useable and complete are very different things.

2y agoHN ↗

There's something wackadoo going on in software where in one environment it'll take 200 workers six years to have something that's still not good, and in another it'll take 1-5 workers a couple years to do at least as well.

It's not even a corporate vs. small shop thing. Look at the team sizes on "giant" programs from big companies in the 90s and consider how enormous an undertaking they'd be considered by most software orgs today.

Like, I get all the Mythical Man-Month, Brooks' Law stuff and that that observation predates the period I'm talking about, but there's definitely been some kind of shift that has other factors causing this (with Brooks' Law compounding the problem). Not sure what it is, I just know that it sure looks like we're far less efficient at building software than we used to be (where "we" is the industry overall). It's like every single organization larger than a dozen people got way worse at building software, pretty suddenly, some time between about 2005 and 2010.

2y agoHN ↗

I think you're missing the factor that expanding the API surface area, however attractive/productive/cool each individual expansion/feature might be, in aggregate becomes a moat maintaining the incumbent's dominant position.

So as far as Google is concerned, the implied manpower requirements are a feature, not a bug.

Chrome's surface area is now huge (and still expanding at a fair clip), but matching Chrome's featureset has become table-stakes for being considered a viable desktop browser, and independently implementing (and maintaining) that entire set of features requires a correspondingly large developer team, even if you were somehow more labor-efficient.

2y agoHN ↗

Usable is carrying the weight of the world in that sentence.

2y agoHN ↗

The Playwright browser automation framework already has backends for Chromium, WebKit and Firefox.

I wonder what it would take to build a Servo backend?

Could be a really fun way to experiment with its capabilities.