Skip to content

Instantly share code, notes, and snippets.

View al2o3cr's full-sized avatar

Matt Jones al2o3cr

View GitHub Profile
@al2o3cr
al2o3cr / presentation.md
Last active March 1, 2019 23:02
50 Ways To Leave Your Method
@al2o3cr
al2o3cr / output-4.1.1.log
Created December 8, 2014 03:30
Test case for Rails #17015
Parent Load (0.1ms) SELECT "parents".* FROM "parents" WHERE "parents"."id" = ? LIMIT 1 [["id", 1]]
(0.0ms) begin transaction
SQL (0.0ms) INSERT INTO "students" DEFAULT VALUES
SQL (0.0ms) INSERT INTO "student_parents" ("parent_id", "student_id") VALUES (?, ?) [["parent_id", 1], ["student_id", 1]]
(0.0ms) commit transaction

Keybase proof

I hereby claim:

  • I am al2o3cr on github.
  • I am al2o3cr (https://keybase.io/al2o3cr) on keybase.
  • I have a public key whose fingerprint is 8BFF C530 4A5F 6C05 A195 B6BA 3DCB F07C 45C1 B4CE

To claim this, I am signing this object:

@al2o3cr
al2o3cr / bd_test.rb
Last active January 1, 2016 17:09
Test rounding behavior of BigDecimal
require 'bigdecimal'
def to_decimal(digits, dp)
digits = digits.dup
if dp < -digits.length
digits.unshift(*([nil]*(-digits.length-dp)))
end
digits.insert(dp+digits.length, '.').map { |x| x || '0' }.join
end
@al2o3cr
al2o3cr / gist:5073866
Created March 3, 2013 00:14
Silly SQL trick: computing pi very very inefficiently

Inspired by Postgres: The Bits You Haven't Found:

\set n 1000;

SELECT 4*COUNT(DISTINCT(x, y))/(1.0*:n*:n) AS result FROM generate_series(0,:n) AS x, generate_series(0,:n) AS y WHERE x*x + y*y <= :n*:n;

This uses the simple method of checking every integer-valued point in [0,n] x [0,n] to see if it's inside the circle - the Wikipedia approximations to pi article has more details.

@al2o3cr
al2o3cr / regex_bench.rb
Created April 23, 2011 16:01
Regex benchmarks
require 'benchmark'
nelements = 10
nlines = 10
def repeating_string(base, elements, lines)
(([base]*elements).join(',')+"\n")*lines
end
# test string
GC.start
first_count = ObjectSpace.each_object(String) { |x| nil }
def dummy_function
'foo'
end
second_count = ObjectSpace.each_object(String) { |x| nil }
GC.start
second_after_gc_count = ObjectSpace.each_object(String) { |x| nil }
<def tag="tabs">
<set-scoped tab-names="&[]" tab-contents="&{}">
<ul class="tabs" merge>
<do param="default" />
</ul>
<do repeat="&scope.tab_names">
<div id="#{this}">
<%= scope.tab_contents[this] %>
</div>
</do>
<def tag="page" attrs="title, full-title">
<% full_title ||= "#{title} : #{app_name}" %>
<html merge-attrs>
<head param>
<title param><%= strip_tags full_title %></title>
<stylesheet name="reset" />
<do param="scripts">
<javascript param name="prototype, effects, dragdrop, controls, lowpro, hobo-rapid"/>
<if-ie version="lt IE 7" param="fix-ie6">
en:
reservations:
messages:
create:
success: "The appointment was created successfully"
error: "Couldn't create the appointment. #{errors}"
update:
success: "Changes to the appointment were saved"