Someone asked in chat (paraphrased) "I am coming from synchronous online systems, and now am going to work on a queue-based system. What should I be aware of?" This is a (somewhat freely-associated) collection of thoughts, based on my experience at SoundCloud.
# When you SSH into a server for the first time it prompts you if you trust the remote server's host key | |
# To validate that they key you received is the same as the server you just logged into you can check | |
# the fingerprint of the host key on the remote server itself. | |
# Output fingerprint of system's host key | |
ssh-keygen -l -f /etc/ssh/ssh_host_ecdsa_key.pub | |
# You can fingerprint both the private and public key from a file | |
# They should both produce the same fingerprint value. | |
ssh-keygen -l -f ~/.ssh/id_ed25519.pub |
Webpack 4 automatically polyfilled many Node APIs in the browser. This was not a great system, because it could lead to surprisingly giant libraries getting pulled into your app by accident, and it gave you no control over the exact versions of the polyfills you were using.
So Webpack 5 removed this functionality. That means you need to make changes if you were relying on those polyfills. This is a quick reference for how to replace the most common patterns.
For each automatically-polyfilled node package name on the left, this shows the name of the NPM package that was used to polyfill it on the right. Under webpack 5 you can manually install these packages and use them via resolve.fallback
.
#replace "<PAT TOKEN>" with your github PAT token, tested with "Update ALL user data" PAT token. | |
curl -q https://rms-support-letter.github.io/ | grep "href" | grep "github.com" | grep -v "\/\[" | awk -F "https://github.com/" '{ print $2 }' | awk -F "\"\>" '{ print $1 }' | sed 's/\///g' | sed '/^$/d' | xargs -I USER curl -i -X PUT -H "Authorization: token <pat token here>" -H "Accept: application/vnd.github.v3+json" https://api.github.com/user/blocks/USER |
# The definition of color schemes. | |
schemes: | |
gruvbox_material_hard_dark: &gruvbox_material_hard_dark | |
primary: | |
background: '0x1d2021' | |
foreground: '0xd4be98' | |
normal: | |
black: '0x32302f' | |
red: '0xea6962' | |
green: '0xa9b665' |
# Instructions for fresh install | |
$ sh <(curl -L https://nixos.org/nix/install) --darwin-use-unencrypted-nix-store-volume --daemon | |
# reboot | |
$ source /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh | |
$ echo 'export NIX_PATH=darwin-config=$HOME/.nixpkgs/darwin-configuration.nix:$HOME/.nix-defexpr/channels${NIX_PATH:+:}$NIX_PATH' | tee -a ~/.zshrc | |
$ echo 'source $HOME/.nix-profile/etc/profile.d/hm-session-vars.sh' | tee -a ~/.zshrc | |
$ nix-channel --add https://nixos.org/channels/nixpkgs-unstable | |
$ nix-channel --add https://github.com/LnL7/nix-darwin/archive/master.tar.gz darwin | |
$ nix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager |
#!/bin/bash | |
# export LICENSE_ID="" | |
# export PASSWORD="" | |
[[ -z "$LICENSE_ID" ]] && echo "Please Set LICENSE_ID Environment Variable" && exit 1 | |
[[ -z "$PASSWORD" ]] && echo "Please Set PASSWORD Environment Variable" && exit 1 | |
b64_password=$(echo -n ${PASSWORD} | base64) |
Peter Naur's classic 1985 essay "Programming as Theory Building" argues that a program is not its source code. A program is a shared mental construct (he uses the word theory) that lives in the minds of the people who work on it. If you lose the people, you lose the program. The code is merely a written representation of the program, and it's lossy, so you can't reconstruct
Caption
/giphy #caption <insert phrase here>
/giphy #caption "<caption>" <insert search phrase here>broken
First result
/giphy #1 <insert phrase here>
Random answer to yes/no question
/giphy #8ball <insert question here>