More on this book
Kindle Notes & Highlights
The truth is that; our software is always an approximation of reality, and we would probably have more success in trying to get something working sooner and with reasonable complexity, instead of trying to create near-perfect software with huge effort and tons of code to maintain.
In fact, in ES2015, const does not indicate that the assigned value will be constant, but that the binding with the value is constant.
Use blocking API only when they don't affect the ability of the application to serve concurrent requests.
Losing control of asynchronous code in JavaScript is undoubtedly easy.
What is a promise? In very simple terms, promise is an abstraction that allows a function to return an object called promise, which represents the eventual result of an asynchronous operation.
There is a motto in the community that says "stream all the things!" and this alone should be enough to describe the role of streams in Node.js.
A proxy is an object that controls access to another object, called a subject.
The two most important properties to balance when building modules are cohesion and coupling
Cohesion: This is a measure of the correlation between the functionalities of a component.