Skip to content

Instantly share code, notes, and snippets.

View alejandrobabio's full-sized avatar
🏠
Working from home

Alejandro Babio alejandrobabio

🏠
Working from home
View GitHub Profile
@alejandrobabio
alejandrobabio / app.Dockerfile
Last active July 16, 2023 20:06 — forked from satendra02/app.DockerFile
docker+rails+puma+nginx+postgres (Production ready)
FROM ruby:2.3.1
# Install dependencies
RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs
# Set an environment variable where the Rails app is installed to inside of Docker image:
ENV RAILS_ROOT /var/www/app_name
RUN mkdir -p $RAILS_ROOT
# Set working directory, where the commands will be ran:
@alejandrobabio
alejandrobabio / install-vim-8-with-python-ruby-lua-ubuntu.sh
Created March 22, 2019 11:21 — forked from erickpatrick/install-vim-8-with-python-ruby-lua-ubuntu.sh
Install Vim 8 with Python, Python 3, Ruby (2.5) and Lua support on Ubuntu
# remove current vim
sudo apt-get remove --purge vim vim-runtime vim-gnome vim-tiny vim-gui-common
# removes current link for vim
sudo rm -rf /usr/local/share/vim /usr/bin/vim
# add ppa for newest version of ruby (currently, as of 06/06/2017, ruby v2.4)
sudo apt-add-repository ppa:brightbox/ruby-ng
sudo apt-get update

Keybase proof

I hereby claim:

  • I am alejandrobabio on github.
  • I am alejandrobabio (https://keybase.io/alejandrobabio) on keybase.
  • I have a public key whose fingerprint is 98F7 03BC F3B8 EF14 3C60 F3D7 E618 5CEC C03F FA24

To claim this, I am signing this object:

@alejandrobabio
alejandrobabio / README-Template.md
Created December 15, 2017 18:16 — forked from PurpleBooth/README-Template.md
A template to make good README.md

Project Title

One Paragraph of project description goes here

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisites

@alejandrobabio
alejandrobabio / gist:4578ed310cb4a16cea7902f8f454a99e
Last active December 11, 2017 12:09
Using flat_map to flatten a nested array
flat = (l = ->(x) { x.flat_map {|e| Array === e ? l.(e) : e } })
flat.([1, 2, 3, [4, 5, [6], [ ] ] ])
#==> [1,2,3,4,5,6]
@alejandrobabio
alejandrobabio / application.html.slim
Last active December 8, 2017 15:36
dry-web-roda & sprockets
doctype html
html
head
link rel="stylesheet" href=asset("application.css")
script rel="javascript" type="text/javascript" src=asset("ng_application.js")
body
== yield
@alejandrobabio
alejandrobabio / symbolize.rb
Created November 29, 2017 11:37
Recursive lambda that symbolize keys of a Hash
Symbolize = (l = ->(h) { h.inject({}) { |m, (k,v)| m[(String === k ? k.to_sym : k)] = (Hash === v ? l.(v) : v); m }})
# Example:
hash = { 'task' => { 'description' => 'Ab@ @example @cd', 'target' => { 'label' => 'cd' } } }
Symbolize.(hash)
# => { :task => { :description => "Ab@ @example @cd", :target => { :label => "cd" } } }

Business Logic / Domain Model structures for Ruby, Rails

Deploying to Heroku

  1. Deploy the app to heroku following heroku normal instructions (add link to heroku help)

  2. Set heroku environment variables

    Make sure all the options in config.yml are properly set then run:

     bundle exec rake heroku:config
    
@alejandrobabio
alejandrobabio / hn_seach.js
Created August 17, 2016 14:21 — forked from kristopolous/hn_seach.js
hn job query search
function query() {
var
// HN is done with very unsemantic classes.
job_list = Array.prototype.slice.call(document.querySelectorAll('.c5a,.cae,.c00,.c9c,.cdd,.c73,.c88')),
query_list = Array.prototype.slice.call(arguments),
shown = 0, total = job_list.length;
// Traverses up the dom stack trying to find a match of a specific class
function up_to(node, klass) {
if (node.classList.contains(klass)) {