This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| def valid_json?(value) | |
| JSON.parse value | |
| true | |
| rescue JSON::ParserError, TypeError | |
| false | |
| end |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| alter database DATABASE_NAME charset=utf8 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| class MySingletonClass | |
| include Singleton | |
| def initialize | |
| ## Do some initializing | |
| end | |
| ## Your business logic | |
| end |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/usr/bin/env bash | |
| apt-get -y update | |
| apt-get -y install build-essential zlib1g-dev libssl-dev libreadline5-dev libyaml-dev | |
| cd /tmp | |
| wget ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p125.tar.gz | |
| tar -xvzf ruby-1.9.3-p125.tar.gz | |
| cd ruby-1.9.3-p125/ | |
| ./configure --prefix=/usr/local | |
| make | |
| make install |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # Disclaimer: this solution has been taken from the post: http://stackoverflow.com/a/5071198/784270 | |
| # navigate to the bundler gem and in lib/bundler/runtime.rb, | |
| # find the line that does Kernel.require and wrap it like this | |
| puts Benchmark.measure("require #{file}") { | |
| Kernel.require file | |
| }.format("%n: %t %r") | |
| # Add |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| require 'benchmark' | |
| name = 'my_cool_string' | |
| Benchmark.bmbm(10) do |x| | |
| x.report('name[0] hit') do | |
| 1_000_000.times { name[0] == 'm' } | |
| end | |
| x.report('name[0] miss') do | |
| 1_000_000.times { name[0] == 'y' } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| source 'https://rubygems.org' | |
| gem 'rack-reverse-proxy', require: 'rack/reverse_proxy' | |
| group :development do | |
| gem 'foreman' | |
| end |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| class MemoryCache | |
| DEFAULT_MAX_KEYS = 5000 | |
| attr_reader :data, :max_keys | |
| def initialize(config) | |
| @data = {} | |
| @max_keys = config[:max_cache_keys] || DEFAULT_MAX_KEYS | |
| @lock = Mutex.new |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # Currently, many times we are using ENV variables in a non-optimal way. | |
| # I'd like to explain some of the common use cases for those variables | |
| # and how we can use them in a way that we get the most out of it. | |
| # A common error is to assume that the variable has to be there, but it isn't | |
| # This happens when we use the ENV hash like this: | |
| ENV['SOME_KEY'] | |
| # In Ruby, if the key is missing, it will return `nil`, thus calling a method on it |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| YourApplication::Application.routes.draw do | |
| root to: 'home#index' | |
| get '/about' | |
| get '/login' => 'application#login' | |
| end | |
| ADDITIONAL_ROUTES = [:messages, :orders, :api, :admin] | |
| ADDITIONAL_ROUTES.each do |route_file| | |
| require "#{Rails.root}/config/routes/#{route_file}" | |
| end |
OlderNewer