Skip to content

Instantly share code, notes, and snippets.

View kbaribeau's full-sized avatar

Kevin Baribeau kbaribeau

  • Test Double
  • Saskatoon, SK, Canada
View GitHub Profile
@kbaribeau
kbaribeau / gist:4495181
Created January 9, 2013 17:46
The source code for the unix `ping` command, taken from here: http://ftp.arl.army.mil/~mike/ping.html
# This is a shell archive. Remove anything before this line, then
# unpack it by saving it in a file and typing "sh file". (Files
# unpacked will be owned by you and have default permissions.)
#
# This archive contains:
# Makefile ping.1 ping.c ping.shar newping.1 newping.c
echo x - Makefile
cat > "Makefile" << '//E*O*F Makefile//'
@kbaribeau
kbaribeau / gist:1103102
Created July 24, 2011 21:06
Ruby single quote escaping madness
Ok, so I'm trying to replace a ' character with \' in a ruby string. I have working code, but it was
*way* too painful getting there for my taste.
Take a look:
ree-1.8.7-2010.02 :001 > single_quote = "\'"
=> "'"
ree-1.8.7-2010.02 :003 > single_quote.gsub(/'/, "\\\'")
=> ""
ree-1.8.7-2010.02 :004 > single_quote.gsub(/'/) {|c| "\\'"}
@kbaribeau
kbaribeau / gist:d0d94c02a598490653de
Last active August 18, 2016 08:39
Clojure defrecord, namespaces, and dashes vs underscores
user=> (ns my-ns)
nil
my-ns=> (defrecord Outfit [shirt pants])
my_ns.Outfit
my-ns=> (ns clothes.outfit
#_=> (:require [my-ns])
#_=> (:import [my_ns Outfit])); note that we defined it in my-ns, but we have to use an underscore to import it
nil
clothes.outfit=> (Outfit. "t-shirt" "jeans")
#my_ns.Outfit{:shirt "t-shirt", :pants "jeans"}
@kbaribeau
kbaribeau / gist:8508798
Created January 19, 2014 18:20
convert pdf files to text for further parsing
(ns pdf-text-extractor.core
(:import [com.snowtide.pdf OutputTarget PDFTextStream]))
(defn pdf-to-text [file]
(let [pdfts (new PDFTextStream file)
output (new StringBuilder 1024)]
(.pipe pdfts (new OutputTarget output))
(.close pdfts)
output))
function fix-file-endings () {
for f in `git ls-files`
do
newline='
'
lastline=$(tail -n 1 $f; echo x); lastline=${lastline%x}
[ "${lastline#"${lastline%?}"}" != "$newline" ] && echo >> $f
done
}
@kbaribeau
kbaribeau / gist:3784044
Created September 25, 2012 19:51 — forked from nhajratw/gist:3783890
accessing functions??
var cycleTimeFunctionThatNeedsABetterName = function(acceptedDate, inProgressDate) {
var cycleTime = Math.round(Ext.Date.getElapsed(acceptedDate,inProgressDate) / 1000 / 60 / 60 / 24);
if (cycleTime === 0) cycleTime = 1;
return cycleTime;
};
Ext.define('CustomApp', {
extend: 'Rally.app.App',
componentCls: 'app',
@kbaribeau
kbaribeau / gist:3452778
Created August 24, 2012 16:48
Ruby style poll
#Do you prefer this?
merchant["thing"] = important_stuff.map { |important_thing| important_thing["units"] }.inject(&:+)
#Or this?
important_stuff.each { |important_thing| merchant["thing"] += important_thing["units"] }
#Why? Is it completely objective? Or are ruby's idioms/social mores/conventions the deciding factor?
window.CountCalculator=window.PriceCalculator=window.TaxCalculator=window.ShippingCaclulator = {
calculate: (num) -> (num == undefined ? 0 : num + 1) }
ChainsCalls =
chain: (dependencies, method) ->
_(dependencies).inject((memo, dependency) ->
dependency[method](memo)
, undefined)
Invoice =
@kbaribeau
kbaribeau / gist:3123533
Created July 16, 2012 16:07
using custom ssl certs on osx
#see http://jjinux.blogspot.com/2012/02/ruby-working-around-ssl-errors-on-os-x.html
require 'open-uri'
require 'net/https'
module Net
class HTTP
alias_method :original_use_ssl=, :use_ssl=
def use_ssl=(flag)
@kbaribeau
kbaribeau / gist:2936794
Created June 15, 2012 14:41
ugly line of js
var o = this.options, scroll = this.cssPosition == 'absolute' && !(this.scrollParent[0] != document && $.ui.contains(this.scrollParent[0], this.offsetParent[0])) ? this.offsetParent : this.scrollParent, scrollIsRootNode = (/(html|body)/i).test(scroll[0].tagName);