Skip to content

Instantly share code, notes, and snippets.

View azelenets's full-sized avatar
:octocat:
Impossible is nothing

Andrii Zelenets azelenets

:octocat:
Impossible is nothing
View GitHub Profile
@azelenets
azelenets / directory_upload.rb
Created January 15, 2016 20:48 — forked from milesmatthias/directory_upload.rb
S3 directory upload in ruby. Switched http://avi.io/blog/2013/12/03/upload-folder-to-s3-recursively to use the official aws ruby sdk.
#!/usr/bin/env ruby
require 'rubygems'
require 'aws-sdk'
class S3FolderUpload
attr_reader :folder_path, :total_files, :s3_bucket
attr_accessor :files
@azelenets
azelenets / array_validator.rb
Created January 6, 2017 09:34 — forked from ssimeonov/array_validator.rb
Enumerable and array validators for ActiveModel::Validations in Rails. Especially useful with document-oriented databases such as MongoDB (accessed via an ODM framework such as Mongoid).
# Syntax sugar
class ArrayValidator < EnumValidator
end
@azelenets
azelenets / README.md
Created February 13, 2017 07:39 — forked from denji/README.md
Remove settings/CLI for macOS (OS X) – DataGrip, AppCode, CLion, Gogland, IntelliJ, PhpStorm, PyCharm, Rider, RubyMine, WebStorm

Quick uninstall JetBrains settings:

curl -sL https://gist.github.com/denji/9731967/raw/jetbrains-uninstall.sh | bash -s

Quick backup JetBrains settings:

curl -sL https://gist.github.com/denji/9731967/raw/jetbrains-backup.sh | bash -s
@azelenets
azelenets / ffmpeg_install.md
Created May 31, 2017 09:33 — forked from jmsaavedra/ffmpeg_install.md
Install FFmpeg on a Linux Box

###Install FFmpeg via CLI on Linux box

These steps walk through installing a static binary of any ffmpeg version on to your linux machine. If you want to compile from source, there are several ways to do so. Here's the official guide. Tested and works on an AWS EC2 Ubuntu instance, but should work on any Linux machine.

  • SSH into your instance and become root
@azelenets
azelenets / custom_array_matchers.rb
Created December 18, 2017 14:25 — forked from bunnymatic/custom_array_matchers.rb
RSpec Matchers for increasing/decreasing array tests. Useful when sort may not be the easiest way to do things.
RSpec::Matchers.define :be_monotonically_increasing do
match do |actual|
derivative = actual.each_cons(2).map{|x, y| y <=> x}
derivative.all?{|v| v >= 0}
end
failure_message_for_should do |actual|
"expected array #{actual.inspect} to be monotonically increasing"
end
@azelenets
azelenets / rubocop_pre_commit_hook
Last active March 23, 2018 11:07
Ruby style guide git pre-commit hook using Rubocop as the style guide checker. Only runs on staged ruby files that have been added and/or modified.
#!/usr/bin/env ruby
require 'english'
require 'rubocop'
ADDED_OR_MODIFIED = /A|AM|^M/.freeze
changed_files = `git status --porcelain`.split(/\n/).
select { |file_name_with_status|
file_name_with_status =~ ADDED_OR_MODIFIED
@azelenets
azelenets / meta-tags.md
Created March 3, 2020 11:35 — forked from lancejpollard/meta-tags.md
Complete List of HTML Meta Tags

Copied from http://code.lancepollard.com/complete-list-of-html-meta-tags/

Basic HTML Meta Tags

<meta name="keywords" content="your, tags"/>
<meta name="description" content="150 words"/>
<meta name="subject" content="your website's subject">
<meta name="copyright"content="company name">
<meta name="language" content="ES">
@azelenets
azelenets / active_admin.rb
Created August 17, 2020 08:09 — forked from jasper502/active_admin.rb
Active Admin, Devise and Pundit
# /config/initializers/active_admin.rb
ActiveAdmin.setup do |config|
# == User Authentication
#
# Active Admin will automatically call an authentication
# method in a before filter of all controller actions to
# ensure that there is a currently logged in admin user.
#
# This setting changes the method which Active Admin calls