Skip to content

Instantly share code, notes, and snippets.

View cmbankester's full-sized avatar

Christian Bankester cmbankester

  • Immense Networks
  • Baton Rouge, LA
View GitHub Profile
function scanRemove(cursor, prefix, count) {
return redis
.scan(cursor, 'MATCH', `${prefix}*`, 'COUNT', count)
.then(([cur, keys]) => redis.del(keys).then(() => Promise.resolve(cur)))
.then(cur => (cur !== 0 && cur !== '0') ? scanRemove(cur, prefix, count) : Promise.resolve());
}
function removeAllMatching(prefix, count=10) {
return scanRemove(0, prefix, count)
.catch(err => {throw new Error(`Scan-remove failed: ${err.message}`);});
@cmbankester
cmbankester / desk.rb
Last active November 24, 2015 18:05
Desk Homebrew Installer
class Desk < Formula
desc "Lightweight workspace manager for the shell"
homepage "https://github.com/jamesob/desk"
url "https://github.com/jamesob/desk/archive/v0.3.1.tar.gz"
sha256 "b687e2cfa742f763d689391f67a5b5225324e282a0fed100487b1570988d7758"
def install
bin.install "desk"
end
@cmbankester
cmbankester / ideas.md
Last active November 24, 2015 22:05
Ideas

Ideas

Sites

  • redstickmetal.com
    • BR/NO/LA metal scene
      • Bands
      • Events
      • Blog?
#!/bin/sh
wget http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz
tar xzvf yaml-0.1.4.tar.gz
cd yaml-0.1.4
./configure --prefix=/usr/local
make
make install
cd
wget http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p392.tar.gz
tar xzvf ruby-1.9.3-p392.tar.gz
@cmbankester
cmbankester / gist:4356146
Last active December 10, 2015 01:09
Install rbenv+ruby-build+1.9.3-p327
#!/bin/sh
git clone git://github.com/sstephenson/rbenv.git ~/.rbenv
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
exec $SHELL -l
git clone git://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
exec $SHELL -l
rbenv install 1.9.3-p374
@cmbankester
cmbankester / example.md
Last active January 5, 2016 21:44
Fish Shell Function Description Function
> ~ func-description func-description
Gets the description of a function> ~ 
@cmbankester
cmbankester / USAGE.md
Last active January 8, 2016 19:17
Rails Validator for Uniqueness Among Records Unmarked for Destruction
class Foo < ActiveRecord::Base
  belongs_to :bar, inverse_of: :foos
  validates :some_attribute,
            unmarked_for_destruction_uniqueness: {
                parent: :bar
              , children: :foos
              # , message: "Some message"
            }
end
@cmbankester
cmbankester / bug.rb
Last active October 5, 2016 17:44
Ruby file showing a potential bug with using scoped+argumented has_many :through in Rails 5
unless File.exist?('Gemfile')
File.write('Gemfile', <<-GEMFILE)
source 'https://rubygems.org'
gem 'rack', github: 'rack/rack'
gem 'rails', github: 'rails/rails'
gem 'sqlite3'
GEMFILE
system 'bundle'
end
@cmbankester
cmbankester / keybase.md
Created April 3, 2017 15:40
GitHub Verification for Keybase

Keybase proof

I hereby claim:

  • I am cmbankester on github.
  • I am cmbankester (https://keybase.io/cmbankester) on keybase.
  • I have a public key ASCyTmwo_SDYj2aJwZ4mrlYFnknPoxzR4gkAndEh77DMqQo

To claim this, I am signing this object:

@cmbankester
cmbankester / install.sh
Last active August 16, 2017 20:32
Nginx w/ Passenger & Ngx Pagespeed
# Install some deps with yum
yum install -y gcc openssl-devel libyaml-devel libffi-devel readline-devel zlib-devel gdbm-devel ncurses-devel libcurl-devel
# Install ngx_pagespeed
cd /usr/local/src
NPS_VERSION=1.9.32.2
wget https://github.com/pagespeed/ngx_pagespeed/archive/release-${NPS_VERSION}-beta.zip
unzip release-${NPS_VERSION}-beta.zip
cd ngx_pagespeed-release-${NPS_VERSION}-beta/
wget https://dl.google.com/dl/page-speed/psol/${NPS_VERSION}.tar.gz