Skip to content

Instantly share code, notes, and snippets.

Jon de la Motte jondlm

Block or report user

Report or block jondlm

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@jondlm
jondlm / ensure-outlook.bash
Created Dec 18, 2017
Somtimes I forget to open Outlook in the morning, this helps as a cron task
View ensure-outlook.bash
#!/usr/bin/env bash
# vim: set syntax=sh
ps aux | grep -v "grep" | grep "Microsoft Outlook" > /dev/null
outlook_ret=$?
day=`date +%u`
# Make sure it's a weekday and Outlook is running
if [ "$day" -ge 1 -a "$day" -le 5 -a "$outlook_ret" -gt 0 ]; then
osascript -e 'display notification "Please start Outlook" with title "Nag Bot"'
@jondlm
jondlm / kdebug.bash
Last active Feb 20, 2019
Kubernetes Fuzzy Helper Scripts
View kdebug.bash
#!/usr/bin/env bash
# vim: set syntax=sh:
set -e
if ! hash kubectl 2>/dev/null; then echo "Please install \`kubectl\` before running this command (https://kubernetes.io/docs/tasks/tools/install-kubectl/)"; exit 1; fi
if ! hash fzf 2>/dev/null; then echo "Please install \`fzf\` before running this command (https://github.com/junegunn/fzf#installation)"; exit 1; fi
selection=`kubectl get pods --all-namespaces | grep -v 'NAMESPACE' | fzf --header "Select a pod..."`
namespace=`echo "$selection" | awk '{ print $1 }'`
pod=`echo "$selection" | awk '{ print $2 }'`
@jondlm
jondlm / express-headers.js
Last active Apr 25, 2017
A little node server that logs the most recent request and response headers
View express-headers.js
const express = require('express')
const app = express()
const util = require('util')
app.get('*', function (req, res) {
process.stdout.write('\033c')
console.log('Request headers:')
console.log(util.inspect(req.headers, { colors: true }))
res.send('test')
@jondlm
jondlm / git-stuff.md
Last active Oct 18, 2016
Some useful git stuff
View git-stuff.md

Git Stuff

A collection of git utilities and scripts I've found useful at least once.

Aliases

List the 30 most recent branches you've committed to.

brr = for-each-ref --count=30 --sort=-committerdate refs/heads/ --format='%(refname:short)'
View keybase.md

Keybase proof

I hereby claim:

  • I am jondlm on github.
  • I am jondlm (https://keybase.io/jondlm) on keybase.
  • I have a public key ASC_5JYWh3CFrnJz3NXg7TvFiSOro4iFH_34JiJARHnMGQo

To claim this, I am signing this object:

View webpack_bundle_analysis.go
// Make sure you have a `bundle.js` file in the current dir and run this like:
// # go run webpack_bundle_analysis.go | sort -n
package main
import (
"fmt"
"io/ioutil"
"regexp"
"strings"
@jondlm
jondlm / README.md
Last active Jan 3, 2018
React shallow render lifecycle breakdown
View README.md

React introduced shallow rendering in 0.13. This is an excellent feature that I wish was included earlier in React. It aims to solve the problem of unit testing components without going through a real, or jsdom mocked, DOM. I couldn't find any info online about what lifecycle events it actually fires. So I did some testing of my own. To reproduce, put component.js and test.js into a folder and run node test.js.

TLDR; shallow rendering only invokes the following lifecycle hooks (in order):

  1. getDefaultProps
  2. getInitialState
  3. componentWillMount stops here until re-render
  4. componentWillReceiveProps
  5. shouldComponentUpdate
  6. componentWillUpdate
@jondlm
jondlm / good-examples.js
Created Jul 4, 2015
Good logging examples
View good-examples.js
data: {
"event": "response",
"timestamp": 1436046421423,
"id": "1436046421423:jdelamotte:5282:ibpkyk17:10001",
"instance": "http://jdelamotte:8888",
"labels": [],
"method": "get",
"path": "/js/bundle.js",
"query": {},
"responseTime": 8,
View functions.js
// -------------------------------------
// Example 1 (function expression)
//
test(); // Won't work
var test = function () {
alert('Yolo');
};
@jondlm
jondlm / swe.md
Last active Aug 29, 2015
Basics of web development
View swe.md
You can’t perform that action at this time.