Skip to content

Instantly share code, notes, and snippets.

Build that!

David Gil dgilperez

Build that!
View GitHub Profile
View appcast.xml
<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:sparkle="">
<title>Rosita - Coach de Longevidad Mayores 65</title>
<title>Version 0.1.10</title>
<pubDate>Thu, 30 Jul 2020 12:00:00 +0000</pubDate>
<enclosure url="" sparkle:version="0.1.10" sparkle:os="android" />
dgilperez /
Created May 12, 2020 — forked from Chandler/
Download Slack Channel/PrivateChannel/DirectMessage History
# MIT License
# Copyright (c) 2016 Chandler Abraham
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
dgilperez /
Created May 12, 2020 — forked from minniel/
Download Slack Channel/PrivateChannel/DirectMessage History
from slacker import Slacker
import json
import argparse
import os
import shutil
import copy
from datetime import datetime
# This script finds all channels, private channels and direct messages
# that your user participates in, downloads the complete history for
dgilperez / README.MD
Created Mar 26, 2020 — forked from lmarkus/README.MD
Extracting / Exporting custom emoji from Slack

Extracting Emoji From Slack!

Slack doesn't provide an easy way to extract custom emoji from a team. (Especially teams with thousands of custom emoji) This Gist walks you through a relatively simple approach to get your emoji out.

If you're an admin of your own team, you can get the list of emoji directly using this API: Once you have it, skip to Step 3

HOWEVER! This gist is intended for people who don't have admin access, nor access tokens for using that list.

Follow along...

dgilperez / springrole
Created Feb 14, 2019
springrole verification
View springrole
View gist:2286c7ff4d1a6f9531fac3f628ddb048

Pry Cheat Sheet

Command Line

  • pry -r ./config/app_init_file.rb - load your app into a pry session (look at the file loaded by
  • pry -r ./config/environment.rb - load your rails into a pry session


dgilperez / check.rb
Created Aug 26, 2018 — forked from christopher-b/check.rb
Canvas MySQL -> Postgres Migration
View check.rb
#!/usr/bin/env ruby
# Do sanity check on imported data by comparing the number of rows in each table
require 'pg'
require 'mysql2'
tables = %w( { list the tables to compare here })
p = PG.connect(dbname:'canvas', host: '', user: 'canvas_user')
View gist:b4341063c9cd2e2f0a3bf453558b7ade
# $> gem install octokit
# $> irb
require 'octokit'
client = 'whoami', password: 'whatamidoinghere')
client.pull_requests('user/repo_name', state: 'all', per_page: 100).each {|pr| p [pr.title, pr.body, pr.user.login].join("\n")};nil
# more pages?
# client.pull_requests('user/repo_name', state: 'all', per_page: 100, page: 2).each {|pr| p [pr.title, pr.body, pr.user.login].join("\n")};nil

(my response to

I haven't yet came across readily available resources for large-scale application architecture for Elixir apps. I found Programming Phoenix to be a good start for that though. And there's ~30 years of knowledge in the Erlang land :)

For web apps, I found the abstractions that Elixir/Phoenix provides to be really helpful. Indeed, the list below is somewhat ORM focused.

In the small, Ecto.Schema, Ecto.Query, Ecto.Changeset, and Phoenix.View allow me to build highly composable and side-effect free modules. I can have many schemas, changesets and queries all interacting with the same underlying DB table(s) if I want to. Most of the side-effects (through Ecto.Repo for DBs) are usually in the Phoenix.Controller (or other Plugs).

dgilperez / gist:e41da50eec00fd00448f1336e9828c87
Created May 7, 2017 — forked from sebboh/gist:f1dfe4f096746c45f3e9ea06a09743a0
Installing a Gem on Heroku from a Private GitHub Repo
View gist:e41da50eec00fd00448f1336e9828c87

Installing a Gem on Heroku from a Private GitHub Repo

Sometimes you want to use a gem on Heroku that is in a private repository on GitHub.

Using git over http you can authenticate to GitHub using basic authentication. However, we don't want to embed usernames and passwords in Gemfiles. Instead, we can use authentication tokens.

This method does not add your OAuth token to Gemfile.lock. It uses bundle config to store your credentials, and allows you to configure Heroku to use environment variables when deploying.

  1. Generate an OAuth token from GitHub