Welcome to issue 4 of JavaScript Weekly. This week has mostly been one of ice, snow and Gran Turismo 5 for me, rather than work, but the JavaScript world never sleeps and there's a lot of great stuff to share with you this week!

This week's top news

Firebug 1.6.0 Released—
While not solely a JavaScript tool, Firebug is a popular Firefox extension that makes the life of many JavaScript developers a lot easier. Not only has the 1.6.0 release has been made more stable, but a lot of new, minor features have been added, including many improvements to the 'Script' panel.

Let's Make a JavaScript Framework: Free eBook—
'Let's Make a Framework' is a free e-book put together by Alex Young of JSDaily. It's formed from a 10 month series of 40 posts all about how to make your own jQuery-esque JavaScript framework from scratch and is available in PDF, EPUB, and Mobi/Kindle formats.

The HTML5 Adventure Calendar 2010—
The HTML5 Adventure Calendar is an advent calendar counting down the days to Christmas with a handy HTML5 and JavaScript demo or link each day.

A Simple Linked Data and JavaScript Tutorial—
Ric Roberts of DailyJS presents a short tutorial on how to consume Linked Data using JavaScript. 'Linked Data' is a term that refers to semantically interrelated datasets on the Web.

When Canvas doesn't cut it: Raphael.js—
Benjamin van der Veen gives a tour of Raphael.js, the SVG-based JavaScript drawing library. He gives it a big thumbs up for its advantages in being vector based, rather than pixel based like Canvas. It's a lightweight introduction, though, so only dig into this if you're new to Raphael.

Keeping a node.js server up with Forever—
node.js is growing in popularity for developing Web-facing apps and services in JavaScript, but keeping a node.js app running persistently is a common sticking point. Charlie Robbins demonstrates how to use a tool called 'Forever' to keep things on track.

Node.js Roadmap - A 48 Minute Talk by Ryan Dahl—
Ryan Dahl, the creator of node.js, gave a talk at YUIConf on the current and future states of the Node.js project. It's 48 minutes long but will bring you right up to speed with node.js and Dahl's plans for the framework.

Brendan Eich on the ECMAScript committee process—
Brendan Eich, the creator of JavaScript and CTO of Mozilla, describes the technical committee process around the development and standardization of ECMAScript (JavaScript's formal parent standard/language).

Interesting new libraries and code

Head.JS: Non-Blocking Parallel Script Loading—
Head.JS has made a big splash on the Web this week. It promises to solve a number of problems with choosing where to load scripts in your HTML files. In essence, it loads scripts in parallel without blocking your page and then runs them in the correct order.

depthJS: Kinect + Chrome + the Web—
DepthJS is a browser extension (currently for Chrome only) that allows the Microsoft Kinect (a new gesture based device) to talk to any Web page. It provides the low-level raw access to the Kinect as well as high-level hand gesture events to simplify development.

JavaScript Feature Detection with has.js—
has.js tests the browser environment to discover if the browser supports any given feature. has.js includes a large and growing number of tests covering things like ECMAScript 5, HTML5, CSS, and XHR feature support.

CamanJS: Javascript Image Manipulation—
CamanJS is a (Ca)nvas (man)ipulation library written in JavaScript. It provides image manipulation features client-side using an easily extended interface.

2 bonus goodies

jQuery Tips and Tricks - 28 Links—
A page on Stack Overflow with 28 links to various high quality jQuery tutorials and tips. Basically a grab-bag of links if you have the time and want to learn something new.

Video preview of a WebGL-powered 3D RPG—
WebGL is still at least a year from being a viable and widely available technology but having powerful 3D features available directly in the browser is appealing, especially for game developers. This YouTube video demonstrates a 3D RPG that's currently under development using WebGL and JavaScript.