Skip to content

Instantly share code, notes, and snippets.

@slayer
slayer / gist:fb299c846fedaeac9fef47d468da9526
Created October 13, 2016 20:23 — forked from evtuhovich/gist:1134998
Список вопросов для собеседования
Ruby
принципиальное различие скриптовых и “обычных” языков
3 принципа ООП
реализация множественного наследования в ruby
duck typing
многопоточность в ruby
Rails
что такое MVC и зачем это нужно
локига в контроллере, должна ли быть и почему
синхронные и асинхронные операции — предложить варианты решения

ruby-1.9.3-p448 cumulative performance patch for rbenv

(I guarantee nothing. No warranty I am not responsible blah blah blah. Seems to work great for me so far. Thanks to Tyler Bird who I forked this from.)

This installs a patched ruby 1.9.3-p448 with the railsexpress patchsets: https://github.com/skaes/rvm-patchsets

Requirements

@slayer
slayer / ree-1.8.7-2011.03
Last active December 17, 2015 07:19 — forked from josacar/gist:3767538
# export CFLAGS="-O2 -fno-tree-dce -fno-optimize-sibling-calls"
export CC=/usr/bin/gcc-4.4
require_gcc
build_package_disable_ssl2_tcmalloc() {
wget 'https://raw.github.com/gist/3767526/9f20aba9f0d8d232d08e14e754e620758330a8eb/gistfile1.diff'
patch -p1 < gistfile1.diff
@slayer
slayer / em-irb-console.rb
Created February 1, 2012 15:35 — forked from tmm1/em-irb-console.rb
networked irb server/client in EM
require 'rubygems'
require 'eventmachine'
module Console
PROMPT = "\n>> ".freeze
def post_init
send_data PROMPT
send_data "\0"
end
@slayer
slayer / rbenv-install-system-wide.sh
Created December 23, 2011 11:17
rbenv install and system wide install on Ubuntu to /opt/rbenv
# Update, upgrade and install development tools:
apt-get update
apt-get -y upgrade
apt-get -y install build-essential
apt-get -y install git-core
# Install rbenv
git clone git://github.com/sstephenson/rbenv.git /opt/rbenv
# Add rbenv to the path:
# The problem: In your Rails 3 project, you have a model Request that models a
# user's request for content related to a specific problem or topic. The user
# can tag her request with any number of words. These are modeled by a Tag class
# backed by a tags DB table. Since you want unique records per tag, you have a
# Tagging class backed by a taggings table. Taggings is a a many-to-many table
# with some additional information. Also, other models in the application
# besides requests can be tagged: The Tagging class defines a polymorphic
# relationship "taggable" with those models.
#
# So pretty soon you want to look up all the requests that are tagged with
# If your workers are inactive for a long period of time, they'll lose
# their MySQL connection.
#
# This hack ensures we re-connect whenever a connection is
# lost. Because, really. why not?
#
# Stick this in RAILS_ROOT/config/initializers/connection_fix.rb (or somewhere similar)
#
# From:
# http://coderrr.wordpress.com/2009/01/08/activerecord-threading-issues-and-resolutions/
@slayer
slayer / delayed_job
Created December 17, 2010 02:20 — forked from akmathur/delayed_job
#!/usr/bin/env ruby
# -*- ruby -*-
require 'rubygems'
require 'daemon-spawn'
RAILS_ROOT = File.expand_path(File.join(File.dirname(__FILE__), '..'))
class DelayedJobWorker < DaemonSpawn::Base
def start(args)
ENV['RAILS_ENV'] ||= args.first || 'development'
@slayer
slayer / .irbrc.rb
Created April 14, 2010 09:38 — forked from dekart/.irbrc.rb
#!/usr/bin/env ruby
require 'rubygems'
#require 'map_by_method' rescue nil
require 'pp'
# Enable tab-completion.
require 'irb/completion' rescue nil
# Enable prompt-less prompts
@slayer
slayer / gist:179611
Created September 2, 2009 08:35 — forked from morhekil/gist:179070
#!/usr/bin/env ruby
require File.dirname(__FILE__) + "/../../config/environment"
$running = true
$working = false
Signal.trap("TERM") do
$stderr.puts "#{Time.now.to_s(:db)}\tGot TERM, exiting..."
$running = false