This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# Since we're dealing with dd, abort if any errors occur | |
set -e | |
TEST_FILE=${1:-dd_obs_testfile} | |
[ -e "$TEST_FILE" ]; TEST_FILE_EXISTS=$? | |
TEST_FILE_SIZE=134217728 | |
# Header |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# Since we're dealing with dd, abort if any errors occur | |
set -e | |
TEST_FILE=${1:-dd_ibs_testfile} | |
if [ -e "$TEST_FILE" ]; then TEST_FILE_EXISTS=$?; fi | |
TEST_FILE_SIZE=134217728 | |
# Exit if file exists |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Architectural Assumptions | |
// * Objectives don't align to other Objectives, they should be aspirational/motivational and unique | |
// * The total progress of an Objective averages this.keyResultsProgress + linked.keyResultsProgress | |
// * Mapping key results to parent KRs is strictly optional (although that is sort of the point!) | |
// * KRs may inherit multiple alignments but can only ever align themselves to a single parent | |
// For a good answer as to why we want one-to-many see the answer of "Can I align to multiple | |
// objectives?" taken from here: https://www.perdoo.com/blog/okr-and-alignment/ | |
// Note: linking cells in sheets is trivial, so that gets around typical inheritance type problems. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Open up the desired channel in the Slack web interface and run the following to generate display name/id pairs | |
const channelMembers = members = document.querySelectorAll('#channel_page_all_members div a') | |
const idNamePairs = {} | |
members.forEach( (div) => { | |
const name = div.children[2].firstElementChild.innerHTML | |
idNamePairs[name] = div.getAttribute('data-member-id') | |
}) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Zap Settings | |
// 1 use GitHub webhooks to send review request notifications to Zapier | |
// 2 apply text filter: action must exactly match "review_requested" | |
// 3 run some JavaScript (i.e. this script) | |
// 4 send a message to a channel (not a direct message), as a bot | |
// 5 use a custom value for the channel ID which takes the output channelId of this script | |
const reviewerName = inputData.reviewer.toLowerCase() | |
const requesterName = inputData.requester.toLowerCase() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// remove the first instance of an item inside an array (extends native array object) | |
if (!Array.prototype.remove) { | |
Array.prototype.remove = function remove (item) { // eslint-disable-line no-extend-native | |
if (!(this || Array.isArray(this))) { | |
throw new TypeError() | |
} | |
if (this.indexOf(item) !== -1) { | |
this.splice(this.indexOf(item), 1) | |
return this |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Calculate Triangle Possibility From Edges | |
// given a set of edges from 0 to N calculate if we can make at least one triangle from them | |
function triangleFromLengths(a) { | |
// the trick here is to sort the edges into ascending order | |
// given a = [10, 2, 5, 1, 8, 20], when sorted, we get [1, 2, 5, 8, 10, 20] | |
// ascending order guarantees that every value that suceedes another is either the same size or greater (A[0] <= A[1]) | |
// this means that if the sum of any two edges preceeding a third is greater than that third (i.e. if 5 + 8 > 10) | |
// the triangle inequality theorem will hold true: https://www.wikihow.com/Determine-if-Three-Side-Lengths-Are-a-Triangle | |
// since: 5 + 8 > 10 && 8 + 10 > 5 && 5 + 10 > 8 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// PRIMITIVES (JavaScript -- 7) | |
// boolean null undefined number string symbol object | |
// FACTORY | |
// The Factory Pattern is a little dated (ES6 classes offer a pretty pain free way of defining classes and using default | |
// constructors with the 'new' keyword) however they do still see some use in modern web development and automation. | |
// Factories can be especially useful when designed to return objects/data structures common to certain test operations | |
// within an automation suite (i.e. mocking an object used to fill out all form fields with valid data). | |
function Car (options) { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env bash | |
if [ $# -eq 1 ] ; then | |
NAME=$1 | |
else | |
echo "Please pass exactly one argument, which is the name of the patch file" | |
exit 1 | |
fi | |
git add . |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env python | |
# please ensure python means python3 on your system | |
# the file can be any binary file that contains a JPG image | |
# note that it's hungry and doesn't chunk the read so careful with large files | |
# usage: extract-jpg file_name | |
import sys |