Skip to content

Instantly share code, notes, and snippets.

View francisluong's full-sized avatar

Francis Luong (Franco) francisluong

View GitHub Profile
user=> (def c [{:next-hop "192.168.1.1", :prefix "172.16.1.1/32", :route-status "*|e"}
#_=> {:next-hop "192.168.255.255", :prefix nil, :route-status "*>e"}])
#'user/c
user=>
user=> (let [prev (atom nil)]
#_=> (map (fn [r]
#_=> (if (and @prev (not (:prefix r)))
#_=> (assoc r :prefix @prev)
#_=> (do (reset! prev (:prefix r))
@francisluong
francisluong / em-http-020-async-with-em-iterator.rb
Last active July 24, 2016 20:55
EM-HTTP-Request - Example 020 - Async Concurrency Limit using EM-Iterator
require 'eventmachine'
require 'em-http-request'
require 'logger'
require 'pry'
##
# concurrent requests with EM::Iterator concurrency limit of 2
FIVE = 'http://ipv4.download.thinkbroadband.com/5MB.zip'
TEN = 'http://ipv4.download.thinkbroadband.com/10MB.zip'
@francisluong
francisluong / em-http-010-async.rb
Last active July 24, 2016 21:13
EM-HTTP-Request - Example 010 - Async Concurrency
require 'eventmachine'
require 'em-http-request'
require 'logger'
require 'pry'
##
# concurrent requests without concurrency limits
FIVE = 'http://ipv4.download.thinkbroadband.com/5MB.zip'
TEN = 'http://ipv4.download.thinkbroadband.com/10MB.zip'
@francisluong
francisluong / em-http-000.rb
Last active July 24, 2016 20:38
EM-HTTP-Request - Example 000 - Single Request
require 'eventmachine'
require 'em-http-request'
require 'logger'
require 'pry'
##
# Single request
@start_time = Time.now
@logger = Logger.new($stdout)
require 'eventmachine'
require 'em-http'
require 'logger'
class HTTPAsyncMulti
@@multi = []
@@multi_done = []
@@concurrency = 2
@@logger = Logger.new($stdout)
$ gem build expect-behaviors.gemspec
WARNING: open-ended dependency on net-ssh (>= 0) is not recommended
if net-ssh is semantically versioned, use:
add_runtime_dependency 'net-ssh', '~> 0'
WARNING: open-ended dependency on codeclimate-test-reporter (>= 0, development) is not recommended
if codeclimate-test-reporter is semantically versioned, use:
add_development_dependency 'codeclimate-test-reporter', '~> 0'
WARNING: pessimistic dependency on mocha (~> 1.1.0, development) may be overly strict
if mocha is semantically versioned, use:
add_development_dependency 'mocha', '~> 1.1', '>= 1.1.0'
@francisluong
francisluong / DefaultKeyBinding.dict
Last active September 6, 2015 20:03
~/Library/KeyBindings/DefaultKeyBinding.dict - remap home and end keys in OSX
{
// via http://apple.stackexchange.com/questions/16135/remap-home-and-end-to-beginning-and-end-of-line
"\UF729" = moveToBeginningOfParagraph:; // home
"\UF72B" = moveToEndOfParagraph:; // end
"$\UF729" = moveToBeginningOfParagraphAndModifySelection:; // shift-home
"$\UF72B" = moveToEndOfParagraphAndModifySelection:; // shift-end
// Add to ~/Library/KeyBindings/DefaultKeyBinding.dict and restart your program.
}
@francisluong
francisluong / gist:af7ead22bd0e4fe55fe6
Created March 13, 2015 20:54
Nexus Vlan not created
Nexus vlan assigned but not created
asw1-p05-0-lab# sh int eth1/17 sw
Name: Ethernet1/17
Switchport: Enabled
Switchport Monitor: Not enabled
Operational Mode: access
Access Mode VLAN: 200 (Vlan not created)
Trunking Native Mode VLAN: 1 (default)
Trunking VLANs Allowed: 1-4094
@francisluong
francisluong / yo.sh
Created February 21, 2015 15:35
OSX Yosemite on VirtualBox
#!/bin/bash
# Create OSX Yosemite Installer for VirtualBox using iesd gem
gem install iesd
iesd -i /Applications/Install\ OS\ X\ Yosemite.app/ -o yosemite.dmg -t BaseSystem
hdiutil convert yosemite.dmg -format UDSP -o yosemite.sparseimage
ls -lh yo*
hdiutil mount /Applications/Install\ OS\ X\ Yosemite.app/Contents/SharedSupport/InstallESD.dmg
hdiutil mount yosemite.sparseimage
cp /Volumes/OS\ X\ Install\ ESD/BaseSystem.* /Volumes/OS\ X\ Base\ System/
hdiutil detach /Volumes/OS\ X\ Install\ ESD/
@francisluong
francisluong / screen.lock.automator.applescript
Created December 15, 2014 22:28
OSX Automator Applescript to Create a Start Screensaver (Lock Screen) Hotkey
#Service receives *no input* in *any application*
# bind to ctrl-alt-l in keyboard shortcuts
on run {input, parameters}
tell application "System Events" to start current screen saver
return input
end run