Skip to content

Instantly share code, notes, and snippets.

View coyotebush's full-sized avatar

Corey Ford coyotebush

View GitHub Profile
#!/usr/bin/python
"""
Merge bank transaction fees into the main transaction in GnuCash.
This script searches a given account for "fee" transactions with a certain
description. It then tries to find the corresponding "real" transaction, adds
the fee amount to the real transaction, and deletes the fee transaction.
Assumptions: "fee" transactions come (not necessarily consecutively) after
@coyotebush
coyotebush / falling.c
Created April 13, 2014 15:49
My submissions to KTH Challenge 2014
#include <stdio.h>
int main() {
int D, n1, n2;
scanf("%d", &D);
for (n1 = 0; n1 < D; n1++)
for (n2 = 0; n2 < n1; n2++)
if ((n1 + n2) * (n1 - n2) == D) {
printf("%d %d\n", n2, n1);
return 0;
#!/usr/bin/env python
import struct
import sys
import binascii
# def str2bytes(string):
# return "".join("\\x" + "{0:02x}".format(ord(x)) for x in string)
def compare(bs, ks, tag=None):
if bs != ks:
@coyotebush
coyotebush / foss.tex
Created October 31, 2014 06:31
A five-minute introduction to the free software movement
\documentclass[14pt]{beamer}
\usepackage{lmodern}
\usepackage{textcomp}
\usepackage{moresize}
\usetheme{Berkeley}
\beamertemplatenavigationsymbolsempty
\renewcommand{\arraystretch}{1.2}

Keybase proof

I hereby claim:

  • I am coyotebush on github.
  • I am coyotebush (https://keybase.io/coyotebush) on keybase.
  • I have a public key whose fingerprint is 8AE8 3D54 29C7 2B78 54C0 A274 F745 EA21 9F68 D026

To claim this, I am signing this object:

(define-syntax (sdo stx)
(syntax-case stx (in-list)
[(sdo ([name <- comp] ...) final)
(foldr (lambda (n c next) #`(bind #,c (lambda (#,n) #,next)))
#'final
(syntax->list #'(name ...))
(syntax->list #'(comp ...)))]))
{-# LANGUAGE ExistentialQuantification, ImpredicativeTypes, MultiParamTypeClasses, FlexibleInstances #-}
module Topics (topics) where
import XMonad
import XMonad.StackSet
import XMonad.Layout.Grid
import XMonad.Layout.PerWorkspace
import XMonad.Layout.Tabbed
data LayoutBox a = forall l. LayoutClass l a => LB (l a)
@coyotebush
coyotebush / C027_mdm_or_eth.cpp
Created May 27, 2015 04:48
switch between cellular modem and ethernet on u-blox C027
// Include in your project:
// https://developer.mbed.org/teams/ublox/code/C027_Support/
// plus, ONLY when compiling without CELLULAR_NETWORK:
// https://developer.mbed.org/users/mbed_official/code/EthernetInterface/
// https://developer.mbed.org/users/mbed_official/code/mbed-rtos/
#include "mbed.h"
// ...
#define CELLULAR_NETWORK 1
import Data.List
import qualified Data.Map as Map
type WordMap = Map.Map String [Int]
wordsByLine _ [] = Map.empty
wordsByLine n (s:ss) = Map.unionWith (++) (Map.fromList [(w, [n]) | w <- nub $ words s])
(wordsByLine (n + 1) ss)
printWords = mapM_ (putStrLn . formatWord) . Map.toList
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
int main () {
printf("1: %s\n", getenv("PWD"));
setenv("PWD", "/etc", 1);
printf("2: %s\n", getenv("PWD"));
execl("/usr/bin/printenv", "/usr/bin/printenv", "PWD", NULL);
}