Skip to content

Instantly share code, notes, and snippets.

View wprater's full-sized avatar
💾
Building

Will Prater wprater

💾
Building
View GitHub Profile
@wprater
wprater / php-cgi.rb
Created May 25, 2012 15:49 — forked from daz/php-cgi.rb
Homebrew Formula for PHP 5.4.3 as php-cgi (for nginx, etc.)
# Homebrew Formula for PHP 5.4.3 as php-cgi (for nginx, etc.)
require 'formula'
class PhpCgi <Formula
@url='http://www.php.net/get/php-5.4.3.tar.gz/from/a/mirror'
@version='5.2.17'
@homepage='http://php.net/'
@md5='c9dccc89cc89d39e84f6e6f0cf1c8a65'
@wprater
wprater / ruby_motion.py
Created August 21, 2012 09:13
RubyMotion module for SublimeLinter bundle for Sublime Text.
from ruby import Linter
CONFIG = {
'language': 'RubyMotion',
'executable': '/Library/RubyMotion/bin/ruby',
'lint_args': '-wc'
}
@wprater
wprater / Rakefile
Created August 22, 2012 14:08
Setup file for RubyMotion to build Cordova apps.
$:.unshift("/Library/RubyMotion/lib")
require 'motion/project'
Motion::Project::App.setup do |app|
# Use `rake config' to see complete project settings.
app.name = 'MyJavaScriptApp'
app.version = '1.0'
# My setup is a bit different, as Im building for many environements and the
# main app is written in JavaScript.
@wprater
wprater / app_delegate.rb
Created August 22, 2012 21:23
Minimal ruby files for Cordova and RubyMotion.
class AppDelegate
def init
cookieStorage = NSHTTPCookieStorage.sharedHTTPCookieStorage
cookieStorage.cookieAcceptPolicy = NSHTTPCookieAcceptPolicyAlways
CDVURLProtocol.registerURLProtocol
super
end
@wprater
wprater / resourceful.js
Created August 28, 2012 13:43
What is the preferred way to define a resourceful schema?
// Opt. 1 from resourceful Readme, examples, tests, etc.
var Creature = resourceful.define('creature', function () {
this.string('type');
};
// Opt. 2 from other Flatiron project examples
Creature = resourceful.define('creature');
Creature.property('type', String, { default: "dragon" });
@wprater
wprater / store.js
Created August 29, 2012 21:43
Is there another way to apply a filter when specifying the store through a config option.
({
xtype: 'list',
flex: 1,
store: 'localEntriesStore',
itemTpl: '{full_name}',
listeners: {
activate: function(list, opts) {
return list.getStore().filterBy(function(rec) {
return rec.get('needs_remote_sync');
});
@wprater
wprater / chart.coffee
Last active December 17, 2015 22:29 — forked from dandavison/chart.coffee
class BaseChart
accessors:
width: 100
height: 100
_margin: {}
@margin: top: 0, right: 0, bottom: 0, left: 0
# http://bost.ocks.org/mike/chart/

#How to install node.js on a Google Compute Engine instance

Start and ssh into instance

Make sure you have a Google Compute engine account, have a project created and the gcutil command line tool installed.

Since want to ssh without the gcutil tool, you need to a your ssh key to the instance in addition to the already existing google_compute_engine key (used for gcutil).

@wprater
wprater / gist:8430194
Last active January 3, 2016 07:29
scaled agngle within min bounds
var radiusEarth = 6372.796924;
var dist = 2.0;
var maxAngle = dist / radiusEarth;
var minAngle = 0.25 / radiusEarth;
var cosdif = Math.cos(maxAngle) - 1;
var fuzzScale = Math.random() * (0.999999 - minAngle) + minAngle;
var scaledDist = Math.acos(fuzzScale * cosdif + 1);
this.findById(ownerId)
// .lean()
.select('contacts')
.populate('contacts.person', 'id email avatar name nestedModel')
// FIXME feels like we should be able to get nested populations instead
// on building them inside the promise.
// .populate('contacts.person.nestedModel')
.exec()
.then(function (doc) {