This should setup python environment on Ubuntu 20 (Ubuntu 20.04.6 LTS)
Instructions: https://pip.pypa.io/en/stable/installation/#get-pip-py
- Download get-pip.pyfile:wget https://bootstrap.pypa.io/get-pip.py 
- Install distutils:
| import type { KeysOfTuple, UnionHelper } from './UnionHelper.ts'; | |
| type Assert<T extends true> = T; | |
| type IsEqual<A, B> = | |
| (<T>() => T extends A ? 1 : 2) extends <T>() => T extends B ? 1 : 2 | |
| ? true | |
| : false; | |
| type Keys1 = KeysOfTuple<[{ a: string; b: string }, { z: string }]>; | 
| ## Migrating Homebrew from Intel to M1 | |
| ## You can copy and paste into the Terminal | |
| ## Go to home directory | |
| cd ; | |
| ## Create list of installed Intel packages | |
| brew bundle dump ; | 
| /** | |
| * Usage: | |
| * <Input customValidity="your validation message" /> // add constraint | |
| * or | |
| * <Input customValidity="" /> // remove constraint | |
| * or | |
| * <Input defaultCustomValidity="you message" /> // initial validationMessage | |
| */ | |
| export function Input({ | |
| defaultCustomValidity, | 
| import { useId } from 'react'; | |
| function Example() { | |
| const id = useId(); | |
| return ( | |
| <div style={{ position: 'relative' }}> | |
| <button | |
| // @ts-ignore TODO: Update to [email protected] (currently tested on ^18.2.0) | |
| popovertarget={id} | 
| # Editor files # | |
| ################ | |
| .vim | |
| .vscode | |
| .idea | |
| # Compiled source # | |
| ################### | |
| *.com | |
| *.class | 
This should setup python environment on Ubuntu 20 (Ubuntu 20.04.6 LTS)
Instructions: https://pip.pypa.io/en/stable/installation/#get-pip-py
get-pip.py file:
wget https://bootstrap.pypa.io/get-pip.pyThe Reverse-DNS convention implies that the value should start with a reversed DNS domain name controlled by the author of the applicatoin.
The domain name should be followed by a subdomain or a product name. Example: com.example.MyProductName.
| /** | |
| * As of writing, Promise.any is Stage 4 (Finished) | |
| * This code is just a fun reminder of how Promise.any can be implemented using Promise.all | |
| * Proposal: https://github.com/tc39/proposal-promise-any | |
| */ | |
| class AggregateErrorFallback extends Error { | |
| errors: Array<Error>; | |
| constructor(message: string, errors: Array<Error>) { | |
| super(message); | 
| function JsSpinner() { | |
| const ref = useRef<HTMLDivElement | null>(null); | |
| useEffect(() => { | |
| let deg = 0; | |
| let id = 0; | |
| function rotate() { | |
| id = requestAnimationFrame(() => { | |
| ref.current.style.transform = `rotate(${(deg += 2) % 360}deg)`; | |
| rotate(); | |
| }); | 
| // just a reminder of a nice API for a <Script /> component, | |
| // reference: https://nextjs.org/docs/basic-features/script#executing-code-after-mounting-onready | |
| import { useRef } from 'react' | |
| import Script from 'next/script' | |
| export function Home() { | |
| const mapRef = useRef() | |
| return ( | |
| <> |