Skip to content

Instantly share code, notes, and snippets.

View dtudury's full-sized avatar

David Tudury dtudury

  • Oakland, California, USA
View GitHub Profile
@dtudury
dtudury / smartos server traffic
Last active December 17, 2015 23:18
watch traffic on port 1443
#write traffic on port 1443 to test.txt
sudo snoop -I net1 -x0 -o test.txt port 1443
#print traffic on port 1443 verbose
sudo snoop -I net1 -x0 -v port 1443
@dtudury
dtudury / bbb
Created May 31, 2013 20:51
up and running with bbb
# install xcode from app store
# install node from nodejs.org
sudo npm install -g yo grunt-cli bower
npm install generator-bbb
npm install generator-mocha
yo bbb
@dtudury
dtudury / gist:5734395
Created June 8, 2013 07:21
make osx apps launch with decent path
sudo echo "setenv PATH /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin" > /etc/launchd.conf
/*
* lights.c
*
* Created: 6/14/2013 11:30:35 PM
* Author: dtudury
*/
#ifndef F_CPU
#define F_CPU 1000000UL // or whatever may be your frequency
#endif
@dtudury
dtudury / knob.c
Created June 25, 2013 04:35
avr-studio C code for sparkfun's LED RingCoder Breakout - RGB https://www.sparkfun.com/products/11040
/*
* knob.c
*
* Created: 6/22/2013 9:01:18 PM
* Author: dtudury
*/
#ifndef F_CPU
#define F_CPU 8000000UL // or whatever may be your frequency
#endif
@dtudury
dtudury / domainExperiment
Last active December 19, 2015 05:29
behaves differently for sync and async
/*
if I call "node experiment async":
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
I can haz world?
..c0 begin
..c0 end
....c1 begin
....c1 end
......c2 begin
......c2 end
@dtudury
dtudury / nodeCampAttack.js
Last active December 19, 2015 06:58
chance of 2 campers having the same schedule assuming that all schedules are unique but 10% of campers incorrectly follow their schedule
//git clone https://gist.github.com/5914750.git
//node 5914750/nodeCampAttack
var classes = 8;
var schedules = 1; for(var i = 2; i <= classes; i++) schedules *= i; //8!
var mistakeRate = 0.1; //10% chance that a participant doesn't follow their schedule
var hitChance = 0.5; //what we're solving for
var missChance = 1; //100% (can't collide without participants)
var participant = 1;
@dtudury
dtudury / nestedDomains.js
Created July 5, 2013 21:28
a domain experiment related to nesting
/*
* !node nestedDomains
* ---
* error caught at 1: Error: depth reached
* error caught at 2: Error: rethrow from depth 1
* error caught at 3: Error: rethrow from depth 2
* error caught at 4: Error: rethrow from depth 3
* ---
*
* this makes sense based on the implication from 4th paragraph on implicit binding
@dtudury
dtudury / commit-msg
Last active December 20, 2015 02:59
little nagging git hook to remind me to reference a JIRA ticket
#!/usr/bin/env node
//install this script from the root of the local repo with something like...
//mkdir -p .git/hooks ; curl -L https://gist.github.com/dtudury/6060115/raw > .git/hooks/commit-msg ; chmod +x .git/hooks/commit-msg
var fs = require('fs');
//0 is "node", 1 is the path to this script, 2 is the commit message
var commit = fs.readFileSync(process.argv[2]).toString();
if(!/\b[A-Z][A-Z]+-[0-9]+\b/.test(commit) && !/^Merge /.test(commit)) {
console.log("[SHAME] no JIRA issue key found in commit");
@dtudury
dtudury / gist:6149503
Created August 4, 2013 07:06
favorite JS idioms
var toBoolean = !!trueFalsy;
var isPresent = ~string.indexOf(substring);
var mSecEpoch = +new Date;