Skip to content

Instantly share code, notes, and snippets.

@panozzaj
panozzaj / index.js
Created March 15, 2021 14:53
StackOverflow / StackExchange Greasemonkey script
// ==UserScript==
// @name StackExchange cleanup
// @description Remove some elements on StackExchange pages
// @include https://stackoverflow.com/*
// @include https://meta.stackoverflow.com/*
// @include https://superuser.com/*
// @include https://meta.superuser.com/*
// @include https://serverfault.com/*
// @include https://meta.serverfault.com/*
// @include https://askubuntu.com/*
@panozzaj
panozzaj / multitenant.md
Created December 24, 2019 02:54 — forked from woloski/multitenant.md
Multi Tenant Apps in Auth0

Multitenancy refers to a principle in software architecture where a single instance of the software runs on a server, serving multiple client-organizations (tenants)

Let's start by enumerating some multi tenant applications and understand how they handle it.

Slack

Authentication:

Thanks for sharing this, just bought the book based on this. I think I agree with this quote. I would also say (without knowing the surrounding context) that unplanned work / rework can also indicate structural/organizational issues.

IME, unplanned work can happen in an organization that is not set up to handle a sufficient amount of planned work / lacks coherent strategy / doesn't communicate that strategy well. Fire drills and "new" work often occur. This can just be because it takes time for information to propogate through the organization. Or because people at the edges doing the work don't have a clear priority (doing what is visible or for the squeakiest wheel, not what is ultimately most important). Even assuming no other dysfunction, if you are way over capacity on product/engineering (insufficient people/resources, requirements expire quickly) at some point you just churn due to organizational entropy. By the time you have figured out what to

@panozzaj
panozzaj / gist:e20553f82ae5685ef24d97dbc8f8a977
Created November 10, 2016 03:28
RubyConf 2016 plain-text schedule
Thursday, 11/10
9:30AM - 10:30AM
[A] Opening Keynote - Yukihiro Matsumoto (Matz)
10:40AM - 11:25AM
[A] Building a Better OpenStruct - Ariel Caplan
[B] (Learning and Teaching) Bootcamp Grads Have Feelings, Too - Megan Tiu
[C] Attention Rubyists: you can write video games - Cory Chamblin
[D] (Comparative Ruby) Building maintainable command-line tools with MRuby - Eric Hodel
@panozzaj
panozzaj / gist:f0e7a2e82d29deb7037e
Created April 21, 2015 17:29
Block StackExchange distracting content
// ==UserScript==
// @name SO cleanup
// @namespace panozzaj@gmail.com
// @version 1
// @grant none
// @include http://stackoverflow.com/*
// @include https://stackoverflow.com/*
// @include http://*.stackexchange.com/*
// @include https://*.stackexchange.com/*
// @require http://code.jquery.com/jquery-2.1.3.min.js
@panozzaj
panozzaj / convert.rb
Created April 13, 2015 22:28
AlphaSmart Neo file dump conversion script
#!/usr/bin/env ruby
# Takes a NEO import and converts it into more readable files and filenames
require 'fileutils'
(1..8).to_a.each do |filenum|
filename = "File #0#{filenum}.txt"
if File.exist?(filename)
FileUtils.cp filename, "#{filenum}.txt"

I was going to reply on Twitter with a cryptic response and a bunch of abbreviations, figured I would expand. Maybe the gist comments would faciliate people being more expansive. To me, Twitter is good for information sharing, bad at following conversations. I always miss a post or two.

I have a blog post half written (don't we all...) about doing things that are painful more often and trying to automate them, so this struck a chord. Also, at $JOB, the simpler the process can be for getting someone onboarded and for me to get new dependencies as they are introduced to the project, the better. So this is something I have been thinking about.

I liked Matt's original post and followups. Why aren't more internal / private projects as easy to get started with as popular open source projects? I looked at the Stringer docs today actually, and you don't even need to install anything, it is a click-one-button-and-some-change operation to get it running.

It is frustrating to me

@panozzaj
panozzaj / gist:1bfb37e8689a32f1b0fb
Created May 9, 2014 00:45
grpg state brainstorm
"town:King":
states:
initial:
condition: (gameState) ->
!gameState.magicKey and numTimesTalked is 0
transitions:
talk: "followUp"
action: ->
dialog [
"""
@panozzaj
panozzaj / gist:11311040
Created April 26, 2014 03:32
Jenkins + Jekyll Scheduled Post
#!/bin/bash -l
set -e
PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting
export PATH
export LANG="en_US.UTF-8"
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
" Vim global plugin for better digraph interactions...
" Maintainer: Damian Conway
" License: This file is placed in the public domain.
"##############################################################################
"## ##
"## To use: ##
"## ##
"## inoremap <expr> <C-K> BDG_GetDigraph() ##
"## ##