Skip to content

Instantly share code, notes, and snippets.

View djrobby's full-sized avatar

Robby Dhillon djrobby

  • Detroit, MI - USA
View GitHub Profile
@dnagir
dnagir / deploy.rb
Created May 18, 2011 14:55
Flexible Rails deployment with Capistrano and Nginx
set :domain, ENV["domain"]
set :application, domain
set :user, ENV["user"]
set :destination, ENV["destination"] || domain
set :web_conf, ENV["web_conf"] || ENV["environment"] || 'production'
raise "please set domain=app.domain.name.com" unless domain
raise "please set user=server_username" unless user
set :port, ENV["port"] || 1234
set :repository, "."
@bowsersenior
bowsersenior / stooge_loader.rb
Created May 18, 2011 23:18
A demo of YAML anchors, references and nested values
require 'rubygems'
require 'yaml'
# A demonstration of YAML anchors, references and handling of nested values
# For more info, see:
# http://atechie.net/2009/07/merging-hashes-in-yaml-conf-files/
stooges = YAML::load( File.read('stooges.yml') )
# => {
# "default" => {
@DarrenN
DarrenN / shortid.rb
Created November 20, 2011 18:02
Short unique ID (Ruby)
t = DateTime
id = t.now.strftime("%Y%m%d%k%M%S%L") # Get current date to the milliseconds
id = id.to_i.to_s(36) # will generate somthing like "5i0sp1h4tkc"
# Reverse it
id.to_i(36)
@markgarrigan
markgarrigan / object_blank_present.rb
Created May 21, 2012 16:42
Ruby blank? and present?
class Object
def blank?
respond_to?(:empty?) ? empty? : !self
end
def present?
!blank?
end
end
@dedico
dedico / pre-commit
Created May 30, 2012 12:07
Git pre-commit hook to precompile assets if anything changed in app/assets or vendor/assets
#!/bin/bash
# source rvm and .rvmrc if present
[ -s "$HOME/.rvm/scripts/rvm" ] && . "$HOME/.rvm/scripts/rvm"
[ -s "$PWD/.rvmrc" ] && . "$PWD/.rvmrc"
should_precompile=0
# check if anything changed in app/assets
if git diff-index --name-only HEAD | egrep '^app/assets' >/dev/null ; then
require 'digest'
module AnyGood
class MovieMatcher
def add_movie(movie_hash)
prefixes = prefixes_for(movie_hash[:name])
hashed_name = data_hash_key_for(movie_hash)
prefixes.each do |prefix|
@IanVaughan
IanVaughan / uninstall_gems.sh
Created June 9, 2012 20:37
Uninstall all rbenv gems
#!/usr/bin/env bash
uninstall() {
list=`gem list --no-versions`
for gem in $list; do
gem uninstall $gem -aIx
done
gem list
gem install bundler
}
@umutakturk
umutakturk / time_ago.rb
Last active September 19, 2024 09:03
Ruby readable time ago function
def time_ago(timestamp)
delta = Time.now.to_i - timestamp
case delta
when 0..30 then "just now"
when 31..119 then "about a minute ago"
when 120..3599 then "#{delta / 60} minutes ago"
when 3600..86399 then "#{(delta / 3600).round} hours ago"
when 86400..259199 then "#{(delta / 86400).round} days ago"
else Time.at(timestamp).strftime('%d %B %Y %H:%M')
end
@jeremyevans
jeremyevans / sequel_model_without_a_table.rb
Created October 10, 2012 21:17 — forked from jescalante/sequel_model_without_a_table.rb
Trying to use a sequel model without a table
# in sequel/plugins/foo.rb
module Sequel::Plugin::Foo
def self.apply(model)
model.plugin :timestamps, :create => :created_on, :update => :updated_on
model.plugin :validation_helpers
model.many_to_one :user
end
module InstanceMethods
# Note that it's probably a bad idea to override initialize unless you
@ticky
ticky / browser-regex.md
Last active October 19, 2023 23:13
Browser and Version regex

Browser and Version Regular Expression 2.0

(MSIE|(?!Gecko.+)Firefox|(?!AppleWebKit.+Chrome.+)Safari|(?!AppleWebKit.+)Chrome|AppleWebKit(?!.+Chrome|.+Safari)|Gecko(?!.+Firefox))(?: |\/)([\d\.apre]+)

This regular expression is capable of retrieving the browser and version for the following browsers;

  • Internet Explorer
  • Firefox (INCLUDING alpha and "pre" versions)
  • Other browsers reporting a "Gecko" version in their user agent
  • Chrome
  • Safari
  • Other browsers reporting an "AppleWebKit" version in their user agent