Sindre Sorhus Profile picture
Oct 26, 2020 12 tweets 4 min read Read on X
Node.js 15 makes 7 of my packages obsolete. This is a good thing. 👌
1. github.com/sindresorhus/d…

You can await setTimeout now:

const {setTimeout} = require('timers/promises');

await setTimeout(1000);
6. github.com/sindresorhus/l…
7. github.com/sindresorhus/h…

Node.js now throws on unhandled Promise rejections.
Node.js 15 highlights: nodejs.medium.com/node-js-v15-0-…
I think it's great that we now get a larger "standard library". The benefit is that many of these things have been proven in user-land/production for years before being added, so we already know they are useful and work.
Some more things I'd like to see in Node.js:
- Fetch
- Web Streams
- Web Crypto
- Globbing
And in JS:
- Promisification of existing APIs
- UUID generation
- github.com/sindresorhus/p… (with concurrency option)
- Escape regex method
- Better Unicode-aware string handling, like github.com/sindresorhus/s…
- BigDecimal
To be clear, I have no intention of deprecating any of the mentioned packages for a long time. They will be maintained for many years to come. But when projects can target Node.js 16 (15 is not LTS), they can replace these with native which results in a smaller dependency tree.

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Sindre Sorhus

Sindre Sorhus Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @sindresorhus

Jun 20, 2023
New App

Day Progress — Keep track of the time remaining in your day, right in the menu bar

sindresorhus.com/day-progress

Image
Image
Use it as a visual cue to stay motivated and manage time more efficiently.
If it takes off, I will bring it to iOS and watchOS too.
Read 7 tweets
Oct 9, 2019
I've been playing with SwiftUI for the past two days and it's really awesome and also really unfinished and buggy. It's especially unfinished for macOS development (no surprise there). I'm super excited about its future though.
I've been working on a simple dynamic list view where you can reorder, rename, and delete items, and I already have 10+ Feedback Assistant reports I need to file and a lot of open questions.
I had to keep the search part of it in AppKit as SwiftUI could not handle searching thousands of entries. It took seconds between typing each character.

I wanted double-tap to edit, but adding a tap gesture makes reordering not work.
Read 15 tweets
Mar 25, 2019
Let's take a moment to appreciate how awesome programming is; You can single-handedly build almost anything you can imagine. It's like a superpower. A superpower anyone can acquire.
The only constraints are perseverance and time.
A lot of people brush off programming as being something unachievable, something magic, or just not feeling smart enough. Many things in life seem too hard before you learn them. That's not a good excuse to not even try.
Read 7 tweets
May 29, 2018
React: Make the simple things hard and the hard things simple
React still feels like the prototype of something that one day could be really good. Some things needed to get there (highly IMHO): Async rendering (coming), better components (only one way to do it, no ES6 class components, decoupled state and lifecycle hooks), ...
... better intop with browser controls (especially forms, so buggy atm), JSX 2 with implicit `do` expressions, reduced boilerplate for lifecycle hooks, less ways to shoot yourself in the foot.
Read 6 tweets
Dec 10, 2017
Node.js' insistence on being familiar to Unix people has hurt its developer experience more than they realize. Even after this many years, the docs are still subpar. Docs for `fs.mkdir` only says: `Asynchronous mkdir(2)` You shouldn't have to be Unix graybeard to use Node.js.
`mkdir(2)` does link to the Linux kernel man pages, but you shouldn't have to read Linux kernel docs to use Node.js.
When Apple has better API docs something is seriously wrong: developer.apple.com/documentation/… And a more intuitive method name.
Read 7 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us!

:(