This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# switching identities in order to use multiple github accounts on one computer, you have to: | |
# add to ~/.ssh/config according to current github user: | |
Host github.com | |
IdentityFile ~/.ssh/<rsa_id_for_current_user> | |
# set git user globally or locally according to current github user: | |
git config --local user.name "My Name" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ary = [['a', :hello], ['b', :foo], ['b', :bar], ['b', :baz], ['a', :world]] | |
# QUIZ: | |
# How do you sort "ary" so equal objects stay in the same relative order to each other? | |
# "ary" should be sorted by the first element of each entry. | |
# Try now: http://tryruby.org/ | |
expected = [['a', :hello], ['a', :world], ['b', :foo], ['b', :bar], ['b', :baz]] | |
# HINT: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/*jslint browser: true, indent: 2 */ | |
(function () { | |
'use strict'; | |
var rgb, style, idx = 0, store = {}, tiles = document.getElementById('box').childNodes; | |
for (idx; idx < tiles.length; idx += 1) { | |
rgb = tiles[idx].style.backgroundColor.split("(")[1].split(")")[0].split(","); | |
store[Math.sqrt(Math.pow(rgb[0], 2), Math.pow(rgb[2], 2), Math.pow(rgb[2], 2))] = tiles[idx]; | |
} | |
style = Object.keys(store).map(function (key) { return [key, store[key]]; }). | |
sort(function (a, b) { return parseInt(a[0], 10) < parseInt(b[0], 10) ? 1 : -1; })[0][1].style; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* Render Showoff presentation to png or pdf. | |
For PNG output: | |
* Install | |
- phantomjs | |
* Run | |
$> showoff serve & | |
$> phantomjs ./path/to/showoff2png.js | |
This will create one png image file per slide. | |
* For PDF output: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env ruby | |
# git_reports.rb | |
# print git statistics of users' commits and added/deleted lines of code | |
# simply run "ruby git_reports.rb" in a git repository | |
puts "git log --numstat --no-merges" | |
# retrieve data | |
log = %x"git log --numstat --no-merges" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
require 'benchmark' | |
class Bunch | |
def self.mark(&block) | |
first = Bunch.realtime(&block) | |
vs = {:first => first} | |
class << vs | |
def vs(&block) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
module One | |
def a(*) | |
puts 'One...' | |
super | |
end | |
end | |
module Two | |
def a(*) | |
puts 'Two...' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#Lookup Tables, http://en.wikipedia.org/wiki/Lookup_table | |
#Memoization, http://en.wikipedia.org/wiki/Memoization | |
require 'benchmark' | |
########################################################### | |
# Fibonacci number, http://en.wikipedia.org/wiki/Fibonacci_number | |
def fib(n) | |
n < 2 ? 1 : fib(n-2) + fib(n-1) | |
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env sh | |
# Rename all file in the current directory according to their file creation date | |
# For jpegs the file date will be set according to its EXIF data | |
# e.g. | |
# "20130628_014218.txt" not renamed | |
# "test.TXT" => "20130628_002938.txt" | |
# file extensions will be lower case | |
jhead -ft -dt -autorot -exonly -n%Y%m%d_%H%M%S *.[Jj][Pp][Gg] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
require 'openssl' | |
require 'digest/sha2' | |
# Config | |
alg = "AES-256-CBC" | |
# Key | |
key = OpenSSL::Cipher::Cipher.new(alg).random_key | |
# Init Digest |
OlderNewer