Skip to content

Instantly share code, notes, and snippets.

View zph's full-sized avatar

Zander Hill zph

View GitHub Profile
@JoshCheek
JoshCheek / interface_assertions.rb
Created November 11, 2015 00:43
Potential interface assertions
class Mongoid
def some_mongoid_method
end
end
module SomeInterface
def common_method1(arg1)
end
def common_method2
end
@henrik
henrik / poolboy_demo.ex
Last active December 16, 2020 13:56 — forked from sasa1977/poolboy_demo.ex
Example of using Poolboy in Elixir to limit concurrency (e.g. of HTTP requests).
defmodule HttpRequester do
use GenServer
def start_link(_) do
GenServer.start_link(__MODULE__, nil, [])
end
def fetch(server, url) do
# Don't use cast: http://blog.elixirsips.com/2014/07/16/errata-dont-use-cast-in-a-poolboy-transaction/
timeout_ms = 10_000
@henrik
henrik / deploying_phoenix_on_dokku.md
Last active February 24, 2025 17:33
Deploying Elixir's Phoenix Framework on Dokku.

Deploying Phoenix on Dokku

Worked 2015-09-08 for Phoenix 1.0.1 on Dokku 0.3.25.

These instructions assume you've set up Dokku. If not, go find a tutorial for that part. My notes for setting it up on Digital Ocean.

On your local machine, in the app's repo

Create a Dokku app:

@vmbrasseur
vmbrasseur / negotiation.markdown
Last active April 24, 2018 17:20
Negotiation Articles/Resources
rdr pass proto tcp from any to any port {80,20559} -> 127.0.0.1 port 20559
anchor "250.PowFirewall/*"
@stevenocchipinti
stevenocchipinti / json_logger.rb
Created May 14, 2015 14:14
Logging in JSON with Ruby/Rails
require 'logger'
require 'time'
require 'json'
require 'forwardable'
# A simple subclass that writes JSON logs
class JsonLogger < Logger
def format_message(severity, timestamp, progname, msg)
msg = {message: msg} unless msg.is_a? Hash
log = {timestamp: timestamp.iso8601, severity: severity}.merge(msg)
@samwgoldman
samwgoldman / example.js
Last active April 3, 2021 22:20
Pure, stateless, type-checked React components with Immutable.js and Flow
/* @flow */
var React = require("react")
var Immutable = require("immutable")
// In order to use any type as props, including Immutable objects, we
// wrap our prop type as the sole "data" key passed as props.
type Component<P> = ReactClass<{},{ data: P },{}>
type Element = ReactElement<any, any, any>
@colindean
colindean / afp.conf
Created April 4, 2015 15:59
afp and netatalk config for Time Machine backups
[Global]
uam path = /usr/local/etc/netatalk/uams
max connections = 256
tcprcvbuf = 262144
tcpsndbuf = 262144
server quantum = 262144
zeroconf = yes
guest account = guest
uam list = uams_passwd.so uams_gss.so uams_guest.so uams_dhx2_pam.so
veto files = /.AppleDB/.AppleDouble/.AppleDesktop/:2eDS_Store/Network Trash Folder/Temporary Items/TheVolumeSettingsFolder/.@__thumb/.@__desc/:2e*/.@__qini/.Qsync/.upload_cache/.qsync/.qsync_sn/
@davidblewett
davidblewett / lp-ssh-add.sh
Last active December 12, 2021 11:12
Allow storage of SSH private keys in LastPass, and use lpass CLI to retrieve and load into ssh-agent. The general idea is to store the private key armored ASCII in an "SSH Key" Secure Note, in a specific folder (i.e.: "Secure Notes\SSH" ).
#!/bin/sh
#
# Import all SSH keys from LP
#
PREFIX=~
SSH_ASKPASS=$PREFIX/bin/lp-askpass.sh
export SSH_ASKPASS
# This is needed to force ssh-add to honor our SSH_ASKPASS.
DISPLAY=foo
export DISPLAY
@denji
denji / golang-tls.md
Last active November 21, 2025 23:40 — forked from spikebike/client.go
Simple Golang HTTPS/TLS Examples
Generate private key (.key)
# Key considerations for algorithm "RSA" ≥ 2048-bit
openssl genrsa -out server.key 2048

# Key considerations for algorithm "ECDSA" ≥ secp384r1
# List ECDSA the supported curves (openssl ecparam -list_curves)