View querySelector.polyfill.js
if (!document.querySelectorAll) {
document.querySelectorAll = function (selectors) {
var style = document.createElement('style'), elements = [], element;
document._qsa = [];
style.styleSheet.cssText = selectors + '{x-qsa:expression(document._qsa && document._qsa.push(this))}';
window.scrollBy(0, 0);

Keybase proof

I hereby claim:

  • I am kyungw00k on github.
  • I am kyungw00k ( on keybase.
  • I have a public key whose fingerprint is 321D 20A2 E832 8F37 CF07 2018 199E 8C68 1ACC 7483

To claim this, I am signing this object:

View ansible-playbook-no-passwd-ssh-conn-between-two-host-groups.yml
# Rotate SSH Keys between two host groups
# Inspired by
- name: Remove current .ssh/
hosts: host_group1, host_group2
remote_user : "{{ user }}"
- file: path={{item}} state=absent
View highchart.directive.js
(function () {
'use strict';
.directive('chart', function () {
lang: {
loading: '로딩중...',
months: ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'],
shortMonths: ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'],
View readLineByLine.js
.forEach(function (line) {
/* do somthing */
View package.json
"name": "my-queue",
"version": "1.0.0",
"description": "My Queue",
"main": "queue_worker.js",
"dependencies": {
"firebase": "2.x",
"firebase-queue": "^1.0.0"

The introduction to Reactive Programming you've been missing

(by @andrestaltz)

So you're curious in learning this new thing called Reactive Programming, particularly its variant comprising of Rx, Bacon.js, RAC, and others.

Learning it is hard, even harder by the lack of good material. When I started, I tried looking for tutorials. I found only a handful of practical guides, but they just scratched the surface and never tackled the challenge of building the whole architecture around it. Library documentations often don't help when you're trying to understand some function. I mean, honestly, look at this:

Rx.Observable.prototype.flatMapLatest(selector, [thisArg])

Projects each element of an observable sequence into a new sequence of observable sequences by incorporating the element's index and then transforms an observable sequence of observable sequences into an observable sequence producing values only from the most recent observable sequence.

View gist:7c92b76d71db460f2b7b
/* bootstrap hack: fix content width inside hidden tabs */
.tab-content > .tab-pane,
.pill-content > .pill-pane {
display: block; /* undo display:none */
height: 0; /* height:0 is also invisible */
overflow-y: hidden; /* no-overflow */
.tab-content > .active,
.pill-content > .active {
height: auto; /* let the content decide it */
View gist:4e05e522bbd641ab4db0
# Regenerate A Key From A Private Id_rsa Key
ssh-keygen -y -f ~/.ssh/id_rsa > ~/.ssh/
View logback.xml
<?xml version="1.0" encoding="UTF-8"?>
<!-- For assistance related to logback-translator or configurations -->
<!-- files in general, please contact the logback user mailing list -->
<!-- at -->
<!-- -->
<!-- For professional support please see -->
<!-- -->
<!-- -->