JavaScript Articles
-
A crash course in just-in-time (JIT) compilers
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 slow, but then got faster thanks to something called the JIT. This article is about how the JIT works.
-
ES6 In Depth: Generators
ES6 In Depth is a series on new features being added to the JavaScript programming language in the 6th Edition of the ECMAScript standard, ES6 for short. I’m excited about today’s post. Today, we’re going to discuss the most magical feature in ES6. What do I mean by “magical”? For starters, this feature is so […]
-
Embedding an HTTP Web Server in Firefox OS
Nearing the end of last year, Mozilla employees were gathered together for a week of collaboration and planning. During that week, a group was formed to envision what the future of Firefox OS might be surrounding a more P2P-focused Web. In particular, we’ve been looking at harnessing technologies to collectively enable offline P2P connections such […]
-
Introducing the JavaScript Internationalization API
Firefox 29 issued half a year ago, so this post is long overdue. Nevertheless I wanted to pause for a second to discuss the Internationalization API first shipped on desktop in that release (and passing all tests!). Norbert Lindenberg wrote most of the implementation, and I reviewed it and now maintain it. (Work by Makoto […]
-
Generational Garbage Collection in Firefox
Generational garbage collection (GGC) has now been enabled in the SpiderMonkey JavaScript engine in Firefox 32. GGC is a performance optimization only, and should have no observable effects on script behavior. So what is it? What does it do? GGC is a way for the JavaScript engine to collect short-lived objects faster. Say you have […]
-
So You Wanna Build a Crowdfunding Site?
The tools to get funded by the crowd should belong to the crowd. That's why I want to show you how to roll your own crowdfunding site, in less than 300 lines of code. Everything in this tutorial is open source, and we'll only use other open-source technologies, such as Node.js, MongoDB, and Balanced Payments. […]
-
Adding cursor swipe to the Firefox OS keyboard
In this article we will take a look at how to approach adding features to a core component in the system such as the input keyboard. It turns out it is pretty easy! Before we start, take a look at this concept video from Daniel Hooper to get an idea of what we want to […]
-
Koalas to the Max – a case study
One day I was browsing reddit when I came across this peculiar link posted on it: http://www.cesmes.fi/pallo.swf The game was addictive and I loved it but I found several design elements flawed. Why did it start with four circles and not one? Why was the color split so jarring? Why was it written in flash? […]
-
speak.js: Text-to-Speech on the Web
Text-to-Speech (TTS) can make content more accessible, but there is so far no simple and universal way to do that on the web. One possible approach is shown in this demo, which is powered by speak.js, a new 100% pure JavaScript/HTML5 TTS implementation. speak.js is a port of eSpeak, an open source speech synthesizer, from […]
-
Doom on the Web
Update: We had a doubt whether this port of the Open Source Doom respected its term of use. We decided to remove it from our Website before taking an informed and definitive decision. This is a guest post written by Alon Zakai. Alon is one of the Firefox Mobile developers, and in his spare time […]