Skip to content

Instantly share code, notes, and snippets.

View rgreenjr's full-sized avatar

Ron Green rgreenjr

View GitHub Profile
# open the ssh configuration file
sudo vi /etc/ssh/sshd_config

Make the following changes to /etc/ssh/sshd_config:

# disable password authentication
PasswordAuthentication no
rgreenjr /
Created November 2, 2017 16:52
VIM Notes

select to end of line

v g _

split arguments

g ,
rgreenjr /
Last active January 22, 2024 05:54
Object Oriented Design Notes

Sandi Metz

  • Inheritance is not for sharing behavior
  • Active Nothing (Null Object Pattern)
    • Must believe in nothing
  • No such thing as one specialization
    • The new behavior is one thing and the original behavior is the other
    • Isolate the difference, name the concept, define the role, inject the players

Model Names

rgreenjr /
Last active December 8, 2022 02:10
PostgreSQL Upgrading
# Taken from
# Note: these steps assume installation with Homebrew.
# Initialize a new database, adding a .new suffix to the directory that Homebrew recommends.
initdb /usr/local/var/ -E utf8
# Run the upgrade script, providing the correct paths for the various flags.
rgreenjr /
Last active March 15, 2024 13:44
PostgreSQL Configuration Optimization

PostgreSQL Configuration Optimization


Only four values really matter:

  • shared-buffers: below 2GB: set it to 20% of full memory; below 32GB: 25% of your full memory.
rgreenjr / postgres_queries_and_commands.sql
Last active May 22, 2024 05:53
Useful PostgreSQL Queries and Commands
-- show running queries (pre 9.2)
SELECT procpid, age(clock_timestamp(), query_start), usename, current_query
FROM pg_stat_activity
WHERE current_query != '<IDLE>' AND current_query NOT ILIKE '%pg_stat_activity%'
ORDER BY query_start desc;
-- show running queries (9.2)
SELECT pid, age(clock_timestamp(), query_start), usename, query
FROM pg_stat_activity
WHERE query != '<IDLE>' AND query NOT ILIKE '%pg_stat_activity%'
rgreenjr / Git Cheat
Last active December 20, 2023 13:30
Git Cheat Sheet

Git Cheat Sheet

Common Commands

# stage all modified files being tracked
git add -u
rgreenjr / gutenberg_text2audio.rb
Created January 18, 2010 17:29
Converts Gutenberg text files into spoken audio files.
#!/usr/bin/env ruby -w
# Converts Gutenberg text files into spoken audio files.
require 'rubygems'
text = { |f| text = }
chapters = text.split(/^CHAPTER .*$/)
chapters.each_with_index do |chapter, index|
rgreenjr / goodreads_csv_filter.rb
Created January 18, 2010 17:25
Trims Goodreads CSV files so they import into Delicious Library essential data only.
#!/usr/bin/env ruby -w
# Trims Goodreads CSV files so they import into Delicious Library essential data only.
require 'rubygems'
require 'faster_csv'
path = ARGV.empty? ? "/Users/rgreen/Downloads/goodreads_export.csv" : ARGV[0]
rgreenjr / word_freq.rb
Created January 18, 2010 15:30
Script to count word frequency.
#!/usr/bin/env ruby -w
text =
words = text.split(/[^a-zA-Z]/)
freqs =
words.each { |word| freqs[word] += 1 }
freqs = freqs.sort_by { |x, y| y }
freqs.each { |word, freq| puts sprintf("%20s %s", word, freq.to_s) }