Skip to content

Instantly share code, notes, and snippets.

@jinroh
jinroh / isml_bench.js
Last active August 29, 2015 14:04
ISML Parsing Bench
var _ = require('lodash');
var Promise = require('bluebird');
var sax = require('sax');
var manifest = require("raw!./manifest.xml");
function domParser() {
function parseStreamIndex(el) {
var index = [];
if (!el) { return; }
var cdren = el.children;

Keybase proof

I hereby claim:

  • I am jinroh on github.
  • I am pierreg (https://keybase.io/pierreg) on keybase.
  • I have a public key whose fingerprint is 1F8F 68E6 4101 8BBF 5B9B 7FFA A573 5589 4506 960E

To claim this, I am signing this object:

@jinroh
jinroh / gist:1555907
Last active September 29, 2015 05:57
Kademlia Iterative Find (v1)
# in this algorithm, all notions of *sorting*, *close* or *distance*
# are relative to the XOR distance with the target ID
# as defined in the Kademlia spec
- iterative find (target ID) ->
# INITIALIZATIONS
HeardOf <- XOR Sorted Array of peers
initialized with the 50 (or less) closest peers we know from the our routing table
Reached <- XOR Sorted Array of peers
Queried <- Array of peers
@jinroh
jinroh / gist:1919161
Last active October 1, 2015 04:28
Markit!
#!/usr/bin/env ruby
require 'rubygems'
require 'redcarpet'
require 'albino'
class SyntaxRenderer < Redcarpet::Render::HTML
def initialize(options)
super options
@style = options[:style]
@jinroh
jinroh / gist:2730863
Created May 19, 2012 13:31
Iterative Deferred with finish conditions...and timeout
var lookup = function(target) {
var send = function() { /* ... */ },
iterative = new IterativeFind(),
init = new XORSortedPeerArray().relativeNodeID(target),
staled = false;
function map(peer) {
var rpc = new FindNodeRPC(peer, this._target);
send(rpc);
return rpc;
@jinroh
jinroh / ecma5_on_v8.js
Created December 2, 2012 19:20 — forked from Jxck/ecma5_on_v8.js
ECMA 5 Features in V8
/**
* The sample usage of ECMA 5 Mozilla Features Implemented in V8
* https://github.com/joyent/node/wiki/ECMA-5-Mozilla-Features-Implemented-in-V8
* You can use thease new feature of ECMA5 on Node.js as you like.
* because there is no IE :)
* Order is deferent form original wiki.
* Sources are Checked on Node.js v0.5.0(unstable), v0.4.9(stable)
*
* you can execute this file.
* $ node ecma5_on_v8.js
@jinroh
jinroh / await.js
Created April 21, 2013 16:09 — forked from domenic/await.js
Await and yield
// Let `doAjax`, `fadeIn`, `fadeOut`, and `delay` be promise-returning functions.
// In all the following examples, `example` is meant to return a promise that is fulfilled when
// all operations are completed, or rejected if any of the steps fail.
// ES5
function example() {
return doAjax("data.json").then(function (data) {
document.getElementById("data").innerText = data;
eventsource
go-eventsource
client/client
@jinroh
jinroh / random_string.go
Last active January 22, 2018 07:46
Generate random string in Go
BenchmarkRandomStringA-4 2000000 702 ns/op
BenchmarkRandomStringB-4 10000000 120 ns/op
BenchmarkRandomStringC-4 20000000 115 ns/op
BenchmarkRandomStringD-4 10000000 121 ns/op
@jinroh
jinroh / index.html
Last active September 13, 2019 10:26
Image intensity histogram
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<script src="http://d3js.org/d3.v3.min.js"></script>
<style>
body {
font: 10px sans-serif;
}
#main {