Skip to content

Instantly share code, notes, and snippets.

View olegykz's full-sized avatar
💭
🇺🇦

Oleg Yakovenko olegykz

💭
🇺🇦
View GitHub Profile
@olegykz
olegykz / gist:2404523
Created April 17, 2012 08:25
КОМПЬЮТЕРНАЯ БИБЛИЯ
1. В начеле было слово, и слово было 2 байта, а больше ничего не было.
2. И отделил Бог единицу от нуля, и увидел, что это хорошо.
3. И сказал Бог: да будут данные, и стало так.
4. И сказал Бог: да соберутся данные каждые в свое место, и создал дискеты, и винчестеры, и компакт-диски.
5. И сказал Бог: да будут компьютеры, чтобы было куда пихать дискеты, и винчестеры, и компакт-диски, и сотворил компьютеры, и нарек их хардом, и отделил хард от софта.
6. Софта же еще не было, но Бог быстро исправился, и создал программы большие и маленькие, и сказал им: плодитесь и размножайтесь, и заполняйте всю память.
7. Но надоело Ему создавать программы самому, и сказал Бог: создадим программиста по образу и подобию нашему,
и да владычествует над компьютерами,и над программами, и над данными. И создал Бог программиста,
и поселил его в своем ВЦ, чтобы работал в нем. И повел Он программиста к дереву каталогов, и заповедал:
из всякого каталога можешь запускать программы, только из каталога Windows не запускай, ибо маст
@olegykz
olegykz / gist:2960183
Created June 20, 2012 14:34
Шутки
1. Я знаю отличную шутку про UDP, но не факт, что она до вас дойдет.
2. Я знаю отличную шутку про TCP, но если она до вас не дойдет, то я повторю.
3. А кто знает отличную шутку про ARP?
4. А вы слышали шутку про ICMP?
5. Вам еще кто-то рассказывал шутку про STP?
6. Я подожду Антона и расскажу классную шутку про QoS.
7. Про MTU тоже есть кла
8. <шутка><смешная/><про>XML
9. А про FSMO роли шутить могут не более пяти человек.
10. Подождите все, я расскажу шутку о сети типа "шина".
@olegykz
olegykz / gist:4079178
Created November 15, 2012 15:28
Skipping asset compilation with capistrano
namespace :deploy do
namespace :assets do
task :precompile, :roles => :web, :except => { :no_release => true } do
begin
from = source.next_revision(current_revision) # <-- Fail here at first-time deploy
rescue
err_no = true
end
if err_no || capture("cd #{latest_release} && #{source.local.log(from)} vendor/assets/ app/assets/ | wc -l").to_i > 0
run %Q{cd #{latest_release} && #{rake} RAILS_ENV=#{rails_env} #{asset_env} assets:precompile}
@olegykz
olegykz / deploy.rb
Created November 15, 2012 15:34 — forked from stympy/deploy.rb
Skip asset pre-compilation when deploying if the assets didn't change
namespace :deploy do
namespace :assets do
task :precompile, :roles => :web, :except => { :no_release => true } do
begin
from = source.next_revision(current_revision) # <-- Fail here at first-time deploy because of current/REVISION absence
rescue
err_no = true
end
if err_no || capture("cd #{latest_release} && #{source.local.log(from)} vendor/assets/ app/assets/ | wc -l").to_i > 0
run %Q{cd #{latest_release} && #{rake} RAILS_ENV=#{rails_env} #{asset_env} assets:precompile}
@olegykz
olegykz / pretty_log_formatting.rb
Created December 20, 2012 15:04
Nice log formatter
# config/initializers/pretty_log_formatting.rb
class ActiveSupport::BufferedLogger
def formatter=(formatter)
@log.formatter = formatter
end
end
class Formatter
SEVERITY_TO_TAG_MAP = {'DEBUG'=>'meh', 'INFO'=>'fyi', 'WARN'=>'hmm', 'ERROR'=>'wtf', 'FATAL'=>'omg', 'UNKNOWN'=>'???'}
[user]
name = ****
email = ****
[github]
user = ****
token = ****
[color]
branch = auto
diff = auto
status = auto
@olegykz
olegykz / rails.rake
Created March 27, 2015 10:51
Capistrano 3 useful tasks to open ssh session and rails console
namespace :rails do
desc 'Open a rails console `cap [staging] rails:console [server_index default: 0]`'
task :console do
on roles(:app) do |server|
return if server != roles(:app)[ARGV[2].to_i]
puts "Opening a console on: #{host}...."
cmd = "ssh #{fetch(:ssh_options)[:user]}@#{host} -t 'source \"$HOME/.rvm/scripts/rvm\""\
" && cd #{fetch(:deploy_to)}/current && RAILS_ENV=#{fetch(:rails_env)} bundle exec rails console'"
@olegykz
olegykz / memory_consumption.rb
Created August 26, 2015 13:05
Check gems memory consumption and load time
require 'benchmark'
def require_and_profile(gemname = nil)
unless gemname
puts "%-20s: %10s | %10s | %10s" % ['gem','increment','total','time']
return
end
# checked on procps-ng (ps) version 3.3.3 and 3.3.9
memory_usage = `ps -o rss= -p #{Process.pid}`.to_i / 1024.0
# Customize BASH PS1 prompt to show current GIT repository and branch.
# by Mike Stewart - http://MediaDoneRight.com
# SETUP CONSTANTS
# Bunch-o-predefined colors. Makes reading code easier than escape sequences.
# I don't remember where I found this. o_O
# Reset
Color_Off="\[\033[0m\]" # Text Reset
# dump
# Betaflight / SPRACINGF3 3.1.7 Apr 3 2017 / 22:27:23 (e1c4b5c)
name -
resource BEEPER 1 C15
resource MOTOR 1 A06
resource MOTOR 2 A07
resource MOTOR 3 A11
resource MOTOR 4 A12
resource MOTOR 5 B08