Skip to content

Instantly share code, notes, and snippets.

require 'equalizer'
module Checkproc
InvalidValueError = Class.new(StandardError) { include Equalizer.new(:message) }
class Composite
attr_reader :left
attr_reader :right
def initialize(left, right)
@mxlje
mxlje / ssl.md
Last active January 10, 2022 02:03
SSL Certificate Commands

These commands are needed every time you want to generate a new certificate signing request to give to an authority in order for them to generate and sign a certificate for you.

https://letsencrypt.org/ solves a lot of the pain involved with SSL certs, but sometimes you still need to go the "old school" route. I constantly forget how this stuff works, so I collected the most important commands (and what they do) here for easy copy & paste.

Generate new private key

@zosiu
zosiu / Instagram_real_time_updates_controller.rb
Created May 19, 2015 14:43
Instagram Real Time Update w/ Rails
class InstagramRealTimeUpdatesController < ActionController::Base
def callback
case request.method_symbol
when :get
render text: Instagram.meet_challenge(params, ENV['INSTAGRAM_VERIFY_TOKEN'])
when :post
Instagram.process_subscription(request.body.read) do |handler|
handler.on_user_changed do |user_id, data|
media_id = (data['data'] || {})['media_id']
InstagramJob.perform_later user_id, media_id
# speed up pluck
class ActiveRecord::Relation
class RailsDateTimeDecoder < PG::SimpleDecoder
def decode(string, tuple=nil, field=nil)
if Rails.version >= "4.2.0"
@caster ||= ActiveRecord::Type::DateTime.new
@caster.type_cast_from_database(string)
else
@trekdemo
trekdemo / case_eg.rb
Created April 7, 2015 14:46
How to mimic fall through with ruby
# Usage:
# foo('Near the intersection of Lexington Ave and E 40th St')
# # => ['Lexington Ave', 'E 40th St']
# foo('Between Lexington Ave and E 40th St')
# # => ['Lexington Ave', 'E 40th St']
#
def foo(value)
case value
when (re = /^Near the intersection of (.*) and (.*)$/)
when (re = /^Between (.*) and (.*)$/)
@addyosmani
addyosmani / README.md
Last active July 2, 2025 14:29 — forked from 140bytes/LICENSE.txt
108 byte CSS Layout Debugger

CSS Layout Debugger

A tweet-sized debugger for visualizing your CSS layouts. Outlines every DOM element on your page a random (valid) CSS hex color.

One-line version to paste in your DevTools

Use $$ if your browser aliases it:

~ 108 byte version

@jirutka
jirutka / -README.md
Last active October 31, 2023 09:07
How to use terminal on Windows and don’t go crazy…

How to use terminal on Windows without going crazy…

Windows is really horrible system for developers and especially for devops. It doesn’t even have a usable terminal and shell, so working with command line is really pain in the ass. If you really don’t want to switch to any usable system (OS X, Linux, BSD…), then this guide should help you to setup somewhat reasonable environment – usable terminal, proper shell, ssh client, git and Sublime Text as a default editor for shell.

Install stuff

  1. Download and install Git for Windows* with:
    • [✘] Use Git from the Windows Command Prompt
  • [✘] Checkout as-is, commit Unix-style line endings
@Filirom1
Filirom1 / README.md
Last active August 29, 2015 14:04
What happens when you create an application on OpenShift.

What happens when you create an application on OpenShift.

             __________                __________
            |          |     mco      |          |__
rhc ----->  |  Broker  |  --------->  |   Node   |  |__
            |__________| \            |__________|  |  |
                  /\     \  --------->   |__________|  |
                  |       \ --------->      |__________|
             _____|____ 

| |

@smarterclayton
smarterclayton / openshift_system_design_v3.md
Last active August 29, 2015 14:03
OpenShift 3.x System Design
@lelandbatey
lelandbatey / whiteboardCleaner.md
Last active May 20, 2025 13:11
Whiteboard Picture Cleaner - Shell one-liner/script to clean up and beautify photos of whiteboards!

Description

This simple script will take a picture of a whiteboard and use parts of the ImageMagick library with sane defaults to clean it up tremendously.

The script is here:

#!/bin/bash
convert "$1" -morphology Convolve DoG:15,100,0 -negate -normalize -blur 0x1 -channel RBG -level 60%,91%,0.1 "$2"

Results