Foundations for the Future

Mozilla is pleased to see Servo, which began as a research effort in 2012, open new doors that can lead it to broader benefits for users. | Continue reading


@hacks.mozilla.org | 3 years ago

Firefox 83 is upon us

In this release we’ve got a few nice additions: Conical CSS gradients, overflow debugging in the Developer Tools, enabling of WebRender. | Continue reading


@hacks.mozilla.org | 3 years ago

Warp: Improved JavaScript performance in Firefox 83

We have enabled Warp, a significant update to SpiderMonkey, by default in Firefox 83. SpiderMonkey, the JavaScript engine used in the Firefox | Continue reading


@hacks.mozilla.org | 3 years ago

MDN Web Docs evolves: Lowdown on the upcoming new platform

The time has come for Kuma — the platform that powers MDN Web Docs — to evolve. “What does a Kuma evolve into? A KumaMaMa?” | Continue reading


@hacks.mozilla.org | 3 years ago

MDN Web Docs: Editorial strategy and community participation

We’ve made a lot of progress on moving forward with MDN Web Docs and we wanted to share where we are headed in the short- to mid-term. | Continue reading


@hacks.mozilla.org | 3 years ago

A New Back End 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 ... | Continue reading


@hacks.mozilla.org | 3 years ago

To Eleventy and Beyond

We launched Firefox Extension Workshop, using the Ruby-based static site generator Jekyll, and then realized that we needed to find an alternative and port the site. | Continue reading


@hacks.mozilla.org | 3 years ago

An Update on MDN Web Docs

Last week, 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 ... | Continue reading


@hacks.mozilla.org | 3 years ago

Building FunctionTrace, a graphical Python profiler

Firefox Profiler is a powerful web-based performance analysis interface featuring call trees, stack charts, flame graphs, and more. All data filtering, zooming, slicing, and transformation actions are preserved in shareable ... | Continue reading


@hacks.mozilla.org | 3 years ago

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 ... | Continue reading


@hacks.mozilla.org | 3 years ago

Firefox 79

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 ... | Continue reading


@hacks.mozilla.org | 3 years ago

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 ... | Continue reading


@hacks.mozilla.org | 3 years ago

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. ... | Continue reading


@hacks.mozilla.org | 3 years ago

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 ... | Continue reading


@hacks.mozilla.org | 3 years ago

Mozilla WebThings Gateway Kit by OKdo

Mozilla WebThings Gateway is an open source software distribution focused on privacy, security, and interoperability. It provides a web-based user interface to monitor and control smart home devices over the ... | Continue reading


@hacks.mozilla.org | 3 years ago

Welcoming Safari to the WebExtensions Community

Safari is adopting a web-based API for browser extensions similar to Firefox’s WebExtensions API making it easy to build once and port to multiple browsers. Developers | Continue reading


@hacks.mozilla.org | 3 years ago

Implications of Rewriting a Browser Component in Rust (2019)

Since our first release in 2002, there have been 69 security bugs in Firefox’s style component. If we'd had a time machine and could have written this component in Rust from the start, 51% wouldn't have happened. That said, Rust is not foolproof. Developers still need to be aware … | Continue reading


@hacks.mozilla.org | 3 years ago

A New RegExp Engine in SpiderMonkey

Regular expressions – commonly known as RegExps – are a powerful and heavily used tool for manipulating strings in JavaScript. This post describes how we updated the RegExp engine in ... | Continue reading


@hacks.mozilla.org | 3 years ago

Fuzzing Firefox with WebIDL

Fuzzing, or fuzz testing, is an automated approach for testing the safety and stability of software. For the past 3 years, the Firefox fuzzing team has been developing a new ... | Continue reading


@hacks.mozilla.org | 3 years ago

Firefox 76: Audio worklets and other tricks

Firefox 76 delivers great new features for web platform support, such as Audio Worklets and Intl improvements, on the JavaScript side. Also, we’ve added a number of topnotch improvements to ... | Continue reading


