Analogy of how OAuth works:
At a high level, the process is similar to sending a child home from school with a permission slip to go on a field trip. The teacher asks students if they want to go on a field trip. If they say yes, she sends them home with a paper for their parents to sign. Their parents then sign the permission slip and send the child back to school with it. Once the teacher receives the signed permission slip, the child can be taken on the field trip.
Quickly write to a file through command line:
- Replace whole file
- Append to end of file
A CSS snippet to handle nested border radius:
Heuristics for optimizing React’s performance:
- If you can solve the problem by altering component hierarchy or state, prioritize that!
- Memoization is a solid strategy only if the cost of checking pays for itself with the time you save rendering.
- Use Lazy/Suspense API to progressively load components.
- Use the Transition API (
useDeferredValue) when you’re really in a pickle (e.g something is computationally expensive, but not running it is not a choice).
console.dir() to print nested object.
keys() methods of ES6, we can create array from
n like this:
To create an array starting from
When to use
Object for records where you have a fixed and finite number of properties/fields known at author time, such as a config object or anything that is for one-time use in general.
Map for dictionaries or hash maps where you have a variable number of entries, with frequent updates, whose keys might not be known at author time, such as an event emitter.
According to benchmarks, unless the keys are strings of small integers,
Map is indeed more performant than
Object on insertion, deletion and iteration speed, and it consumes less memory than an
Object of the same size.
__dirname will resolve to the directory the executing script resides in. So if your script resides in
__dirname will resolve to
The accessibility inspector in Firefox exposes Gecko’s accessibility tree rather than information from the platform accessibility layer.
An example of the result of this is
role="button" showing up as
To check how the internal roles are mapped to platform roles, look at the source of truth.
You can inspect the X (clear all) that shows up when you type in
<input type="search" /> by enabling “Show user agent shadow DOM” in DevTools under “preferences”.