Skip to content

Instantly share code, notes, and snippets.

View dvanderbeek's full-sized avatar

David Van Der Beek dvanderbeek

  • San Francisco, CA
View GitHub Profile
<% [:notice, :error, :alert].each do |level| %>
<% unless flash[level].blank? %>
<div class="alert alert-<%= flash_class(level) %>">
<a class="close" href="#">×</a>
<%= content_tag :p, flash[level] %>
</div>
<% end %>
<% end %>
@dvanderbeek
dvanderbeek / gist:af5bbcca1fcfb82f77cf
Last active August 29, 2015 14:04
Using helpers with a block to eliminate local variables in a view
# Bad
<% user_presenter = UserPresenter.new(@user, self) %>
<%= user_presenter.name %>
<%= user_presenter.avatar %>
# Good
<% present @user do |user_presenter| %>
<%= user_presenter.name %>
<%= user_presenter.avatar %>
<% end %>
@dvanderbeek
dvanderbeek / Ruby Sumproduct
Last active August 29, 2015 14:04
Ruby Sumproduct
def sumproduct(a, b)
sum, i, n = 0, 0, a.size
while i < n
sum += a[i] * b[i]
i += 1
end
sum
end
@dvanderbeek
dvanderbeek / gist:de9caad2ea12498c4ba7
Last active August 29, 2015 14:05
OLD - Devise Request Spec Helper
module ValidUserRequestHelper
def sign_in_as_a_valid_user
@user ||= FactoryGirl.create :user
post_via_redirect user_session_path, 'user[email]' => @user.email, 'user[password]' => @user.password
end
end
# spec_helper.rb
RSpec.configure do |config|
config.include ValidUserRequestHelper, :type => :request
@dvanderbeek
dvanderbeek / gist:2c22828b98a755ecf789
Created August 16, 2014 13:21
NEW - Devise Request Spec Setup
# in spec_helper.rb
include Warden::Test::Helpers
Warden.test_mode!
# in a request spec
user = FactoryGirl.create(:user)
login_as(user, :scope => :user)
@dvanderbeek
dvanderbeek / hexagonal_example.rb
Last active December 22, 2015 17:40
An example of the "Hexagonal Rails" concept from Matt Wynne
# Tell, Don't Ask.
# Easily plug in new listeners that respond to the API we have defined:
# create_succeeded, create_failed
# Benefits:
# * Clean controller
# * Small classes with single responsibilities
# * Easy to test each individually
# * No need for model-level callbacks, just plug in the relevant listeners
# * No if statements - easy to follow logic
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/Users/earlynovrock/.rvm/rubies/ree-1.8.7-2012.02/bin/ruby extconf.rb
Building libmemcached.
tar xzf libmemcached-0.32.tar.gz 2>&1
Patching libmemcached source for mark-dead behavior.
patch -p1 -f < libmemcached-1.patch
patching file libmemcached-0.32/libmemcached/memcached_response.c
patching file libmemcached-0.32/libmemcached/memcached.c
patching file libmemcached-0.32/libmemcached/memcached.h
begin
require 'bundler/inline'
rescue LoadError => e
$stderr.puts 'Bundler version 1.10 or later is required. Please update your Bundler'
raise e
end
gemfile(true) do
source 'https://rubygems.org'
gem 'rails', github: 'rails/rails'

Keybase proof

I hereby claim:

  • I am dvanderbeek on github.
  • I am dvanderbeek (https://keybase.io/dvanderbeek) on keybase.
  • I have a public key ASDILtUF5bnkIyjlJ0n67XvBVG2z9ir96mD3qVPs1xIJtAo

To claim this, I am signing this object:

@dvanderbeek
dvanderbeek / mix.exs
Last active December 11, 2017 16:30
absinthe-dependencies
{:absinthe, "~> 1.4.0"},
{:absinthe_phoenix, "~> 1.4.0"},
{:absinthe_plug, git: "https://github.com/absinthe-graphql/absinthe_plug.git", ref: "c2bcef26360f9b31f122e25ac0cbfdd1b76455f7", override: true}