Skip to content

Instantly share code, notes, and snippets.

path_to_log = File.join(File.dirname(__FILE__),'cron_output.log')
File.open(path_to_log, 'w'){ |file| file << "I was last run at #{Time.now}" }
@knowtheory
knowtheory / result.xml
Last active December 13, 2015 17:29
To run this, download the gist, and from the commandline type `ruby [path/to/the/gist.rb]` You should make sure you have Ruby and nokogiri installed on your computer first. N.B. just realized that the download gist link saves a zipped file that you will have to unzip to get to the xml_transformation.rb file.
<state name="Alabama">
<city name="Abbeville" number="1"/>
<city name="Adamsville" number="1"/>
<city name="Addison" number="1"/>
<city name="Akron" number="2"/>
</state>
module Sullivans
class UserActor
include Celluloid
include Celluloid::Notifications
include Celluloid::Logger
def initialize(socket)
# Subscribe to conversations
info "Started a client"
require 'open-uri'
require 'nokogiri'
require 'csv'
#######################################
#
# PHASE ONE: PAGE FETCHING
#
#######################################
// Fetch and append the current temperature
function fetchAndAppendWeather() {
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var sheet = spreadsheet.getActiveSheet();
// All the actual work is done in the top row.
// We get the link stored in cell A1
var weatherLink = sheet.getRange("A1").getValue();
// we set a formula importing a targeted portion of the web page
# <= this hash sign. Hash signs are used to start comments.
# Anything that starts with a hash will be instructions or descriptions.
# Different programming languages/environments will use different
# characters to start comments.
# Bash (what your shell uses, happens to use the hash mark)
# comments run from the hash mark to the end of the line.
# So, one can issue a command, and add a comment after it like so:
ls # this is a command we will explain below
n = 50000;
Benchmark.bm(15) do |x|
x.report("Array Include:"){ n.times{ foo = 5; arr = [1,2,3,4,5]; arr.include? foo }}
x.report("Array access:"){ n.times{ foo = 5; arr = [1,2,3,4,5]; foo == arr[0] || foo == arr[1] || foo == arr[2] || foo == arr[3] || foo == arr[4] } }
x.report("Array Alloc:"){ n.times{ foo = 5; arr = [1,2,3,4,5]; foo == 1 || foo == 2 || foo == 3 || foo == 4 || foo == 5 } }
x.report("Just Ors:"){ n.times{foo = 5; foo == 1 || foo == 2 || foo == 3 || foo == 4 || foo == 5 }}
end
n = 50000;
foo = 1
# Usage:
# The following will create 5 randomized cards from the lines of gawkerbingo.txt:
# ruby bingorunner.rb 5
require './gawkerbingo.rb'
number_of_cards = ARGV.first.to_i
CreateCards.new(number_of_cards)
@knowtheory
knowtheory / secrets.yml
Created May 21, 2012 23:55
Sample secrets file for DocumentCloud
# Sensitive API keys and other secret strings.
defaults : &defaults
aws_access_key: string_goes_here
aws_secret_key: string_goes_here
calais_license: string_goes_here
smtp_password: string_goes_here
pixel_ping: string_goes_here
guest_username: string_goes_here
guest_password: string_goes_here
@knowtheory
knowtheory / gist:2709760
Created May 16, 2012 11:45
Backbone confusion
var test = Backbone.Model.extend({
var1 : [],
initialize : function(obj) {
this.var1.push("1")
console.log(this.var1.length, this.cid)
}
});
var x = (new test);