π18π€£12π€6β€4
π Issue 35 / 12.09.2023
π How to Run a GitHub Gist with npx
Nate Tarasβ recent Creating an npx tool inspired Kelly to send in this simple example of a remotely executable
KELLY FOX
πΉASIDES:
- Node 16 is now EOL (End of Life) meaning it will get no more updates. Why? Node's release schedule here.
- Yagiz Nizipli of Node's performance team invites anyone interested in helping work on Node's performance to come along to one of their Zoom meetings. He also notes that π¦ no-one on the team is paid for their work in response to criticism and claims to the contrary on Twitter/X this week.
- Yagiz also began a discussion about removing primordials from Node. An 'internal use only' feature, primordials provide a way for core modules to get access to truly clean, underlying objects in Node that aren't being polluted by other modules or third party code.
Β©οΈNODE.JS WEEKLY
π How to Run a GitHub Gist with npx
Nate Tarasβ recent Creating an npx tool inspired Kelly to send in this simple example of a remotely executable
npx
gist. This is a clever idea that works because GitHub gists can automatically act as git repositories.KELLY FOX
πΉASIDES:
- Node 16 is now EOL (End of Life) meaning it will get no more updates. Why? Node's release schedule here.
- Yagiz Nizipli of Node's performance team invites anyone interested in helping work on Node's performance to come along to one of their Zoom meetings. He also notes that π¦ no-one on the team is paid for their work in response to criticism and claims to the contrary on Twitter/X this week.
- Yagiz also began a discussion about removing primordials from Node. An 'internal use only' feature, primordials provide a way for core modules to get access to truly clean, underlying objects in Node that aren't being polluted by other modules or third party code.
Β©οΈNODE.JS WEEKLY
π6β€2π₯1π€1
What is the output?
Anonymous Quiz
38%
function, string
31%
function, Hello World!, undefined
31%
function, undefined
π€24π12π€£5π2π₯2
ES6-ES10 Cheat Sheet for Developers
ES6, ES7, ES8, ES9, and ES10 (also known as ES2015, ES2016, ES2017, ES2018, ES2019, and ES2020) are different versions of the ECMAScript language standard, which is the specification for scripting languages that JavaScript is based on.
Robert E. Hilton
β¨ Send this to the person who you think is the best at ECMAScript specifications!
ES6, ES7, ES8, ES9, and ES10 (also known as ES2015, ES2016, ES2017, ES2018, ES2019, and ES2020) are different versions of the ECMAScript language standard, which is the specification for scripting languages that JavaScript is based on.
Robert E. Hilton
β¨ Send this to the person who you think is the best at ECMAScript specifications!
π₯18β€5π4
What is the output?
Anonymous Quiz
28%
[0, 1, 2, 3, 4]
23%
[NaN, NaN, NaN, NaN, NaN]
13%
[empty x 5]
36%
[1, 2, 3, 4, 5]
π₯13π€£5π3β€2π€1
π Issue 36 / 15.09.2023
π Bun 1.0: Is It a Toolkit? Is It a Runtime? It's Both
Youβve used Node, youβve seen Deno, now Bun has grown up too. Itβs a performance-oriented server-side JS runtime built atop JavaScriptCore and makes the unique claim of being βa drop-in replacement for Node.js.β It includes extras like transpilation, bundling, package management, and a Jest-compatible test runner too. The post goes into a lot of depth, but we enjoyed the Bun teamβs βΆοΈ 10 minute introductory video. Does Bun deliver on all its promises yet? No. Is it promising? Yes.
JARRED SUMNER ET AL.
π Bun 1.0: Is It a Toolkit? Is It a Runtime? It's Both
Youβve used Node, youβve seen Deno, now Bun has grown up too. Itβs a performance-oriented server-side JS runtime built atop JavaScriptCore and makes the unique claim of being βa drop-in replacement for Node.js.β It includes extras like transpilation, bundling, package management, and a Jest-compatible test runner too. The post goes into a lot of depth, but we enjoyed the Bun teamβs βΆοΈ 10 minute introductory video. Does Bun deliver on all its promises yet? No. Is it promising? Yes.
JARRED SUMNER ET AL.
π Why Does every() Return true for Empty Arrays?
Nicholas wondered how a condition can possibly be satisfied when there arenβt any values to test, so he dug into the language specs to understand the logic.
NICHOLAS C. ZAKAS
Β©οΈJS WEEKLY
Nicholas wondered how a condition can possibly be satisfied when there arenβt any values to test, so he dug into the language specs to understand the logic.
NICHOLAS C. ZAKAS
Β©οΈJS WEEKLY
π₯8
What is the output?
Anonymous Quiz
47%
Hello world!, Goodbye world!
24%
Hello world!, undefined
17%
Hello world!, Error
12%
Error
π19π€£17π€4π3
β‘οΈ IN BRIEF:
- π ViteConf is taking place this October 5-6. It's free and online.
- The August 2023 build of VS Code has just been released and includes improvements to the JS debugger including WebAssembly module decompilation, as well as Move to File and Inline Variable refactorings.
- Linus Groh is working on a JavaScript engine in Zig called Kiesel, mostly as a learning project, but it's passing 25% of test262 after four months of effort.
- While searching for something else, I encountered this JavaScript tutorial from 1996 that's still online. Amazingly, most of it still works fine today.
- Esteemed Microsoft code archaeologist Raymond Chen looks at how freestanding JS functions using this can be mistaken for a constructor by VS Codeβs static analyzer.
π RELEASES:
MikroORM 5.8 β Powerful Node.js ORM.
Reason 3.10 β Write code in OCaml, but for the JS ecosystem.
Happy DOM 11.0 β A JS implementation of a web browser sans UI.
Node.js v20.6.1 (Current)
- π ViteConf is taking place this October 5-6. It's free and online.
- The August 2023 build of VS Code has just been released and includes improvements to the JS debugger including WebAssembly module decompilation, as well as Move to File and Inline Variable refactorings.
- Linus Groh is working on a JavaScript engine in Zig called Kiesel, mostly as a learning project, but it's passing 25% of test262 after four months of effort.
- While searching for something else, I encountered this JavaScript tutorial from 1996 that's still online. Amazingly, most of it still works fine today.
- Esteemed Microsoft code archaeologist Raymond Chen looks at how freestanding JS functions using this can be mistaken for a constructor by VS Codeβs static analyzer.
π RELEASES:
MikroORM 5.8 β Powerful Node.js ORM.
Reason 3.10 β Write code in OCaml, but for the JS ecosystem.
Happy DOM 11.0 β A JS implementation of a web browser sans UI.
Node.js v20.6.1 (Current)
π6β€2π₯2
π€24π16π€£2π1
Benchmarking 24 CSV Parsing Approaches
Certainly the most extensive Node.js CSV parsing benchmark Iβve seen. The author, himself the creator of the uDSV CSV parsing library, wanted to contest the common βlightning fast performanceβ claims of other CSV parsing libaries. Unsurprisingly, ΞΌDSV tends to win in all but a couple of cases.
LEON SOROKIN
Certainly the most extensive Node.js CSV parsing benchmark Iβve seen. The author, himself the creator of the uDSV CSV parsing library, wanted to contest the common βlightning fast performanceβ claims of other CSV parsing libaries. Unsurprisingly, ΞΌDSV tends to win in all but a couple of cases.
LEON SOROKIN
π6
π€22π€£9π6π6