Instantly share code, notes, and snippets.

View fib.js
// This is the shortest fib function using generators afaik
// Will exceed the call stack eventually
function fib(n) {
const f = function* run(a = 0, b = 1) {
yield a;
yield* run(b, a + b);
}();
return Array(n).fill().map(()=>f.next().value);
}
View queryHeroku.js
const { execSync } = require('child_process');
const fs = require('fs');
// Convert a newline delimited list to an array, removing all empty values
const lineToArray = lines => lines.split('\n').filter(line => line);
const dbList = lineToArray(fs.readFileSync(process.env.LIST, 'utf8'));
// Get all apps from given org
const herokuApps = lineToArray(execSync(
View heroku_env.sh
# A collection of snippets for managing Heroku env vars
# It ain't pretty but it works
# Copy Heroku config to a local .env file
heroku config --app $HEROKU_APP | sed 's/: */=/' | tail -n +2 | tee $ENV_FILE
# Set a Heroku app's config from a local env file
# I got this oneliner from a blog somewhere, can't find it again
heroku config:set --app $HEROKU_APP $(cat .env | sed '/^$/d; /#[[:print:]]*$/d')
# Set a Heroku app's config from another Heroku app's config
View queroku.sh
# Output is ; delimited
for i in $(heroku apps -o $ORG --json | jq -r ".[] | .name"); do
# Find by value:
echo -n "$i;"; heroku config --app $i | awk '{print $2}' | grep -e "$QUERY" | tr -d '\n'; echo '';
# Find by key:
# echo -n "$i;"; heroku config:get $QUERY --app $i | tr -d '\n'; echo '';
done
View .vimrc
set nocp
execute pathogen#infect()
syntax on
filetype plugin indent on
syntax enable
set background=dark
colorscheme solarized
View vapor
for(var e = 0; e < 10; e++){
for(var i = Math.floor((Math.PI / 2) * 100); i < Math.floor((Math.PI ) * 1000); i += Math.floor((Math.PI / 2) * 100) ){
var chars = "";
//console.log(i/1000);
for(var y = Math.floor(Math.sin(i/1000) * 100); y > 0; y--){
chars += "vaporwave".split("")[((100 - y) % "vaporwave".split("").length) % "vaporwave".split("").length];
}
console.log(chars);
}
}
View .material-icons.fix
font-size: inherit;
line-height: inherit;
letter-spacing: inherit;
transform: translate(0px, 0.3ex);
View getspeed
#!/usr/bin/bash
# $1 => filename to write to
# $2 => URL to fetch
# $3 => Amount of time in-between measurements
while true; do
echo -n $(date +%H:%M:%S) | tee -a $1; echo -n ";" | tee -a $1;
echo -n $(curl -o /dev/null -s -w "%{time_total}" $2 |sed "s/\./,/") | tee -a $1; echo "" | tee -a $1;
sleep $3;