4 ms·
Mozilla uses AFL, which is a genetic algorithm that tests code paths. They are also transitioning to Rust, which will give them a much bigger safety guarantee o
by crazypython 7y ago
Mozilla uses AFL, which is a genetic algorithm that tests code paths. They are also transitioning to Rust, which will give them a much bigger safety guarantee over most of their code and a much smaller audit surface for the rest.
- Thaxll 7y agoRust has nothing to do with QA things since most bug are business logic / UI / UX related. QA don't test for those kind of errors.
- mffnbs 7y agoIn my experience, that’s the exact sort of errors that a QA team our position tests for.
- newnewpdro 7y agoTheir comment meant that QA don't test for the kinds of errors (safety) rust protects against.
- zozbot234 7y agoThey're transitioning quite slowly, a sibling comment mentions https://wiki.mozilla.org/Oxidation#Rust_Components https://wiki.mozilla.org/Oxidation#Rust_Components this page. Even accounting for how they're obviously prioritizing their efforts to get the best bang for the buck, there will be a lot of critical C/C++ code in Mozilla products for a pretty long time.
- SEJeff 7y agoAmerican Fuzzy Lop? It's a fuzzer. I've never heard of a fuzzer described as a genetic algorithm that tests code paths, but that is technically correct. A fuzzer is not going to replace unit tests or good SDLC, which often involves QA.
- craftinator 7y agoGA's are a good generative path for fuzzers; at a low level that's exactly what they do.
- zelly 7y agoMozilla is good at everything except making browsers. rr is the best debugger I've used. I wonder if there's a way for them to monetize Rust. It seems impossible to monetize a programming language without owning a platform e.g. Microsoft (*.NET), Apple (Swift), Borland (Delphi), JetBrains (Kotlin). FirefoxOS for mobile with Rust as the first-class citizen would have been huge for them. Maybe it's not too late. Take note Mozilla. If there's anything they're going to be in the history books for, it's going to say Rust, not Firefox.
- roca 7y agoHi, I'm the architect of rr. Mozilla is very good at making browsers. Making browsers is incredibly hard and it's amazing that Firefox is competitive with Chrome given a fraction of the development resources Chrome has. Mozilla has made some big mistakes, but so have the other browser vendors. It's easier to brush over your mistakes when you have an ocean of resources and market power.
- jcranmer 7y agoIn terms of contributing to declining market share, my personal opinion is that Mozilla's big mistake with Firefox was killing embedding around 2010.
- roca 7y agoCould be, but it's awfully hard to say. What would have been cut to make room for embedding work, and what would the impact of cutting it have been? Did we know enough at that time to make a good decision about that? Given that the embedding API would have had to change dramatically due to e10s pretty soon after 2010 (and maybe again due to Fission), I think 2010 was probably a bad time to promote a stable embedding API. Embedding doesn't rank high on my list of Mozilla's mistakes.
- alexhutcheson 7y agoThanks for rr - it's such an amazing tool, and a really impressive engineering accomplishment.