Skip to content

Instantly share code, notes, and snippets.

@strzibny
strzibny / stimulus.md
Created October 26, 2018 17:33 — forked from mrmartineau/stimulus.md
Stimulus cheatsheet
@romanitalian
romanitalian / questions_for_interview.md
Last active June 19, 2021 18:22
Questions for interview - Вопросы для собеседования
Вопросы по шаблонам проектирования:
  • Почему глобальные объекты и статика — это зло? Можете показать на примере кода?
  • Расскажите об инверсии управления и как она улучшает организацию кода.
  • Закон Деметры (Принцип минимальной информированности) гласит, что каждый программный модуль должен обладать ограниченным знанием о других модулях и должен взаимодействовать только с непосредственными «друзьями» (иногда его формулируют как «Не разговаривай с незнакомцами»). Можете написать код, который нарушает этот принцип? Почему у него плохая организация и как её исправить?
  • Active-Record — шаблон проектирования, который поощряет внедрение в сам объект функций, таких как Insert, Update и Delete, и свойств, которые соответствуют столбцам некоей базовой таблицы в базе данных. По вашему мнению и опыту, какие ограничения и подводные камни у этого шаблона?
  • Data-Mapper — шаблон проектирования, который поощряет использование слоя преобразователей (mappers), перемещающих данные между объектами и базой данных, в то же
require 'benchmark'
require 'benchmark/memory'
require 'dry-struct'
require 'dry-initializer'
require 'virtus'
require 'shallow_attributes'
require 'active_data'
require 'active_model'
require 'benchmark/ips'
fix for hotkeys not functional in non-latin keyboard layout in 13.10 / 14.04
tested on ubuntu 14.04, jvm7 and rubymine 6.3
sudo add-apt-repository ppa:attente/java-non-latin-shortcuts
sudo apt-get update
sudo apt-get dist-upgrade
restart unity-settings-daemon
now ctrl+c, ctrl-v etc should work in most java applications like IDEA, RubyMine IDE even on russian keyboard layout
@the-teacher
the-teacher / yandex_translit.rb
Last active November 21, 2020 19:18
Ruby, Rails, Транслитерация для Яндекса, yandex translit
# encoding: utf-8
# Russian for Yandex. Based on:
# (c) Yaroslav Markin, Julian "julik" Tarkhanov and Co
# https://github.com/yaroslav/russian/blob/master/lib/russian/transliteration.rb
# WARN я не очень согласен с правилом для буквы Щ (SHH)- поэтому используется SCH
# SAVE IT HERE:
# :rails_root/config/locales/yandex_translit.rb
@skranz
skranz / s_dplyr
Created March 21, 2014 07:48
Wrappers to dplyr's data modification functions like arrange, select,... that work with string arguments.
# Helper functions that allow string arguments for dplyr's data modification functions like arrange, select etc.
# Author: Sebastian Kranz
# Examples are below
#' Modified version of dplyr's filter that uses string arguments
#' @export
s_filter = function(.data, ...) {
eval.string.dplyr(.data,"filter", ...)
}
@okunishinishi
okunishinishi / Remove all git tags
Created March 8, 2014 03:12
Delete all git remote tags
#Delete local tags.
git tag -l | xargs git tag -d
#Fetch remote tags.
git fetch
#Delete remote tags.
git tag -l | xargs -n 1 git push --delete origin
#Delete local tasg.
git tag -l | xargs git tag -d
@the-teacher
the-teacher / prepend_view_path.rb
Created January 14, 2014 09:29
config/initializers/action_mailer_extensions.rb:
module ActionMailer
class Base
class_inheritable_accessor :view_paths
def self.prepend_view_path(path)
view_paths.unshift(*path)
ActionView::TemplateFinder.process_view_paths(path)
end
def self.append_view_path(path)
@bradmontgomery
bradmontgomery / install-comodo-ssl-cert-for-nginx.rst
Last active April 1, 2024 11:21
Steps to install a Comodo PositiveSSL certificate with Nginx.

Setting up a SSL Cert from Comodo

I use Namecheap.com as a registrar, and they resale SSL Certs from a number of other companies, including Comodo.

These are the steps I went through to set up an SSL cert.

Purchase the cert

@nhance
nhance / method_logger.rb
Created September 6, 2012 12:58
Rails compatible method logging. Use this to log all calls to instance methods of a class to the log.
Model.new.foo