Skip to content

Instantly share code, notes, and snippets.

View bobpoekert's full-sized avatar
🗿
.

Bob Poekert bobpoekert

🗿
.
View GitHub Profile
@bobpoekert
bobpoekert / gist:648354
Created October 27, 2010 03:07
Justin.tv Javascript Api Example
player = jtv_api.new_player(document.getElementById('video_container'), {
width:'100%',
height:'100%',
custom:true,
consumer_key:'yjw6J88EzQ2kCj8NhBXA',
events : {
stream_lost : play_random,
video_not_found : play_random,
}
});
@bobpoekert
bobpoekert / gist:673274
Created November 11, 2010 21:57
node tail
var tail = function(fname, onData) {
fs.open(fname, 'a+', function(err, fd) {
puts('fd:'+fd);
if (err) {
puts('error!: '+err);
setTimeout(function(){
tail(fname, onData);
}, 10);
} else {
puts('allocating buffer');
var tail = function(fname, onData, ender) {
fs.open(fname, 'a+', function(err, fd) {
if (err) {
puts('error!: '+err);
if (ender(fd, 0) !== false) {
setTimeout(function(){
tail(fname, onData);
}, 10);
}
} else {
var tail = function(fname, onData, ender) {
fs.open(fname, 'a+', function(err, fd) {
if (err) {
puts('tail error: '+err);
if (ender(fd, 0) !== false) {
setTimeout(function(){
tail(fname, onData);
}, 10);
}
} else {
@bobpoekert
bobpoekert / after.py
Created May 13, 2011 06:24
The @after decorator
from twisted.internet.defer import Deferred
def noop(*args):
return args
class proxy(object):
def __init__(self, fn):
self.defer = Deferred()
self.fn = fn
@bobpoekert
bobpoekert / twisted.py
Created May 13, 2011 06:27
twisted Twisted
def doThing(important, information):
return dataDependency(important, information).addCallback(_doThing, important, information)
def _doThing(data, important, information):
...
@after(dataDependency)
def doThing(data, important, information):
...
@bobpoekert
bobpoekert / streamcount.py
Created May 13, 2011 06:55
stream count
from twisted.web.client import getPage
import json
@after(getPage, key=lambda channel: "http://api.justin.tv/api/stream/list.json?channel=%s" % channel)
def viewer_count(response, channel):
data = json.loads(response)
return data[0]['stream_count']
@after(getFromDatabase)
@after(getFromWeb)
def got_data(from_database, from_web):
...
@bobpoekert
bobpoekert / saw-chant.ck
Created June 25, 2011 16:18
My first Chuck instrument
MidiIn min;
MidiMsg msg;
if (!min.open(0)) me.exit();
SinOsc s => Gain g => DelayL d => dac;
s => Gain g2 => dac;
d => Gain g3 => d;
15::ms => d.delay;
0.1 => g.gain;