Skip to content

Instantly share code, notes, and snippets.

View jessedearing's full-sized avatar

Jesse Dearing jessedearing

View GitHub Profile
@jessedearing
jessedearing / gist:2351836
Created April 10, 2012 14:44 — forked from twoism-dev/gist:1183437
Create self-signed SSL certificate for Nginx
#!/bin/bash
echo "Generating an SSL private key to sign your certificate..."
openssl genrsa -des3 -out myssl.key 1024
echo "Generating a Certificate Signing Request..."
openssl req -new -key myssl.key -out myssl.csr
echo "Removing passphrase from key (for nginx)..."
cp myssl.key myssl.key.org
openssl rsa -in myssl.key.org -out myssl.key
@jessedearing
jessedearing / resume.json
Last active December 19, 2023 19:42
resume.json
{
"basics": {
"name": "Jesse Dearing",
"label": "Experienced Platform Builder",
"image": "https://jesse.dev/images/avatar-2019-05-31.png",
"email": "me@jesse.dev",
"website": "https://jesse.dev",
"summary": "Bringing over a decade of experience in both creating and running software, I seek to build platforms that make it easy for engineers to deploy software, store data, and monitor it in production.",
"location": {
"city": "Portland",
@jessedearing
jessedearing / 0-README.md
Last active November 14, 2023 15:02
@sadserver's tweets in fortune file format

Description

This is all of @sadserver's tweets packaged in a file ready to be converted into a .dat file for the fortune program.

Installing

  1. Install fortune if your distro doesn't already have it.
  2. Convert this into a fortune file run strfile -c % sadserver_tweets sadserver_tweets.dat
  3. Copy the files into your fortune directory cp sadserver_tweets sadserver_tweets.dat /usr/local/share/games/fortunes. Note that I'm on OS X so the file path reflects that. Linux is going to be something like /usr/share/games/fortunes.
  4. Add a line to your shell's profile/rc file. I.e. fortune sadserver_tweets
  5. Laugh/cry when you log into your desktop/servers.
@jessedearing
jessedearing / partner_spec.rb
Created September 6, 2011 14:45
Generate a random EIN
number = lambda { return Forgery::Basic.number(:at_least => 0, :at_most => 9).to_s }
ein = "#{Forgery::Basic.number(:at_least => 1, :at_most => 9).to_s}#{number.call}-"
7.times { ein += number.call }
@jessedearing
jessedearing / vim cheatsheet.md
Last active April 1, 2022 18:05
Vim Cheatsheet

#Vim Cheat Sheet

  • gqip - Reformats paragraph to textwidth
  • gq - Reformats selection
  • :Tab /= - Equally spaces based on the = symbol (requires Tabular vim plugin)
  • :setf language - Changes current language
  • :set language=language - Changes current language
  • <C-a> - Increments the number under the cursor
  • <C-x> - Decrements the number under the cursor
  • ~ - Toggles case and moves to next character in normal mode
@jessedearing
jessedearing / cleanup.sh
Created April 12, 2012 17:48 — forked from mdp/cleanup.sh
Git branch cleanup
#!/bin/bash
# This must be run from master
git checkout master
# Update our list of remotes
git fetch
git remote prune origin
# Remove local fully merged branches
git branch --merged master | grep -v 'master$' | xargs git branch -d
# Show remote fully merged branches
#!/usr/bin/env python3
import base64
import json
from kubernetes import config, client, dynamic
from cryptography import x509
from cryptography.hazmat.backends import default_backend
config.load_kube_config()
dc = dynamic.DynamicClient(client=client.ApiClient())
@jessedearing
jessedearing / profile.go
Created January 5, 2017 23:39
Have go dump a stack trace on USR1
package main
import (
"os"
"os/signal"
"runtime/pprof"
"syscall"
)
func main() {
#!/usr/bin/env python3
import base64
import argparse
from datetime import datetime, timedelta
from cryptography import x509
from cryptography.hazmat.backends import default_backend
from kubernetes import client, config
config.load_kube_config()
var querystring = require('querystring');
var http = require('http');
var util = require('util');
exports.process = function(message, sayCallback) {
if(message.indexOf('generate meme') !== -1) {
var params = message.split(' ');
if(exports.types[params[2]]) {
var linesRegex = new RegExp(params[2] + " (.*) / (.*)");
var lines = linesRegex.exec(message);