Skip to content

Instantly share code, notes, and snippets.


Steven G. Harms sgharms

View GitHub Profile
View migration-down.rb
class AClassicPattern < ActiveRecord::Migration
def self.up
raise ObiWan, "You're my only hope."
sgharms /
Created May 3, 2012 — forked from zoras/
Getting rid of nokogiri segfaults: May 3 2012

First diagnose which version of libxml2 you're using:

bundle exec nokogiri -v

If you have 2.7.3 listed somewhere, you're in bad waters (known to segfault). Install this:

brew update
brew install libxml2
brew install libxslt
View dci_example.rb
#!/usr/bin/env ruby
class Hero
attr_reader :name, :provenance, :hit_points
def initialize(name, prov, occupation_role, init_hit_points=nil)
@name = name
@provenance = prov
@occupation_role = occupation_role
@hit_points = init_hit_points || 1;
View mocha_examples.rb
# Mocking a class method
product =
assert_equal product, Product.find(1)
# Mocking an instance method on a real object
product =
View http.rb
# My Thoughts on Greppability
# The code certainly *seems* greppable but let me stress the greppability a bit.... ;)
# ➜ 7390184 git:(master) ✗ ack put http.rb
# :put,
# Comment #1
# ==========

A lot of these are outright stolen from Edward O'Campo-Gooding's list of questions. I really like his list.

I'm having some trouble paring this down to a manageable list of questions -- I realistically want to know all of these things before starting to work at a company, but it's a lot to ask all at once. My current game plan is to pick 6 before an interview and ask those.

I'd love comments and suggestions about any of these.

I've found questions like "do you have smart people? Can I learn a lot at your company?" to be basically totally useless -- everybody will say "yeah, definitely!" and it's hard to learn anything from them. So I'm trying to make all of these questions pretty concrete -- if a team doesn't have an issue tracker, they don't have an issue tracker.

I'm also mostly not asking about principles, but the way things are -- not "do you think code review is important?", but "Does all code get reviewed?".

layout title description tags
SQL Style Guide
A guide to writing clean, clear, and consistent SQL.


View DigitalOcean_NoVNC_Paste.js
// This will open up a prompt for text to send to a console session on digital ocean
// Useful for long passwords
(function () {
var t = prompt("Enter text to be sent to console, (This wont send the enter keystroke)").split("");
function f() {
var character = t.shift();
var i=[];
var code = character.charCodeAt();
var needs_shift = "!@#$%^&*()_+{}:\"<>?~|".indexOf(character) !== -1
sgharms / vocabulary-jsonld.json
Created Oct 3, 2018 — forked from stain/vocabulary-jsonld.json
Example of how a simple OWL ontology / RDFS vocabulary could be defined with JSON-LD, defining the meaning of properties and classes. The second file shows the RDF triples of the vocabulary by using the JSON-LD sandbox. As a visualization - see…
View vocabulary-jsonld.json
{ "@context": {
"rdf": "",
"rdfs": "",
"owl": "",
"express": "",
"defines": {
"@reverse": "rdfs:isDefinedBy"
"propertyOf": {
"@id": "rdfs:domain",
sgharms / netrw.txt
Created Jan 15, 2021 — forked from danidiaz/netrw.txt
Vim's netrw commands.
View netrw.txt
--- ----------------- ----
Map Quick Explanation Link
--- ----------------- ----
< <F1> Causes Netrw to issue help
<cr> Netrw will enter the directory or read the file |netrw-cr|
<del> Netrw will attempt to remove the file/directory |netrw-del|
<c-h> Edit file hiding list |netrw-ctrl-h|
<c-l> Causes Netrw to refresh the directory listing |netrw-ctrl-l|
<c-r> Browse using a gvim server |netrw-ctrl-r|
<c-tab> Shrink/expand a netrw/explore window |netrw-c-tab|