Recent Articles

  • MDN Web Docs: Editorial strategy and community participation

    We’ve made a lot of progress on moving forward with MDN Web Docs in the last couple of months, and we wanted to share where we are headed in the short- to mid-term, starting with our editorial strategy and renewed efforts around community participation.

  • Coming through with Firefox 82

    As October ushers in the tail-end of the year, we are pushing Firefox 82 out the door. This time around we finally enable support for the Media Session API, provide some new CSS pseudo-selector behaviours, close some security loopholes involving the property, and provide inspection for server-sent events in our developer tools.

  • A New Backend for Cranelift, Part 1: Instruction Selection

    This post will describe my recent work on Cranelift as part of my day job at Mozilla. In this post, I will set some context and describe the instruction selection problem. In particular, I’ll talk about a revamp to the instruction selector and backend framework in general that we’ve been working on.

  • To Eleventy and Beyond

    Porting an established static website from one generator to another can be daunting. In this post, Add-ons Engineering Manager Stuart Colville recounts the experience of migrating Firefox Extension Workshop, Mozilla’s site for Firefox-specific extension development resources, from the Ruby-based site generator Jekyll to JavaScript-based Eleventy.

  • An Update on MDN Web Docs

    Mozilla announced some general changes in our investments and we would like to outline how they will impact our MDN platform efforts moving forward. It hurts to make these cuts, and it’s important that we be candid on what’s changing and why.

  • js13kGames 2020: A lean coding challenge with WebXR and Web Monetization

    Announcing the return of the annual month-long competition for HTML5 game developers. For js13kGames contestants, the file size limit for all entries is set to 13 kilobytes of code. That's what makes this a code golf challenge. In addition to great prizes across a host of categories, including WebXR and Web Monetization, expert game reviewers provide valuable feedback on all submissions.

  • Changes to SameSite Cookie Behavior – A Call to Action for Web Developers

    Browsers are changing the default value of the SameSite attribute for cookies from None to Lax. This will greatly improve security for users. However, some web sites may depend (even unknowingly) on the old default, potentially resulting in site breakage. At Mozilla, we are slowly introducing this change. And we urge web developers to test their sites with the new default.

  • Firefox 79: The safe return of shared memory, new tooling, and platform updates

    Firefox 79 offers a new Promise method, more secure target=_blank links, logical assignment operators, tooling improvements for better JavaScript debugging, and many other updates of interest to web developers. In addition, shared memory is back at last, with a safer implementation.

  • MDN Web Docs: 15 years young

    MDN Web Docs turns 15 years old! This celebratory article highlights fifteen big wins of the last five years. With initiatives like the browser compatibility data project, learning areas and new pathways for beginning devs, interactive examples, as well as the Product Advisory Board, the Web DNA Report, and the MDN Swag Store, the MDN community has been busy sharing knowledge with the people who build the web.

  • Safely reviving shared memory

    At Mozilla, we want the web to be capable of running high-performance applications so that users and content authors can choose the safety, agency, and openness of the web platform. Shared-memory multi-threading is an essential low-level building block for high-performance applications. However, keeping users safe is paramount, which is why shared memory and high-resolution timers were effectively disabled at the start of 2018, in light of Spectre. Until now...

  • Andrew Halberstadt

    Testing Firefox more efficiently with machine learning

    A browser is an enormously complex piece of software, and it's always in development. About a year ago, we asked ourselves: how could we do better? Our CI relied heavily on human intervention. What if we could instead correlate patches to tests using historical regression data? Could we use a machine learning algorithm to figure out the optimal set of tests to run? We hypothesized that we could run fewer tests to save money, get results faster, and reduce the cognitive burden on developers.

Browse All Articles →