Skip to content
# Works with RSpec 3.2.0
module Sometimes
def run_with_retries(example_to_run, retries)
example = RSpec.current_example
example.metadata[:retries] ||= retries
retries.times do |t|
example.metadata[:retried] = t + 1
example.instance_variable_set(:@exception, nil)
example_to_run.run

Rails 4 Silenceable Logger

For when you really, really don't want to log a request.

I'm using this logger to skip logging requests for CarrierWave-uploaded images in development. Loading database dumps from other environments means that the images simply aren't there in development. Rather than deal with an ActiveSupport::RoutingError and a huge 20 line backtrace per missing image, I'm just suppressing all output using this logger and a catchall route that's only active in development.

Usage

Add lib/silenceable_logger.rb to your Rails app, and adapt config/development.rb and config/routes.rb as needed.

What is a coder's worst nightmare?

Mick Stute, BS in CS, PhD work in Bioinformatics

This was mine:

Was hired by a psychologist to fix a program that seemed to have "strange output" written by one of his ex-grad students. It was a program that reads a data files, asks about 50 questions, does some calculations, and comes up with some score based on this PhD's research. It's on a research 3B2 at the university. He demonstrates the program and sure enough there seemed to be strange flashing words on the screen when it moves from question to question and they don't seem nice. I agree to do it, should be pretty straight forward, so he'll pay me by the hour to determine how big the fix is and then we'll agree to a fee.

Day 1

# clone a github repo and then cd into it
function gc {
local repo=${1#*github.com/}
git clone "$repo" "$HOME/src/$repo"
cd "$HOME/src/$repo"
}
### Keybase proof
I hereby claim:
* I am indirect on github.
* I am indirect (https://keybase.io/indirect) on keybase.
* I have a public key whose fingerprint is 53B5 BDD2 6623 41EB 2932 B002 509A E6D4 A089 D900
To claim this, I am signing this object:
$ gem list --verbose -r
*** REMOTE GEMS ***
GET https://api.rubygems.org/latest_specs.4.8.gz
302 Moved Temporarily
GET https://s3.amazonaws.com/production.s3.rubygems.org/latest_specs.4.8.gz
200 OK
^CERROR: Interrupted
#!/bin/bash
set -ex
bundle install --standalone
digest=$(md5 -q Gemfile)
cmd="raise \"Gemfile changed\" if %x[md5 -q Gemfile].chomp != \"${digest}\""
echo $cmd > bundle/bundler/setup.rb.new
cat bundle/bundler/setup.rb >> bundle/bundler/setup.rb.new
class LessThanProc < Proc
attr_accessor :present
def self.with(present)
pv = Gem::Version.new(present.dup)
lt = self.new { |required| pv < Gem::Version.new(required) }
lt.present = present
return lt
end
require 'sinatra'
require 'zlib'
configure do
set :server, :puma
end
get '/text' do
body File.read("text")
end
#!/bin/bash
# Set up paths and whatnot
test -e ~/.bashrc && source ~/.bashrc
# We need tmux. Obvs.
if [[ -z `which tmux` ]]; then echo "You need tmux first!"; exit 1; fi
# Named variables are much more flexible
name="$1"
Something went wrong with that request. Please try again.