Skip to content

Instantly share code, notes, and snippets.

View cstorey's full-sized avatar

cstorey

View GitHub Profile
@ms-ati
ms-ati / 3nightclubs.rb
Created April 29, 2012 22:07
A Tale of 3 Nightclubs (ruby port)
####
## Ruby port of "A Tale of 3 Nightclubs"
##
## Based on Scala version here: https://gist.github.com/970717
##
## Demonstrates applicative validation in Ruby, inspired by the blog post:
## "An example of applicative validation in FSharpx"
## (http://bugsquash.blogspot.com/2012/03/example-of-applicative-validation-in.html)
####
@sj26
sj26 / 0-readme.md
Created May 5, 2012 05:39 — forked from burke/0-readme.md
ruby-1.9.3-p194 cumulative performance patch.

Patched ruby 1.9.3-p194 for 30% faster rails boot

What is?

This script installs a patched version of ruby 1.9.3-p194 with patches for boot-time performance improvements (#66 and #68), and runtime performance improvements (#83 and #84). It also includes the new backported GC from ruby-trunk.

Huge thanks to funny-falcon for the performance patches.

@msackman
msackman / QueueingConsumerCoDel.java
Created May 11, 2012 10:00
QueueingConsumer extended with the CoDel algorithm
// The contents of this file are subject to the Mozilla Public License
// Version 1.1 (the "License"); you may not use this file except in
// compliance with the License. You may obtain a copy of the License
// at http://www.mozilla.org/MPL/
//
// Software distributed under the License is distributed on an "AS IS"
// basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
// the License for the specific language governing rights and
// limitations under the License.
//
@charles-dyfis-net
charles-dyfis-net / gist:2912188
Created June 11, 2012 19:38
Trawling Clojure's thread-local frames
(ns thread-utils)
(def ^:private frame-prev-field (doto (.getDeclaredField clojure.lang.Var$Frame "prev") (.setAccessible true)))
(def ^:private bindings-field (doto (.getDeclaredField clojure.lang.Var$Frame "bindings") (.setAccessible true)))
(def ^:private tbox-val-field (doto (.getDeclaredField clojure.lang.Var$TBox "val") (.setAccessible true)))
(def ^:private thread-locals-field (doto (.getDeclaredField Thread "threadLocals") (.setAccessible true)))
(def ^:private thread-local-map-field (doto (.getDeclaredField java.lang.ThreadLocal$ThreadLocalMap "table") (.setAccessible true)))
(def ^:private entry-value-field (doto (.getDeclaredField java.lang.ThreadLocal$ThreadLocalMap$Entry "value") (.setAccessible true)))
(defn all-threads []
@domenic
domenic / promise-retryer.js
Last active September 16, 2023 02:43
Generalized promise retryer
"use strict";
// `f` is assumed to sporadically fail with `TemporaryNetworkError` instances.
// If one of those happens, we want to retry until it doesn't.
// If `f` fails with something else, then we should re-throw: we don't know how to handle that, and it's a
// sign something went wrong. Since `f` is a good promise-returning function, it only ever fulfills or rejects;
// it has no synchronous behavior (e.g. throwing).
function dontGiveUp(f) {
return f().then(
undefined, // pass through success
@mtnygard
mtnygard / gist:3306775
Created August 9, 2012 18:20
Retriable functions, written in CPS
(ns planck-server-nio.common
(:require (clojure.algo [monads :as m])))
(defn fail [x] (fn [c] nil))
(defn attempt [[a t f]]
(fn [c]
(if-let [result (f)]
result
(c [(inc a) t f]))))
@piscisaureus
piscisaureus / pr.md
Created August 13, 2012 16:12
Checkout github pull requests locally

Locate the section for your github remote in the .git/config file. It looks like this:

[remote "origin"]
	fetch = +refs/heads/*:refs/remotes/origin/*
	url = [email protected]:joyent/node.git

Now add the line fetch = +refs/pull/*/head:refs/remotes/origin/pr/* to this section. Obviously, change the github url to match your project's URL. It ends up looking like this:

@soffes
soffes / gist:3428401
Created August 22, 2012 19:00
Recruiter Reply

Thanks you for your inquiry.

I am only looking for contract work. My rate is one thousand dollars an hour ($1,000/hr). I charge ten thousand dollars ($10,000) for referrals.

If this does not fit the positions you are looking for, please remove me from your list.

Thanks,

Sam

@jwieringa
jwieringa / gist:3588181
Created September 1, 2012 21:37
Ripped from Specification by Example

Step 1

Identify what the business goal is for building software.

Business goal

Increase repeat sales to existing customers by 50% over the next 12 months

Step 2

From the business goal, derive the scope of the feature(s)

@puffnfresh
puffnfresh / overloading.js
Created September 6, 2012 00:55
Operator overloading in JavaScript
// This file shows a hack to achieve operator overloading in
// JavaScript. I have defined 3 different operators:
//
// >= = monadic bind
// >> = kleisli composition
// > = functor map
// * = applicative apply
// + = semigroup append
//
// Head straight to the bottom to see example usages.