#269 β€” January 3, 2019

Read on the Web

Node Weekly

As everyone settles into the new year, we're revisiting what happened in the Node world in 2018 as well as the top articles and projects we covered in 2018.

Thanks for supporting us in 2018 and we look forward to keeping you up to date this year!
β€” Peter Cooper, editor

P.S. Node 8 is now only in maintenance mode (as of January 1).

πŸ“…Β Node in 2018: Month by Month

January β€” 106 npm packages briefly went missing, npm got new package naming rules.

February β€” we found out what 539 devs love and hate about Node, npm 5.7 came out with a new npm ci command.

March β€” the awesome node collection passed 600 items, npmjs.com redesigned.

April β€” Node 10 and npm 6 came out, AWS Lambda gained support for Node 8.10 (and thus async/await), Node got a bug bounty program.

May β€” the npm repository turned into a teapot, we got to see an initial implementation of threading support for Node.

Redis Data Types in 2019 β€” An overview of all data structures provided in the latest version of Redis

RedisGreen sponsor

June β€” Ryan Dahl shared 10 regrets about Node.

July β€” an npm module was hijacked causing issues, npm Inc. joined ECMA and TC39, npm.community launched, Node passed 1 billion downloads.

August β€” the npm repository gained new security features, V8 and Node experienced the HashWick vulnerability.

September β€” we discussed getting rid of node_modules, V8 got a snazzy new site.

October β€” the Node.js and JS foundations wanted to merge, Node 11 came out complete with V8 7.0.

November β€” a popular npm package was hijacked by a hacker, prompting more discussions about package management.

December β€” we learnt about 19 ways to become a better Node developer in 2019.

πŸ’» Jobs

100+ Node.js and JavaScript Roles on hackajob β€” Upload your projects from GitHub and we'll do the rest. Find a role based on your skills, average salary Β£70k.

hackajob

πŸ“˜ Top Tutorials of 2018

Rethinking JavaScript Test Coverage β€” Recent versions of V8 offer a native code coverage reporting feature and here’s how it works with Node.

Benjamin Coe (npm, Inc.)

A Practical Intro to Worker Threads in Node 10.5 β€” Node can now work with multiple threads, in a sense.

Fernando Doglio

Achieve Sub-Millisecond Latency in Your MySQL/PostgreSQL Environment β€” Join this webinar to learn how to build low latency applications with open source databases.

Google Cloud sponsor

A Checklist of 23 Node.js Security Best Practices

Yoni Goldberg, Kyle Martin and Bruno Scheufler

Using Async Iteration Natively in Node β€” How async iteration over streams work in Node 10.x.

Dr. Axel Rauschmayer

A Set of Best Practices for JavaScript Projects

Elsewhen

How to Use Docker for Node.js Development β€” β€œThere are a couple aspects of Node.js that make using Docker for development somewhat difficult. The primary difficulties come from dependency differences based on environment and a long running server process during development.”

Cody Craven

An Overview of Buffers in Node.js β€” Buffers provide a handy way to work with streams of binary data but they can be a cause of confusion - this article aims to address that.

Valeri Karpov

πŸ”§ Top Code and Tools of 2018

Enquirer: Elegant, Intuitive and User-Friendly Terminal Prompts β€” Fast, promises and async/await-based prompts for your command line apps. As well as simple text entry, it supports prompts like password entry, surveys, lists, multi select, etc.

Enquirer

Next Generation Package Management with Tink β€” tink (originally β€˜crux’) is a new, experimental JavaScript package manager from the folks at npm, Inc, that aims to provoke new thoughts on how package management should be handled.

The npm Blog

A Code-Based Node.js Cheatsheet β€” Lots of quick-fire code snippets in a single source file, covering global objects, console methods, fs methods, exports, process handling, and more.

Julien Le Coupanec

N|solid for Aws Lambda: Low-Impact Monitoring for Serverless Node.js Apps

NodeSource sponsor

ndb: An Improved Debugging Experience for Node β€” Run your Node code with ndb and get extra, powerful Node debugging features right in Chrome’s DevTools including editing files and setting breakpoints before modules are loaded.

Google Chrome Labs

Hyper 2: A Terminal Built on Web Technologies β€” Hyper took a few steps forward with a much faster rendering engine, an online plugin/theme catalog, and improved hyperlink support. GitHub repo.

ZEIT

Carlo: Chrome as a 'Web Rendering Surface' for Node Apps β€” Uses Puppeteer to communicate between a Node app and an existing, locally installed Chrome instance.

Google Chrome Labs