Skip to content

Instantly share code, notes, and snippets.

@keturn
keturn / ngplans.htm
Created April 8, 2011 19:04
trying to use angular
<!doctype html>
<html xmlns:ng="http://angularjs.org">
<head>
<title>all plans</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="icon" href="/s/plans/images/plans-icon.png?68f34ebf0f" />
<link rel="stylesheet" href="/s/jquery-ui-css/jquery-ui-1.8.9.css?9f6e6ea563" type="text/css" charset="utf-8"/>
<link rel="stylesheet" href="/s/jquery-ui-css/jquery-ui-1.8.9.custom.css?7ea76fa98c" type="text/css" charset="utf-8"/>
<link rel="stylesheet" type="text/css" href="/s/plans/css/plans.css?9fbd065898">
<link rel="stylesheet" type="text/css" href="/s/plans/css/datatables.css?396b174e7a" />
@keturn
keturn / loopback-latency.sh
Created August 20, 2010 22:35
use netem to add latency to loopback network traffic
#!/bin/bash
#
# Add latency to all outgoing traffic on $DEV on tcp/udp $PORT,
# in the amount of $DELAY.
#
# This is matching on both source port and destination port, which
# may hit you twice if you're accessing a local resource.
#
# To see what's currently in effect,
# tc -s qdisc show dev lo
@keturn
keturn / closure-compiler
Created August 4, 2010 23:47
convenience wrapper for closure-compiler/compiler.jar
#!/bin/bash
java -jar ~/src/closure-compiler/compiler.jar ${@/#/--js }
@keturn
keturn / selenium-ajax.py
Created July 8, 2010 23:38
getAjaxResult for python selenium
def getAjaxResult(self, func, *args):
sel = self.selenium
self.js('''\
ajaxSeleniumResult = (function (func, args) {
var result = [], funcArgs;
function storeSeleniumResult() {
result.push(window.jQuery.makeArray(arguments));
}
// assume function's last argument is a callback
args.push(storeSeleniumResult);
@keturn
keturn / warppointer.py
Created July 4, 2010 06:07
xwarppointer python script
#!/usr/bin/env python
"""Make the X cursor wrap-around.
Adapted from http://appdb.winehq.org/objectManager.php?sClass=version&iId=12599
to work around lack of relative mouse movement http://wiki.winehq.org/Bug6971
for Thief: Dark Shadows (and possibly others)
This version is a little kinder to your CPU than the shell script with
the busy-loop that starts a new process for every pointer query.
"""
@keturn
keturn / binding_methods.py
Created April 15, 2010 06:29
method or function? why explicit self
class A(object):
# method
def foo(self, x):
print self, x
# function -- defined after A is closed.
def bar(self, y):
print self, y
A.bar = bar
from django.db import models
class Top(models.Model):
_counter = 0
def __init__(self, arg):
Top._counter += 1
print "Top(%s)#__init__(<%x>, %s) called %d times" % (
self.__class__.__name__, id(self), arg, Top._counter)
@keturn
keturn / myOpenID-delegation
Created March 11, 2010 02:27
yahoo openid delegation fail
at http://openidenabled.com/python-openid/trunk/examples/consumer/finish/:
openid <http://specs.openid.net/auth/2.0>
mode = id_res
identity = http://keturn.myopenid.com/
claimed_id = http://keturn.net/
assoc_handle = {HMAC-SHA1}{4b9852bd}{CDlRdQ==}
op_endpoint = http://www.myopenid.com/server
response_nonce = 2010-03-11T02:32:02ZUpcemj
return_to = http://openidenabled.com/python-openid/trunk/examples/consumer/finish/?janrain_nonce=2010-03-11T02%3A27%3A41ZbQoFal
sig = dJMjI3wsbpnhvgfCIl2J2dBCaNY=
@keturn
keturn / multipart-fail.log
Created January 29, 2010 19:42
squid and curl fight
== curl --trace multipart-fail.log -F "source={}" http://127.0.0.1:3003/jslint
== Info: About to connect() to proxy 127.0.0.1 port 3128 (#0)
== Info: Trying 127.0.0.1... == Info: connected
== Info: Connected to 127.0.0.1 (127.0.0.1) port 3128 (#0)
=> Send header, 342 bytes (0x156)
0000: 50 4f 53 54 20 68 74 74 70 3a 2f 2f 31 32 37 2e POST http://127.
0010: 30 2e 30 2e 31 3a 33 30 30 33 2f 6a 73 6c 69 6e 0.0.1:3003/jslin
0020: 74 20 48 54 54 50 2f 31 2e 31 0d 0a 55 73 65 72 t HTTP/1.1..User
0030: 2d 41 67 65 6e 74 3a 20 63 75 72 6c 2f 37 2e 31 -Agent: curl/7.1
0040: 39 2e 35 20 28 78 38 36 5f 36 34 2d 70 63 2d 6c 9.5 (x86_64-pc-l
@keturn
keturn / crash-app.js
Created January 29, 2010 03:27
expression-crash
/* This was one of my attempts to figure out deferred responses.
It crashes the whole server with a message like this:
[object Object].emitSuccess (node.js:283:15)
[object Object].<anonymous> (node.js:695:21)
[object Object].emitSuccess (node.js:283:15)
node.js:552:29
node.js:1027:1
node.js:1031:1