Skip to content

Instantly share code, notes, and snippets.

Ian Crowther iancrowther

Block or report user

Report or block iancrowther

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
iancrowther /
Created Sep 3, 2018 — forked from douglas/
Update all git repositories under a base directory
# store the current dir
# Let the person running the script know what's going on.
echo "\n\033[1mPulling in latest changes for all repositories...\033[0m\n"
# Find all git repositories and update it to the master latest revision
for i in $(find . -name ".git" | cut -c 3-); do
iancrowther /
Created Oct 19, 2016 — forked from m14t/
Convert HTTPS github clones to use SSH
#-- Script to automate
REPO_URL=`git remote -v | grep -m1 '^origin' | sed -Ene's#.*(https://[^[:space:]]*).*#\1#p'`
if [ -z "$REPO_URL" ]; then
echo "-- ERROR: Could not identify Repo url."
echo " It is possible this repo is already using SSH instead of HTTPS."
iancrowther /
Created Jun 20, 2016 — forked from paulmillr/
Most active GitHub users (by contributions).

Most active GitHub users (

The count of contributions (summary of Pull Requests, opened issues and commits) to public repos at from Fri, 19 Jun 2015 15:17:38 GMT till Sun, 19 Jun 2016 15:17:38 GMT.

Only first 1000 GitHub users according to the count of followers are taken. This is because of limitations of GitHub search. Sorting algo in pseudocode:

  .filter(user => user.followers > 635)
iancrowther / lambda-not-anon.js
Created Oct 23, 2015 — forked from ericelliott/
The distinction between anonymous functions and lambdas in JavaScript.
View lambda-not-anon.js
// TL;DR - Lambda means "function used as data".
// Anonymous function means "function without a name".
// This is one of the relatively few cases where the Wikipedia definition of
// a word, while not entirely wrong, is misleading. Lambdas and anonymous
// functions are distinct ideas.
// These ideas are commonly confused because in many programming languages
// all lambdas are anonymous or vise verse.

from streams session

  • end-of-stream - specify a callback to be called when a stream ends (which is surpsingly hard to get right)
  • duplexify - compose a Duplex stream from a Readable and a Writable stream
  • pump - pipe streams together and close all of them if one of them closes
  • pumpify - combine an array of streams into a single duplex stream using pump and duplexify
  • through2 - tools for making Transform streams
  • from2 - tools for making Readable streams

from "participatory modules" session

iancrowther /
Last active Aug 29, 2015
An overview of international nodeschool day 2015

International Nodeschool 2015


Let me start by saying how grateful I am to everyone who contributed to this event. From comment to code, your contributions were essential in shaping the success of the day, so thank you, thank you, thank you.

Did everyone have a good time?

From where I was stood it looked like everyone was having a ball.


Image service - S3 client acess - 1652 ms should allow access to uploaded files by the app - 1041 ms should not allow web access to uploaded files - 392 ms should not allow an unauthorised user to access the bucket - 218 ms

Image service - upload limit - 972 ms should reject uploads if they are over 2MB - 652 ms should allow uploads if they are under 2MB - 320 ms

#uploadFileForPublicAccess - 341 ms

iancrowther /
Last active Aug 29, 2015
Nodeschool Organiser Checklist
  • read the participating guide
  • ensure attendees added to rollcall team
  • ensure organisers only are on the organisers team (clensing excercise)
  • record videos and be social
  • fill in the data collection form
  • hangout
  • buy swag
  • have fun
iancrowther /
Last active Aug 29, 2015
OSX Install Scripts
iancrowther /
Last active Aug 29, 2015
A collection of technology tips

A collection of technology tips

You can’t perform that action at this time.