xcode-select --install/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew updatebrew install postgresbrew install postgisbrew services start postgrescreatedb paperstormpsql
Using the PostGIS extension on a PostgreSQL database with Dokku
docker pull mdillon/postgis:latest
export POSTGRES_IMAGE="mdillon/postgis"
export POSTGRES_IMAGE_VERSION="latest"
dokku postgres:create my-postgis-dbnpm i k-d-treeconst kd = require('k-d-tree')
const data = new Array(1000)
.fill()
.map(() => ({
type: "Point",| #!/bin/bash | |
| echo "Compositing files and ramping up video framerate" | |
| echo "================================================" | |
| rm -rf render && mkdir render | |
| for file in *.mov; do | |
| # Ramp up video framerate, add audio | |
| ffmpeg \ |
| # Quick and dirty script for streaming a video file to Twitch (as if it were live) | |
| # Requirements: ffmpeg (http://www.ffmpeg.org) | |
| # Copy-paste the function and call it in your command line | |
| # Or add the function to ~/.bash_profile, ~/.zshrc, ..etc. | |
| # Usage: | |
| # twitch STREAM_KEY FILEPATH | |
| # Example: |
| import math | |
| from bigfloat import * | |
| class LazyCartesianProduct: | |
| def __init__(self, sets, context): | |
| self.sets = sets | |
| self.context = context | |
| self.divs = [] | |
| self.mods = [] | |
| self.maxSize = BigFloat.exact(1) |
| #!/bin/bash | |
| ### | |
| ### my-script — does one thing well | |
| ### | |
| ### Usage: | |
| ### my-script <input> <output> | |
| ### | |
| ### Options: | |
| ### <input> Input file to read. | |
| ### <output> Output file to write. Use '-' for stdout. |
| function gitignore() { | |
| TAGS="${@}" | |
| TAGS="${TAGS/mac/macos}" | |
| GITIGNORE_IO_URL="https://www.toptal.com/developers/gitignore/api/${TAGS// /,}" | |
| GITIGNORE_FILE="$(pwd)/.gitignore" | |
| echo "--> Fetching: $GITIGNORE_IO_URL" | |
| echo "--> Writing: $GITIGNORE_FILE" | |
| curl -fsSL "$GITIGNORE_IO_URL" >> "$GITIGNORE_FILE" | |
| } |
| // Simulates try/catch statements wrapping async functions in (nested) object | |
| // Returns copy of original object with basic promise-rejection handling for async functions using .catch | |
| // Saves the time of writing try/catch statements in every single async function | |
| const trycatch = obj => Object.keys(obj) | |
| .reduce((acc, curr) => ({ ...acc, [curr]: obj[curr] instanceof Function | |
| ? (...args) => obj[curr](...args).catch(::console.error) | |
| : trycatch(obj[curr]) }), {}) | |