Skip to content

Instantly share code, notes, and snippets.

Darien DHager

Block or report user

Report or block DHager

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View steam_screenshot_import.py
from datetime import datetime
from os import path
import sys
import shutil
from PIL import Image
__author__ = 'Darien Hager'
class SteamScreenImport:
@DHager
DHager / openssl_rc4_poc.py
Created Aug 4, 2016
An experiment to try to reproduce part of the "openssl" command line tool's behavior through Python. See blog post: http://technofovea.com/blog/archives/1054
View openssl_rc4_poc.py
#!/usr/bin/python
import sys
import itertools
import binascii
import StringIO
from Crypto.Hash import SHA, MD5
from Crypto.Cipher import AES, ARC4
from Crypto import Random
@DHager
DHager / aoc_day3.py
Created Dec 3, 2015
Advent of Code Day 3
View aoc_day3.py
from collections import Counter
class Santa:
def __init__(self):
self.position = [0,0]
self.path = [tuple(self.position)]
def move(self, char):
@DHager
DHager / coredump.php
Created Dec 3, 2015
Tries to cause a core-dump so that you can test your PHP/Apache/OS configuration to make sure they are being saved
View coredump.php
<?php
header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
ob_end_flush();
$pid = getmypid();
$secs = 10;
$cmd = "kill -3 $pid";
@DHager
DHager / day2.py
Created Dec 2, 2015
Advent of Code Day 2
View day2.py
#http://adventofcode.com/day/2
from itertools import combinations
import operator
def wrapNeeded(dims):
sides = combinations(dims,2)
halfAreas = map(lambda (a,b): a*b, sides)
return sum(halfAreas)*2 + min(halfAreas)
View lockfile_check.php
#!/usr/bin/env php
<?php
/**
* If composer.json references a project that has a git directory in the vendor
* folder, and that depdencency is set to track the "latest" of a branch, then
* try to validate that the lockfile-version hasn't been outpaced.
*/
class GitUtils{
@DHager
DHager / transcribed_html5_video.html
Last active Apr 30, 2019
Something I whipped up for a Seattle Startup Weekend event, provides a "transcript" of a video based on its closed-captioning data, and allows you to use the text to seek in the video.
View transcribed_html5_video.html
<html>
<head>
<script type="text/javascript" src="jquery-1.11.0.js"></script>
<style>
#transcript{
background-color:#F0F0F0;
min-height:50px;
padding:5px;
}
#transcript span.active {
View prepare-commit-msg
#!/bin/bash
branchPath=$(git symbolic-ref -q HEAD) #Somthing like refs/heads/myBranchName
branchName=${branchPath##*/} #Get text behind the last / of the branch path
if [[ $branchName =~ tickety([[:digit:]]+) ]]; then
bnum=${BASH_REMATCH[1]};
heading="TICKETY-$bnum \/\/";
else
heading="($branchName) ";
@DHager
DHager / reddit_bc2_tags.user.js
Created Jun 18, 2011
User-tagger for Bad Company 2 on Reddit
View reddit_bc2_tags.user.js
// ==UserScript==
// @name BC2 Subreddit user info
// @author Darien Hager
// @namespace http://technofovea.com/
// @version 1.0.0
// @description Provides extra information inside the Bad Company 2 subreddit
// @include http://www.reddit.com/r/badcompany2/*
// @include http://reddit.com/r/badcompany2/*
// ==/UserScript==
@DHager
DHager / OverridablePropertiesConfiguration.java
Created Jun 17, 2011
Overrides behavior on Apache commons-configuration so that the property-file include mechanism "overwrites" older values
View OverridablePropertiesConfiguration.java
package com.technofovea.springtest;
import java.io.File;
import java.lang.reflect.Array;
import java.net.URL;
import java.util.Collection;
import java.util.Iterator;
import org.apache.commons.configuration.Configuration;
import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.configuration.PropertiesConfiguration;
You can’t perform that action at this time.