Fun with code (since 2006)

From microphone to .WAV to server

01.22.15 Posted in JavaScript by

I blogged recently about capturing the audio from the Microphone with Web Audio and¬†saving it as a .wav file. Some people asked me about saving the file on the server, I have to admit I did not have the time to look into this at that time, but it turns out, I had to write […]


Intel 8080 CPU emulation in JavaScript

09.08.14 Posted in JavaScript by

This week end, I wanted to try a real world project to play more with TypeScript. Why TypeScript? Because I wanted to leverage a few ES6 features but also type checking. Note that I did not use strong typing, but just relied on the inference of types provided by the TypeScript compiler. A few years […]


A JavaScript refresh

09.07.14 Posted in JavaScript by

¬† Versions Assembly language of the web No compiling Tools REPL Getting started A dynamically typed language Variables and scope Type conversions Runtime exceptions Primitive and composite datatypes Boolean Number Object and properties Almost everything as an object Null and undefined Loops Array Iterator Date Function Context of execution Prototype, the good old friend Closure […]


From microphone to .WAV with: getUserMedia and Web Audio

09.06.14 Posted in JavaScript by

Update: The new MediaStream recording specification is aiming at solving this use case through a much simpler API. Follow the conversations on the mailing list. A few years ago, I wrote a little ActionScript 3 library called MicRecorder, which allowed you to record the microphone input and export it to a .WAV file. Very simple, […]


Concurrency in JavaScript

09.05.14 Posted in JavaScript by

Just like with Flash, JavaScript code runs by default on the UI thread, and any expensive computation will usually affect the UI responsiveness. As you may know, at 60 fps, you have around 16ms (1000ms/60) per frame to do what you have to do (computations, rendering and other misc logic). If you exceed that budget, […]


ByteArray.org
Fun with code since 2006.