@hacks.mozilla.org | 3 years ago

A Taste of WebGPU in Firefox

WebGPU is an emerging API, designed from the ground up within the W3C, to provide access to the graphics and computing capabilities of hardware on the web. | Continue reading


@hacks.mozilla.org | 4 years ago

Engineering code quality in Firefox

Here's an insider's look at Firefox's code quality toolchain that's been designed to manage the ongoing development and monthly releases of our desktop browser. This post explores the architecture, challenges, ... | Continue reading


@hacks.mozilla.org | 4 years ago

ES modules: A cartoon deep-dive

ES modules bring an official, standardized module system to JavaScript. With the release of Firefox 60 in May, all major browsers will support ES modules, and there is current work ... | Continue reading


@hacks.mozilla.org | 4 years ago

Firefox 75: Ambitions for April

Firefox 75 is chock full of handy new dev tooling: instant evaluation in the web console, event breakpoints for WebSockets, and more. New web platform features include HTML lazy loading ... | Continue reading


@hacks.mozilla.org | 4 years ago

Twitter Direct Message Caching and Firefox

Twitter is telling its users that their personal direct messages might be stored in Firefox’s web cache. This problem affects anyone who uses Twitter on Firefox from a shared computer ... | Continue reading


@hacks.mozilla.org | 4 years ago

Innovating on Web Monetization: Coil and Firefox Reality

An in-depth introduction to web monetization with Coil. Coil is a payments platform that doesn't really on advertising or personal data collection to support digital content creators directly. Firefox Reality ... | Continue reading


@hacks.mozilla.org | 4 years ago

Future-Proofing Firefox’s JavaScript Debugger Implementation

Optimizing the integration of Firefox Developer Tools with the SpiderMonkey JavaScript engine has resulted in many benefits, including the new asynchronous call stack tracking now available in Firefox Developer Edition. ... | Continue reading


@hacks.mozilla.org | 4 years ago

Securing Firefox with WebAssembly

Protecting the security and privacy of individuals is a central tenet of Mozilla’s mission. While we continue to make extensive use of both sandboxing and Rust in Firefox to address ... | Continue reading


@hacks.mozilla.org | 4 years ago

WebThings Gateway Goes Global

A walkthrough of what's new in the WebThings Gateway 0.11 release, which lets you build your own web things with the latest WebThings Framework libraries. The biggest change in this ... | Continue reading


@hacks.mozilla.org | 4 years ago

Firefox 73 is upon us

Today we’ve released Firefox 73, with useful additions that include CSS and JavaScript updates, and numerous DevTools improvements. We’ve added to CSS logical properties, pushed performance forward in the Console ... | Continue reading


@hacks.mozilla.org | 4 years ago

It’s the Boot for TLS 1.0 and TLS 1.1

The Transport Layer Security (TLS) protocol is the de facto means for establishing security on the Web. The newest version, TLS 1.3, improves efficiency and remedies the flaws and weaknesses ... | Continue reading


@hacks.mozilla.org | 4 years ago

The Mozilla Developer Roadshow: Asia Tour Retrospective and 2020 Plans

November 2019 was a busy month for the Mozilla Developer Roadshow, with stops in five Asian cities —Tokyo, Seoul, Taipei, Singapore, and Bangkok. Today, we’re releasing a playlist of the ... | Continue reading


@hacks.mozilla.org | 4 years ago

We Built Picture-in-Picture in Firefox Desktop with More Control over Video

A behind-the-scenes look at the evolution of the Picture-in-Picture player for the Firefox Desktop browser. This feature is now available for MacOS, Linux and Windows users. From the beginning, it's ... | Continue reading


@hacks.mozilla.org | 4 years ago

A crash course in just-in-time (JIT) compilers (2017)

This is the second part in a series on WebAssembly and what makes it fast. If you haven’t read the others, we recommend starting from the beginning. JavaScript started out ... | Continue reading


