Skip to content

Instantly share code, notes, and snippets.

View bradfordcp's full-sized avatar

Christopher Bradford bradfordcp

View GitHub Profile
@bradfordcp
bradfordcp / Fortune Growler.rb
Created February 8, 2010 06:31
Fortune growler
#! /usr/bin/ruby
require 'rubygems'
require 'ruby-growl'
msg = `/opt/local/bin/fortune`
g = Growl.new('localhost', 'Fortune Growler', ['Fortune'], nil, "GrowlP4ss");
g.notify 'Fortune', 'Fortune Growler', msg
@bradfordcp
bradfordcp / Syns2Syms.java
Created September 2, 2010 19:12
Converts a WordNet prolog file into a flat file useful for Solr synonym matching.
/**
* Based off of the Lucene prolog parser in the wordnet contrib package within the
* main Lucene project. It has been modified to remove the Lucene bits and generate
* a synonyms.txt file suitable for consumption by Solr. The idea was mentioned in
* a sidebar of the book Solr 1.4 Enterprise Search Server by Eric Pugh.
*
* @see <a href="http://lucene.apache.org/java/2_3_2/lucene-sandbox/index.html#WordNet/Synonyms">Lucene Sandbox WordNet page</a>
* @see <a href="http://svn.apache.org/repos/asf/lucene/dev/trunk/lucene/contrib/wordnet/">SVN Repository of the WordNet contrib</a>
* @see <a href="https://www.packtpub.com/solr-1-4-enterprise-search-server/book">Solr 1.4 Enterprise Search Server Book</a>
*/
@bradfordcp
bradfordcp / xkcd_screensaver.rb
Created September 2, 2010 20:37
Generate a screensaver for your Nook with the contents of the current XKCD RSS feed
#!/usr/bin/ruby
#
# Generate a screensaver for your Nook with the contents of the current XKCD RSS feed
# http://xkcd.com/rss.xml
#
# Requirements:
# * Hpricot
# Optional:
# * RMagick
#
@bradfordcp
bradfordcp / pre-commit
Created February 10, 2011 15:17
Git pre-commit hook to generate documentation and add it to the commit, may be places within .git/hooks
#!/bin/sh
#
# Regenerates documentaion and adds it to the commite
#
# To enable this hook, rename this file to "pre-commit".
echo
echo "Regenerating Documentation"
echo
rake doc:generate
echo
@bradfordcp
bradfordcp / parser.js
Created May 10, 2011 13:38
Converts the json version of the olson timezone database into MySQL tables. Here we have scoped the directories we are searching to certain continents, that logic may be removed in favor of just passing the root directory into process_dir().
#! /usr/bin/env node
// Require the filesystem library
var fs = require('fs');
// Connect to MySQL
var Client = require('mysql').Client, client = new Client();
client.user = 'rails';
client.connect();
client.query('USE scratch');
@bradfordcp
bradfordcp / pre-commit
Created May 24, 2011 18:21
Pre-commit git hook to regenerate documentation and add it to the commit
inm-bradfordcp-mbp:some_folder bradfordcp$ cat .git/hooks/pre-commit
#!/bin/sh
#
# Regenerates documentation and adds it to the commit
#
echo
echo "Regenerating Documentation"
echo
rake doc:generate
echo
@bradfordcp
bradfordcp / proxy.php
Created May 25, 2011 22:30
PHP Proxy to a specified domain, used for retrieving .atom feeds from shopify and avoid cross-domain issues.
<?php
// Location where we are storing the cache
$CACHE_DIRECTORY = dirname(dirname(__FILE__)) ."/statics";
// Set the lifetime of cached pages
$CACHE_LIFETIME = (24 * 60 * 60); // 24 Hours * 60 Minutes (per hour) * 60 Seconds (per minute)
// Grab the URL to proxy, strip out the host as a security measure
$url = null;
@bradfordcp
bradfordcp / ruby-enterprise.spec
Created June 9, 2011 21:26 — forked from axisofentropy/ruby-enterprise.spec
Ruby Enterprise Edition RPM SPEC file. Does not include fast threading or libtcmalloc.
# Package Maintainer: Increment phusion_release to match latest release available
%define phusion_release 2011.03
%define _prefix /opt/ruby-enterprise
Summary: Ruby Enterprise Edition (Release %{phusion_release})
Name: ruby-enterprise
Vendor: Phusion.nl <info@phusion.nl>
Packager: Christopher Bradford <bradfordcp@gmail.com>
Version: 1.8.7
Release: 7%{?dist}
@bradfordcp
bradfordcp / gist:1068665
Created July 7, 2011 00:30
iPhone: Retrieve a list of all available fonts
for (NSString *family in [UIFont familyNames]) {
NSLog(@"Family: %@", family);
for (NSString *font in [UIFont fontNamesForFamilyName:family]) {
NSLog(@" - %@", font);
}
NSLog(@"");
}
@bradfordcp
bradfordcp / blog_pusher.rb
Created July 13, 2011 22:40
Retrieve nodes from a D6 installation and push them to the services module on D7
#! /usr/bin/env ruby
require 'rubygems'
require 'uri'
require 'net/http'
require 'json'
require 'pp'
require 'mysql'
SERVER = "http://drupal.example.com/api/blog"