---
title: "This week's JavaScript news, issue 276"
publication: "JavaScript Weekly"
issue: 276
published_at: "2016-03-25"
canonical_url: "https://javascriptweekly.com/issues/276"
---

This week's JavaScript news, issue 276

This week's JavaScript news — [Read this e-mail on the Web](http://javascriptweekly.com/issues/276)

JavaScript WeeklyIssue 276 — March 25, 2016[Intro to Immutable.js and Functional Programming Concepts](https://auth0.com/blog/2016/03/23/intro-to-immutable-js/) Learn about functional data structures and their uses in this overview of Facebook’s popular Immutable.js library.  Sebastián Peyrott 
[The Rise of Async JavaScript [30m video\]](https://www.youtube.com/watch?v=QtgR94Q2pt4) Asynchronous control flow is a core part of JavaScript development. Jeremy Fairbank dives into new async functions landing in future versions of JavaScript and investigates the use cases and “gotchas” along the way.  Jeremy Fairbank 
[How An Irate Developer Briefly Broke JavaScript](http://www.theverge.com/2016/3/24/11300840/how-an-irate-developer-briefly-broke-javascript) See [this week’s Node Weekly](http://nodeweekly.com/issues/130) for more on this, but essentially a developer unpublished an npm module causing a cascade of issues due to it being a common dependency.  The Verge 
[![Gigster\](https://copm.s3.amazonaws.com/8b614a14.png)](https://gigster.com/blog/top-developers-love-fixed-pricing/?utm_source=jsweek&utm_medium=email&utm_campaign=03252016_content_jsweek_54_38)[Why Top Developers Love Gigster’s Fixed-Priced Projects](https://gigster.com/blog/top-developers-love-fixed-pricing/?utm_source=jsweek&utm_medium=email&utm_campaign=03252016_content_jsweek_54_38)There’s no shortage of options for developer talent. Learn why moonlighters and pro-freelances prefer fixed-priced projects over haggling with clients over hourly time-sheets. There’s no need to be sitting in any office you don’t love. GigsterSponsor
[Snapback Cache: A Client-Side Page Cache for jQuery](https://github.com/highrisehq/snapback_cache) Useful for situations where you have an infinite scroll-style feed so that a click-and-back situation returns users to the right place.  Highrise 
[A List of Emulators Written in JavaScript](https://github.com/fcambus/jsemu) Pretty extensive. Covers retro systems, CPUs, calculators, and more.  Frederic Cambus 
[25 JavaScript Developers Share the Best Ways to Learn JS](https://psdtowp.net/learn-javascript.html) Insights, tips, plus a lot of recommended books and courses.  PSDtoWP 
[How to Make Unit Testing Complex Apps Easy with Sinon.js](http://www.sitepoint.com/sinon-tutorial-javascript-testing-mocks-spies-stubs/) Sinon helps eliminate complexity in tests by allowing you to easily create so called ‘test-doubles’.  Jani Hartikainen 
[BuckleScript: A JavaScript Backend for the OCaml Compiler](http://bloomberg.github.io/bucklescript/) Write type-safe, high performance OCaml code, and deploy the generated JS.  Bloomberg Finance 


Jobs

- [Senior Front End JavaScript Engineer](https://boards.greenhouse.io/smartling/jobs/120842?t=p68wvf#.VtWxX5OLRTY)Creating sophisticated, global technology takes an incredible team of innovators. Because we help smart brands execute global strategy, we look for smart people. We hire tech-savvy, passionate people who truly care about connecting people around the world. Apply Now. Smartling
- [JavaScript Developer](http://app.jobvite.com/m?30hsShwn)Ever received an email that said: "Thank you, your product has changed our lives forever." We do every day. We need team members who love making that happen, via a top-quality browser app experience. Ramsey Solutions, A Dave Ramsey Company

In Brief

[It's Official: JS is the Most Commonly Used Programming Language on Earth](http://arc.applause.com/2016/03/22/javascript-is-the-worlds-dominant-programming-language/) news 
Well, if you extrapolate from Stack Overflow’s userbase anyway..
Dan Rowinski

[Node.js on Google App Engine Goes Beta](https://cloudplatform.googleblog.com/2016/03/Node.js-on-Google-App-Engine-goes-beta.html) news node
Google Cloud Platform Blog

[BrazilJS 2016 (Aug 26-27) Call for Papers](https://docs.google.com/forms/d/1uqqg2H-nq_zePrvhqTKeMUD--CpuoQS2gW-KXOQlILM/viewform) news 
CFP closes April 30.

[The Hot Interview to Watch from Fluent Conference 2016](http://wijmo.com/angular2/?utm_source=JavaScript%20weekly&utm_medium=sponsored.link&utm_content=3.24.Brad.Angular.video&utm_campaign=Angular) news video 
Google’s Brad Green on using the power of components in Angular 2 to create reusable application blocks.
WijmoSponsor

[How to Write Atom Packages Using Vanilla JavaScript](http://www.sitepoint.com/write-atom-packages-using-vanilla-javascript/) tutorial
Moritz Kröger

[Creating Your First Angular 2 Component](https://toddmotto.com/creating-your-first-angular-2-component) tutorial 
A beginner tutorial for getting started with Angular 2 components.
Todd Motto

[Getting Started with Node.js: A Tutorial](https://blog.risingstack.com/node-hero-tutorial-getting-started-with-node-js/) tutorial node 
If you still haven’t given it a go ;-) Then subscribe to [Node Weekly](http://nodeweekly.com/).
RisingStack Engineering

[Template-Driven Forms in Angular 2](http://blog.thoughtram.io/angular/2016/03/21/template-driven-forms-in-angular-2.html) tutorial
Pascal Precht

[What's The Difference Between (NaN != NaN) and (NaN !== NaN)?](http://stackoverflow.com/q/34261938/3951) tutorial
Stack Overflow

[Getting an SPA to Load the Fastest Possible Way & How Webpack Helps](http://rosenfeld.herokuapp.com/en/articles/2016-02-29-getting-an-spa-to-load-the-fastest-possible-way-and-how-webpack-can-help-you) tutorial
Rodrigo Rosenfeld Rosas

[Writing Testable Code in JavaScript](https://www.toptal.com/javascript/writing-testable-code-in-javascript) tutorial
Joshua Mock

[Building Chrome Extensions in React+Redux](http://blog.goguardian.com/nerds/chrome-extensions-in-react) tutorial video 
Tyler Shaddix demonstrates how to use React and Redux to build Google Chrome extensions.
Tyler Shaddix

['If you write JavaScript tools or libraries, you should bundle your code before publishing.'](https://medium.com/@Rich_Harris/how-to-not-break-the-internet-with-this-one-weird-trick-e3e2d57fee28) opinion
Rich Harris

[Advantages of Angular Templates](http://angularjs.blogspot.com/2016/03/why-angular-renders-components-with.html) opinion
Victor Savkin

[When Should I Use TypeScript?](https://medium.com/@alexewerlof/when-should-i-use-typescript-311cb5fe801b) opinion
Alex Ewerlöf

[Is left-pad Indicative of a Fragile JavaScript Ecosystem?](http://developer.telerik.com/featured/left-pad-indicative-fragile-javascript-ecosystem/) opinion node
Telerik Developer Network

[The Need for Multi-Platform npm Packages](http://www.2ality.com/2016/03/multi-platform-npm-packages.html) opinion
Dr. Axel Rauschmayer

[Alpha Preview of Angular Material 2](http://angularjs.blogspot.com/2016/03/angular-material-2-alpha-preview.html) tools 
A set of reusable Angular components that implement Google’s Material Design specification.
Google

[EventControl: jQuery Timeline Control with Support for Stacking Events](http://www.kri.gs/eventcontrol/) code
Kristoffer Gronlund

[MidiWriterJS: Multi-Track MIDI Generation from Code](http://grimmdude.github.io/MidiWriterJS/) code 
Works in both the browser and Node.
Garrett Grimm

[interact.js: Drag and Drop, Resizing & Gestures](http://interactjs.io/) code 
Supports multi-touch gestures with inertia and snapping for modern browsers.
Taye Adeyemi

[Match: A JavaScript Library to Test JSON](https://github.com/ozkxr/match) code
Oscar Menéndez

[Apply to 3,000+ Jobs in 10 Minutes & 1 Application](https://hired.com/?utm_source=newsletters&utm_medium=jsweekly&utm_term=cat-tech-java&utm_content=3kcompaniesin10min&utm_campaign=q1-16&utm_location=us) 
Top companies apply to you on Hired. Get salary and equity upfront before interviewing.
Hired.comSponsor

Curated by [Peter Cooper](http://twitter.com/peterc) and published by [Cooperpress](https://cooperpress.com/).

Like this? You may also enjoy: [FrontEnd Focus](http://frontendfocus.co/) : [Node Weekly](http://nodeweekly.com/) : [React Status](http://react.statuscode.com/)

[Stop getting JavaScript Weekly](*|UNSUB|*) : [Change email address](*|UPDATE_PROFILE|*) : [Read this issue on the Web](http://javascriptweekly.com/issues/276)

© Cooperpress Ltd. Fairfield Enterprise Centre, Lincoln Way, Louth, LN11 0LS, UK
