3 ms·
> it's very much intended as a research project If so then the failure of the experiment should be acknowledged. Failure described among others at: https://ne
by polyglotfacto 9mo ago
> it's very much intended as a research project
If so then the failure of the experiment should be acknowledged.
Failure described among others at: https://news.ycombinator.com/item?id=46705625 https://news.ycombinator.com/item?id=46705625
> It's functional enough to render web pages
> FastRender may not be a production-ready browser, but it represents over a million lines of Rust code, written in a few weeks, that can already render real web pages to a usable degree.
This is something that can be done in much less than a million lines of code. There must be a core somewhere in Fastrender--probably just a few thousands lines--which is putting together existing layout and graphics libraries and makes it render something to the screen.
Doing that in a few weeks isn't impressive, especially not when buried in a million lines of spaghetti code.
If you want an example of a real prototype web engine build along radical design choices, head over to https://github.com/DioxusLabs/blitz https://github.com/DioxusLabs/blitz
I'm pretty sure it renders far better than Fastrender(the edits the agents made to Taffy are probably nonsense), and I'm guessing it is at most 50k lines.
Conclusion:
In the light of the efforts to paper over failures, I'm calling Fastrender not a research project but propaganda.
- simonw 9mo agoThey wanted to figure out patterns to have thousands of agents work on millions of lines together in parallel without stepping on each other's toes. They achieved that. Looks like a success to me. Implementing a browser was just the demo for that. I called it their "hello world" at the end of my post.
- polyglotfacto 9mo ago> Looks like a success to me. How is spaghetti code that does not implement the spec(web standards in this case) success? You are one of the creators of Django; so let me try to give you an analogy: if someone runs thousands of agents in parallel to produce a web framework, and the code ends-up being able to connect to a database and render a template using existing libraries, and the rest would be total non-sense and otherwise useless to web devs; would you call that a success? Success in software requires something that works as intended and is maintainable.
- simonw 9mo agoTheir success criteria was "can we run thousands of agents at once and have them work towards a goal". By that criteria it was a success. So yes, in your hypothetical I would call it a success IF their goal was parallel agent research. I'd call it a failure if they told me they were trying to build a production-quality alternative to Django.
- polyglotfacto 9mo agoI understand this is not meant as production level quality, but as a web engineer I was expecting at least a decent POC with some interesting design ideas; not total spaghetti that even gets the spec wrong(despite the good idea of checking the spec in the repo). They may have solved a problem related to agent coordination, like you discussed in your interview related to conflicts and allowing edits to merge without always compiling. But at the end of the day, a novelty like this is only useful in so far as it produces good code; I don't see how coding agents are of any help otherwise. So the failure of the pattern should be acknowledged, so we can move on and figure out what does work. I speculate that what does work is actually quite similar to managing an open source project: don't merge if it doesn't pass CI, and get a review from a human(the question is as what level of granularity). You also need humans in the project to decide on ways of doing things, so that the AI is relegated to its strength: applying existing patterns. In all seriousness, you can tell Wilson to get in touch with me. With even only one person with domain knowledge involved in such an effort, and with some architectural choices made ahead of unleashing the herd, I think one could do amazing stuff.
- simonw 9mo agoI was actually thinking of your earlier comments about this from the perspective of a Servo engineer when I asked Wilson how much of his human-level effort on this project related to browser architecture as opposed to parallel agents research. The answer I got made it clear to me that this wasn't a browser project - he outsourced almost all of the browser design thinking to the agents and focused on his research area, which was parallel agent coordination. I'm certain having someone in the human driving seat who understands browsers and was actively seeking to build the best possible browser architecture would produce very different results!
- deleted 9mo ago[deleted]