@hacks.mozilla.org | 4 years ago

Firefox 72 – our first song of 2020

2020 is upon us, folks. We'd like to wish everyone reading this a happy new year, wherever you are. As you take your first steps of the new year, figuring out what your next move is, you may find it comforting to know that there's a new Firefox release to try out! Version 72 to b … | Continue reading


@hacks.mozilla.org | 4 years ago

What Are the Top Frustrations for Web Developers? Lessons from MDN's Web DNA

The first annual MDN Developer Needs Assessment aims to represent the voices of developers and designers working on the web. We've analyzed the data provided by more than 28,000 completed ... | Continue reading


@hacks.mozilla.org | 4 years ago

Mozilla Hacks’ 10 most-read posts of 2019

Mozilla Hacks covered plenty of interesting territory in 2019. Our most popular posts introduced experiments and special projects, and described the evolution of groundbreaking platform technologies like WebAssembly and WASI. ... | Continue reading


@hacks.mozilla.org | 4 years ago

Debugging Variables with Watchpoints in Firefox 72

Have you ever wanted to know where properties on objects are read or set in your code, without having to manually add breakpoints or log statements? Watchpoints are a type ... | Continue reading


@hacks.mozilla.org | 4 years ago

Firefox 71: First Out of the Gate With Subgrid

Please welcome Firefox 71 to the stage! This time around, we have a plethora of new developer tools features including the web socket message inspector, console multi-line editor mode, log ... | Continue reading


@hacks.mozilla.org | 4 years ago

DeepSpeech 0.6: Mozilla

The Machine Learning team at Mozilla continues work on DeepSpeech, an automatic speech recognition (ASR) engine which aims to make speech recognition technology and trained models openly available to developers. ... | Continue reading


@hacks.mozilla.org | 4 years ago

Using WebAssembly from .NET with Wasmtime

How to use Wasmtime in a .NET application to load and execute WebAssembly code. | Continue reading


@hacks.mozilla.org | 4 years ago

Firefox 71

Please welcome Firefox 71 to the stage! This time around, we have a plethora of new developer tools features including the web socket message inspector, console multi-line editor mode, log ... | Continue reading


@hacks.mozilla.org | 4 years ago

Creating UI Extensions for WebThings Gateway

Version 0.10 of Mozilla’s WebThings Gateway brings support for extension-type add-ons. Released last week, this powerful new capability lets developers modify the user interface (UI) to their liking with JavaScript ... | Continue reading


@hacks.mozilla.org | 4 years ago

Multi-Value All the Wasm

Multi-value is a proposed extension to core WebAssembly that enables functions to return many values, among other things. It is also a prerequisite for Wasm interface types. Nick Fitzgerald has ... | Continue reading


@hacks.mozilla.org | 4 years ago

Thermostats, Locks and Extension Add-Ons – WebThings Gateway 0.10

Today we are releasing WebThings Gateway 0.10. This new release comes with support for thermostats and smart locks, as well as an updated add-ons system including extension add-ons, which enable ... | Continue reading


@hacks.mozilla.org | 4 years ago

Notification Permission Changes for Firefox

Earlier this year we decided to reduce the amount of unsolicited notification permission prompts people receive as they move around the web using the Firefox browser. This is an intrinsic ... | Continue reading


@hacks.mozilla.org | 4 years ago

Announcing Bytecode Alliance, Secure by-default WebAssembly

Lin Clark introduces the Bytecode Alliance, and uses Code Cartoon illustrations to share their vision of a WebAssembly ecosystem that is secure by default, fixing cracks in today’s software foundations. ... | Continue reading


@hacks.mozilla.org | 4 years ago

Auditing for Accessibility Problems with Firefox Developer Tools

In Firefox 70, the Accessibility Inspector has become an auditing facility to help identify and fix many common mistakes and practices that reduce site accessibility. In this post, Marco Zehe ... | Continue reading


@hacks.mozilla.org | 4 years ago