Skip to content

Instantly share code, notes, and snippets.

@hunterloftis
hunterloftis / gist:3333630
Created August 12, 2012 18:35
Attempted CASE query
-- Doesn't work (returns affiliation = null):
SELECT dating.*,
CASE WHEN dating.traditional = choices.id AND choices.cat = 'trad' THEN choices.choice END as affiliation
FROM dating, choices
LIMIT 1
-- Works:
SELECT dating.*, choices.choice as affiliation
@hunterloftis
hunterloftis / .profile
Created August 9, 2012 17:30
~/.profile (bash)
# make rbenv work
eval "$(rbenv init -)"
# set up useful alias
alias ll='ls -la'
# tell ls to be colorful
export CLICOLOR=1
export LSCOLORS=ExFxCxDxBxegedabagacad
@hunterloftis
hunterloftis / gist:3100224
Created July 12, 2012 19:11
"npm install" fails when done via a git post-receive hook, succeeds when the same user runs it via ssh
```shell
remote: npm http 304 https://registry.npmjs.org/uglify-js/1.2.5
remote: npm http 304 https://registry.npmjs.org/xmlhttprequest/1.2.2
remote: npm http 304 https://registry.npmjs.org/active-x-obfuscator/0.0.1
remote: npm http 304 https://registry.npmjs.org/ws
remote: npm ERR! git checkout master fatal: Not a git repository: '.'
remote:
remote: npm ERR! Error: `git "checkout" "master"` failed with 128
remote: npm ERR! at ChildProcess.<anonymous> (/home/prod_web1/local/lib/node_modules/npm/lib/utils/exec.js:58:20)
remote: npm ERR! at ChildProcess.emit (events.js:70:17)
@hunterloftis
hunterloftis / gist:2961179
Created June 20, 2012 17:52
mongoose minimize schema option
var Profile = new mongoose.Schema({
// ... properties all around this omitted
fixed : {
displayname: { type: String },
birthday: { type: Date }
}
}, {strict: true, minimize: false});
// ...used findOne() to retrieve `req.profile`
@hunterloftis
hunterloftis / gist:2379741
Created April 13, 2012 20:03
Remove all traces of npm
rm -rf /usr/local/{lib/node_modules,share/man/*,bin,etc}/npm* ~/.npm ~/.npmrc
@hunterloftis
hunterloftis / gist:2352042
Created April 10, 2012 15:09
joyent node.js smartmachine npm git dependency error
npm http GET https://registry.npmjs.org/express-resource/0.2.4
npm http 304 https://registry.npmjs.org/base12/0.2.9
npm http 304 https://registry.npmjs.org/handlebars/1.0.5beta
npm http 404 https://registry.npmjs.org/express/3.0.0alpha1-pre
npm ERR! Error: version not found: 3.0.0alpha1-pre : express/3.0.0alpha1-pre
npm ERR! at Request._callback (/opt/nodejs/v0.6.8/lib/node_modules/npm/lib/utils/npm-registry-client/request.js:181:12)
npm ERR! at Request.callback (/opt/nodejs/v0.6.8/lib/node_modules/npm/node_modules/request/main.js:119:22)
npm ERR! at Request.<anonymous> (/opt/nodejs/v0.6.8/lib/node_modules/npm/node_modules/request/main.js:605:16)
npm ERR! at Request.emit (events.js:67:17)
hunter:~/work/base12$ scripts/provision/provision -si 165.225.129.25 config/web.server.json
Provisioning 165.225.129.25
Using /Users/hunter/work/base12/config/web.server.json
=== Setup ===
Setting up for Joyent
Config is: { type: 'joyent', install: [ 'redis', 'mongodb', 'node' ] }
EXECUTING: ssh [email protected] 'bash -s' < /Users/hunter/work/base12/scripts/provision/joyent/setup.sh
CODE: null
@hunterloftis
hunterloftis / gist:1975048
Created March 4, 2012 22:10
simple express server
var express = require('express');
var app = express.createServer();
app.use(express.bodyParser());
app.use(app.router);
app.get('/', function(req, res) {
req.send('hello, world');
});
@hunterloftis
hunterloftis / gist:1590914
Created January 10, 2012 20:09
Simple module pattern versatility
(function(exports, $, otherLibrariesYouNeed) {
var localVariable = 'This is bound in the closure, so I will not create accidental globals.';
function PrivateFunction() {
}
function MyConstructor() {
this.property = 'something';
@hunterloftis
hunterloftis / gist:1563925
Created January 5, 2012 05:54
Templating some config files
# --- setup.sh:
...
deployer=`config_get user`
{ echo "cat <<EOFNOREALLY"
cat "$SCRIPTS/template.sh"
echo "EOFNOREALLY"
} | sh > "/tmp/templated.sh"
cat /tmp/templated.sh
...