Skip to content

Instantly share code, notes, and snippets.

View Yuffster's full-sized avatar
🕳️
ᕕ( ᐛ ) ᕗ

Michelle Steigerwalt Yuffster

🕳️
ᕕ( ᐛ ) ᕗ
View GitHub Profile
@Yuffster
Yuffster / scratch.py
Last active August 29, 2015 14:18
Weird XOR Thing
def single_character_xor(string, xor):
xored = map(lambda n: n ^ ord(xor), map(ord, string))
return "".join(map(chr,xored))
def detect_wtf(string):
for i in range(255):
xored = single_character_xor(string, chr(i))
if xored[0] == string[0].upper():
print string+" when XORed with %d"%i+"="+xored
@Yuffster
Yuffster / cool_way.py
Created April 2, 2015 20:24
Hamming Distance
def hamming_distance(a,b):
"""
Computes the byte difference between two strings.
>>> hamming_distance("this is a test", "wokka wokka!!!")
37
"""
count = 0
a = string_to_byte_array(a)
b = string_to_byte_array(b)
@Yuffster
Yuffster / 00_database_with_proxy.js
Created June 17, 2015 22:57
Code Words: Pseudosynchronous APIs Code Examples
function DatabaseClient(callback) {
var self = this;
var queue = [];
var ready = false;
console.log("Connecting to database.");
function run(method, args) {
console.log("Executing operation: Database."+method);
@Yuffster
Yuffster / 00_concat.js
Last active August 29, 2015 14:23
Code Words Pseudosynchronous APIs Part I
function concat() {
var output = "";
Array.prototype.forEach.call(arguments, function(arg) {
output += arg;
});
return output;
}
console.log(concat('abc', 'def', 'ghi')); // 'abcdefghi'
@Yuffster
Yuffster / correct.js
Last active August 29, 2015 14:23 — forked from benjamingr/correct.js
function createUser(username, callback) {
var connection = DatabaseClient.connect();
var users = connection.call('collection', 'users');
var query = users.call('query', {username: username});
return query.then(function(existing){
if(existing) throw new Error("User already exists: " + username);
else return users.call('create', {username: username});
}).fin(function(connection){ return connection.call('close'); });
}
function createUser(username, callback) {
var connection = DatabaseClient.connect();
var users = connection.collection('users');
var query = users.query({username: username});
return query.then(function(existing){
if(existing) throw new Error("User already exists: " + username);
else return users.create({username: username});
}).fin(function(connection){ return connection.call('close'); });
}
from blessings import Terminal
from time import sleep
from random import randrange, choice
class Glyph():
def __init__(self, content, terminal):
self.content = content
self.terminal = terminal
Request.Persistent = new Class({
Extends: Request,
onStateChange: function(e) {
var patt = this.laststr;
this.laststr = this.xhr.responseText;
this.fireEvent('onUpdate', this.laststr.replace(patt, ''));
}
var working = false; //Not currening switching content.
var newBenefit = function(e) {
if (working) return false;
working = true;
e.stop();
var cur = $$('#benefits .current')[0];
if (cur) {
var el = this;
var next = $(el.get('href').split('#')[1]);
var mleft = cur.getElement('.photo').getStyle('margin-left');
Element.implement({
/* Adds a getArguments method to Elements that will extract the "arguments" of
forms. */
getArguments: function(){
var obj = {};
this.getElements('input, select, textarea', true).each(function(el){
var name = el.name, type = el.type, value = el.value;
if (value === false || !name || el.disabled) return;
$splat(value).each(function(val){ obj[name] = val; });