Skip to content

Instantly share code, notes, and snippets.

@fumin
fumin / use_rc_tumblr.rb
Created October 23, 2012 21:40
how to use RC::Tumblr
c = RC::Tumblr.new
c.authorize_url! # https://api.tumblr.com/oauth/authorize?oauth_token=I8QcLz0oqCTS47D9cHqjn9QfHkcmZzeMJNZEwkpCEwOdIctD2Y
# throw the above link into browser and login
# Eventually you'll end up in http://pic-collage.com/?oauth_token=I8QcLz0oqCTS47D9cHqjn9QfHkcmZzeMJNZEwkpCEwOdIctD2Y&oauth_verifier=nSAGgIsnwFoNChxIWAjYmFWKjMDWTG0UmOOr4VGpRcYsSDY7Z3
c.authorize! :oauth_verifier => 'nSAGgIsnwFoNChxIWAjYmFWKjMDWTG0UmOOr4VGpRcYsSDY7Z3'
# You are ready now :)
pp c.user_info
@fumin
fumin / findcode
Last active October 13, 2015 02:18
find code for use with vim
#!/bin/bash
cd `pwd`
find . ! \( -name ".git" -prune -o -name tmp -prune -o -name log -prune \) -type f -exec grep "$@" {} \;
@fumin
fumin / futures.rb
Created December 12, 2012 02:13
futures implementation
require 'fiber'
require 'eventmachine'
require 'rest-core'
class BlockingClient
def initialize *args
@client = RC::Universal.new(*args)
end
def get path, params={}, opts={}
@client.get(path, params, opts).tap{}
@fumin
fumin / english_club_self_intro.md
Last active December 14, 2015 00:59
self intro for english club

Awaw self intro for English Club

Basic info

I am fumin (awaw in most places on the web) who is mainly a developer focusing on web, iOS, and Android apps. I work at cardinalblue.com. You can find more about me at github/fumin, previous homepage, and future graphics.

Motivation

To practice the English language orally, and to get to know new friends

Expectations

I hope everyone participating find the gathering interesting, helpful, and rewarding. I believe I will feel the same if everyone feels so.

@fumin
fumin / tcpdump
Created August 31, 2013 00:36
command for filtering only packets with length > 0
# Command for filtering only packets with length > 0
# Copied from http://www.wains.be/pub/networking/tcpdump_advanced_filters.txt
#
sudo tcpdump -i lo0 -A -q '(((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0) && port 55976'
@fumin
fumin / haproxy.cfg
Last active September 18, 2020 23:53
Haproxy config file for SSL and basic authentication
# Haproxy config file for SSL and basic authentication
#
# Since ssl is needed, we need to use
# `make TARGET=linux26 USE_OPENSSL=1 ADDLIB=-lz` to install haproxy.
# Also, haproxy version must be haproxy-1.5-dev19 or above.
#
# An example curl command that queryies pic-collage.com/api/collages/feed is
# `curl -k -v -u 'collages:password' 'https://ec2-ip.compute-1.amazonaws.com/api/collages/feed'`
userlist collages_dyno
@fumin
fumin / profile.rb
Last active August 29, 2015 13:56
redis key distribution profiling script
# profile.rb - A script that analyzes the memory usage of a redis instance from it's "dump.rdb"
#
# To run this script, edit the key_groups variable in the stats method, and then run
# `ruby profile.rb dump.rdb` in the command line.
# Running this script will:
# * Dump the contents of the input rdb file in CSV format to "/tmp/memory.csv"
# * Load the contents of "/tmp/memory.csv" to the table "mem" in the "redis_mem" database
# * Print the stats of each key group to STDOUT
#
# Dependencies:
@fumin
fumin / floating_point_experiment.m
Created February 24, 2014 16:15
OpenGL floating point texture experiment
void floatTextureExperiment
{
GLenum err = 0;
GLuint texture1;
glGenTextures(1, &texture1);
glActiveTexture(GL_TEXTURE1);
glBindTexture(GL_TEXTURE_2D, texture1);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
@fumin
fumin / selfreproducing.go
Created April 7, 2014 19:19
self-reproducing program in Go
package main
import "fmt"
func main() {
m := `package main
import "fmt"