Skip to content

Instantly share code, notes, and snippets.

View edjames's full-sized avatar

Ed James edjames

View GitHub Profile
@edjames
edjames / file_diff.rb
Created February 3, 2012 11:45
Import a gemset without bundler Ruby 1.8.7
#!/usr/bin/env ruby
unless ARGV.count >= 2
puts "Please provide two files to perform diff..."
exit
end
def load_file file
arr = File.readlines(file).map(&:chomp).compact
arr.shift if arr.first =~ /^#/
@edjames
edjames / db.rake
Created January 23, 2012 14:16
Rake tasks for MySQL data import/export
namespace :db do
namespace :data do
desc "Dump data into sql script file: filename=[target filename]"
task :dump => 'environment' do
environment = (ENV.include?("RAILS_ENV")) ? (ENV["RAILS_ENV"]) : 'development'
ENV["RAILS_ENV"] = RAILS_ENV = environment
database = get_database(environment)
user = database
password = ENV['PASSWORD']
@edjames
edjames / gist:1125444
Created August 4, 2011 15:28
quick pivot example
require 'ostruct'
data = []
data << OpenStruct.new(:city => 'London', :qtr => 1, :sales => nil)
data << OpenStruct.new(:city => 'London', :qtr => 1, :sales => 50)
data << OpenStruct.new(:city => 'London', :qtr => 1, :sales => 50)
data << OpenStruct.new(:city => 'London', :qtr => 2, :sales => 200)
data << OpenStruct.new(:city => 'London', :qtr => 3, :sales => 300)
data << OpenStruct.new(:city => 'London', :qtr => 4, :sales => 400)
@edjames
edjames / Threading example
Last active September 25, 2015 08:58
A quick example of multithreading
require 'benchmark'
class CottonThread
attr_reader :threads, :procs
def initialize
@threads, @procs = [], []
end
def sow(proc)