Skip to content

Instantly share code, notes, and snippets.

Nathan Youngman nathany

Block or report user

Report or block nathany

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
nathany / gist:175670
Created Aug 26, 2009
pivot table example in SQL Server 2005
View gist:175670
select PT.FacID, f1.FacName, [1] as QtyAlloc, [-1] as QtyUsed, [1] + [-1] as QtyRemain
select f1.FacID, sign(f1.Quantity) as Sgn, f1.Quantity
from FacCredits f1
) as q1
for q1.Sgn in ([1], [-1])
View gist:188207
/* Pure CSS tool tips from CSS Mastery, originally by Eric Meyer? With fix for IE, see below */
a.tooltip {
position: relative;
a.tooltip span {
display: none;
nathany / gist:190435
Created Sep 21, 2009
based on hello from Stuart Halloway's book
View gist:190435
;; reference to a set (unique) visitors
(def visitors (ref #{}))
(defn hello
"Writes hello message to *out*. Calls you by username.
Knows if you have been here before."
([] (hello "world")) ; with no arguments
;; deref visitors, call username to see if it's there
nathany / gist:190489
Created Sep 21, 2009
index-of-any, based on Stuart Halloway's Programming Clojure book, but with attempts in Python and Ruby (of course regex would be another, string-only, option)
View gist:190489
// Returns the index of the first character contained in searchChars
// From Apache Commons Lang,
public static int indexOfAny(String str, char[] searchChars) {
if (isEmpty(str) || ArrayUtils.isEmpty(searchChars)) {
return -1;
for (int i = 0; i < str.length(); i++) {
char ch = str.charAt(i);
for (int j = 0; j < searchChars.length; j++) {
if (searchChars[j] == ch) {
nathany / landing.rb
Created Oct 12, 2009
Heroku is great to host single-page "sites" for all those domains I'm not using.
View landing.rb
require 'rubygems'
require 'sinatra'
require 'haml'
Domains = %w{gemsmith vogsphere youngman seraph intercessory cyaonline significantwhitespace 14159265358979}
DefaultDomain = 'default'
# what domain does the host contain?
# put this here because helpers are a pain to test!
def view_for_domain(host)
nathany / gist:211991
Created Oct 16, 2009 — forked from kylefox/gist:211989
Git prompt for Bash
View gist:211991
# Shows the [branch], and an * if there are uncommitted changes. Example:
# ~/projects/my_project[master*]:
function parse_git_dirty {
[[ $(git status 2> /dev/null | tail -n1) != "nothing to commit (working directory clean)" ]] && echo "*"
function parse_git_branch {
git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e "s/* \(.*\)/[\1$(parse_git_dirty)]/"
nathany / edit.html.haml
Created Dec 3, 2009
starting on some RJS-like helpers for jQuery and CKEditor
View edit.html.haml
- javascript_tag do
= after_ready do
= add_ckeditor_plugins(:snippet)
nathany / show SQL in irb console
Created Mar 11, 2010
Rails SQL logging from console
View show SQL in irb console
ActiveRecord::Base.connection.instance_variable_set :@logger,
nathany /
Created Mar 30, 2010
benchmark Pygments from Python
# benchmark Pygments from Python
from pygments import highlight
from pygments.lexers import RubyLexer
from pygments.formatters import HtmlFormatter
import timeit
# run it once to initialize
View liveid-decode.cfm
function decodeToken(stoken, crypt_key) {
token_bytes = BinaryDecode(URLDecode(stoken), "base64");
Arrays = CreateObject("java", "java.util.Arrays");
iv = Arrays.copyOf(token_bytes, 16);
crypted = Arrays.copyOfRange(token_bytes, 16, ArrayLen(token_bytes));
decoded_token = DecryptBinary(crypted, crypt_key, "AES/CBC/PKCS5Padding", iv);
return ToString(decoded_token);
You can’t perform that action at this time.