Skip to content

Instantly share code, notes, and snippets.

View jezhumble's full-sized avatar

Jez Humble jezhumble

View GitHub Profile
# Copyright 2019 Google LLC.
# SPDX-License-Identifier: Apache-2.0
# This snippet shows you how to use Blob.generate_signed_url() from within compute engine / cloud functions
# as described here: https://cloud.google.com/functions/docs/writing/http#uploading_files_via_cloud_storage
# (without needing access to a private key)
# Note: as described in that page, you need to run your function with a service account
# with the permission roles/iam.serviceAccountTokenCreator
import os, google.auth
from google.auth.transport import requests

Inclusion Rider

I'm lucky enough to get asked to speak at a number of conferences, and I want to make sure I use that privilege to help improve the state of the industry. As a result I've put together a list to make sure the conferences I speak at reflect my values:

For all events

  • Code of Conduct: There must be a code of conduct that is clearly visible on the front page of the website, and which covers all conference participants including sponsors. The code of conduct must include details on who to contact and guidelines on enforcement and reporting. A good sample code of conduct is available at http://geekfeminism.wikia.com/wiki/Conference_anti-harassment/Policy
  • Speaker diversity: At least 40% of speakers (including keynote speakers) must be women or nonbinary folks, and if the conference is held in North America, Europe, or Australia/NZ, at least 5% must be of non-European origin. If you would like me to speak on a panel, there must be at least two women on the panel.
  • Bathrooms: There m
Continuous Delivery: The ability to get changes—features, configuration changes, bug fixes, experiments—into production or into the hands of users safely and quickly in a sustainable way.
DevOps movement: A cross-functional community of practice dedicated to the study of building, evolving and operating rapidly changing, secure, resilient systems at scale.
Continuous Delivery TLDR: make releases a boring, push-button activity that can be performed at any time.

Stevey's Google Platforms Rant

I was at Amazon for about six and a half years, and now I've been at Google for that long. One thing that struck me immediately about the two companies -- an impression that has been reinforced almost daily -- is that Amazon does everything wrong, and Google does everything right. Sure, it's a sweeping generalization, but a surprisingly accurate one. It's pretty crazy. There are probably a hundred or even two hundred different ways you can compare the two companies, and Google is superior in all but three of them, if I recall correctly. I actually did a spreadsheet at one point but Legal wouldn't let me show it to anyone, even though recruiting loved it.

I mean, just to give you a very brief taste: Amazon's recruiting process is fundamentally flawed by having teams hire for themselves, so their hiring bar is incredibly inconsistent across teams, despite various efforts they've made to level it out. And their operations are a mess; they don't real

@jezhumble
jezhumble / config.json
Created June 2, 2017 02:04
DORA bootstrap config
{
"vars": {
"@gray-base": "#000",
"@gray-darker": "lighten(@gray-base, 13.5%)",
"@gray-dark": "lighten(@gray-base, 20%)",
"@gray": "lighten(@gray-base, 33.5%)",
"@gray-light": "lighten(@gray-base, 46.7%)",
"@gray-lighter": "lighten(@gray-base, 93.5%)",
"@brand-primary": "#165F8C",
"@brand-success": "#5cb85c",
@jezhumble
jezhumble / inventory_vpcs.py
Last active October 9, 2019 05:52
List EC2, RDS and ElastiCache instances, grouped by VPC
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import argparse, sys, boto3
from colorama import Fore, Style
def count(my_list, my_key):
if my_key not in my_list:
return '0'
else:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
- -----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
ASBO Forecasting Authorization Decision
Product Owner: Jerome Fletcher | System Owner: Alla Seiffert
Thru:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
- -----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Apps.gov Authorization Decision
Product Owner: Andrew Stroup | System Owner: Andrew Stroup
Thru:

Keybase proof

I hereby claim:

  • I am jezhumble on github.
  • I am jezhumblegov (https://keybase.io/jezhumblegov) on keybase.
  • I have a public key whose fingerprint is E03B 7A79 5183 F146 C65A 1244 93D0 2589 8F3E D486

To claim this, I am signing this object:

@jezhumble
jezhumble / twitter_abuse.md
Last active August 29, 2015 14:07
A simple 3-step plan to prevent abuse on Twitter
  • Bayesian filter to detect potential abusers, filtering on words, length of time the user has been active, number of tweets a user has sent, who the user has tweeted to, # of spam reports against the user
  • Anyone who is tweeted to on a regular basis by potential abusers gets flagged (not publicly visible of course) as being a target
  • Anyone who tweets at someone who is a target and triggers the Bayesian filter gets auto-suspended and has to submit a form explaining why they should be unblocked