Skip to content

Instantly share code, notes, and snippets.

John Tyree johntyree

View GitHub Profile
View long-history.sh
#!/bin/bash
# Don't put duplicate lines in the history
export HISTCONTROL=ignoredups
# Store a lot history entries in a file for grep-age
shopt -s histappend
export HISTFILE=~/long_history
export HISTFILESIZE=50000
View getip.c
#include <stdio.h>
#include <unistd.h>
#include <string.h> /* for strncpy */
#include <sys/types.h>
#include <sys/socket.h>
#include <sys/ioctl.h>
#include <netinet/in.h>
#include <net/if.h>
#include <arpa/inet.h>
View upload-to-bitsurge.sh
#! /bin/bash
USER=tyree
FTPPASS=
HOST=john.bitsurge.net
SUBDIR="public"
if [[ "$1" == "-p" ]]; then
shift
SUBDIR="private"
@johntyree
johntyree / composable.py
Created Apr 18, 2014
Composable functions... kind of
View composable.py
#!/usr/bin/env python
# coding: utf8
# GistID: 11062517
from __future__ import division
import functools
import inspect
class composable(object):
@johntyree
johntyree / optionModel.hs
Created Feb 13, 2014
Monte Carlo options pricing in Haskell
View optionModel.hs
{-# OPTIONS_GHC -funbox-strict-fields #-}
{-# OPTIONS_GHC -fexcess-precision #-}
{-# OPTIONS_GHC -Odph #-}
{-# OPTIONS_GHC -O2 #-}
-- {-# LANGUAGE BangPatterns #-}
-- {-# LANGUAGE DoAndIfThenElse #-}
{-# LANGUAGE RankNTypes #-}
-- GistID: 8970316
@johntyree
johntyree / win_notify.py
Last active Aug 29, 2015
inotify substitute for Windows
View win_notify.py
#!/usr/bin/env python
# coding: utf8
# GistID: 8949940
from os.path import abspath, expanduser
def on_modify(path, callback):
""" Watch a path for changes by write time, recursively.
View big_O.py
#!/usr/bin/env python2
# GistID: 8910125
from numpy import array, log, linspace
from matplotlib import pyplot as plt
# http://en.wikipedia.org/wiki/Big_o_notation#Family_of_Bachmann.E2.80.93Landau_notations # noqa
n = linspace(1, 100)
fn = log(n) / log(5) # log_5(n)
gn = log(n) / log(3) # log_3(n)
@johntyree
johntyree / scree_plot.py
Created Feb 3, 2014
Create a scree plot showing eigval contribution
View scree_plot.py
#!/usr/bin/env python
# coding: utf8
# GistID: 8785541
from __future__ import division
import numpy as np
import matplotlib
import matplotlib.pyplot as plt
@johntyree
johntyree / typed_functions.py
Created Jan 24, 2014
A not so great hack to check types at runtime.
View typed_functions.py
#!/usr/bin/env python
# coding: utf8
# GistID: 8605391
""" Add type checking decorators to functions.
@in_types(int, str)
@out_types(str)
def mul(a, b):
return a * b
You can’t perform that action at this time.