Skip to content

Instantly share code, notes, and snippets.

Chris Jamieson jamiesoncj

Block or report user

Report or block jamiesoncj

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
View Abbey.json
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View Abbey.json
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
jamiesoncj /
Created Jan 13, 2016
Overview of why checklists are great, and how to make good checklists

Why use checklists?

According to Atul Gawande:

The primary aim of a checklist is to prevent human failure, either from ignorance (you don't know what you don't know) or ineptitude (knowledge is applied inconsistently or incorrectly).

The secondary aim of a checklist is to force people to talk to each other and foster teamwork. This is known as "activation phenomenon": giving people a chance to say something at the start of a procedure seems to activate their sense of participation and responsibility and their willingness to speak up.

What makes a good checklist?

  1. Define clear pause point at which the checklist is supposed to be used.
jamiesoncj / proxy_handler.php
Created Oct 18, 2015
Random proxy rotation
View proxy_handler.php
// suggest buying proxies from - I found this to be an excellent service and well-priced too.
// function returns a keyed array of proxy info
// if you want you can pass a specific ID in (for instand if you want to use the same proxy for a sequence of calls
function custom_proxy_handler_get_proxy($proxy_id = 0)
$all_proxies = array(
jamiesoncj /
Created Oct 7, 2015
Segment available integrations

The following is a list of integrations available via Segment as at 7th Oct 2015

  • Facebook Conversions
  • Google Analytics
  • Google Tag Manager
  • GoSquared
  • Hello Bar
  • Intercom
  • Lucky Orange
  • MailChimp
View gist:e326e73b2ee4a0f69f37
## Ubuntu
- Install from Live DVD
## Dev tools
- Sublime
- Git
- Heroku
- Meteor
jamiesoncj / gist:b0bded976eb8c60b44ea
Created Mar 24, 2015
Python convert from unicode
View gist:b0bded976eb8c60b44ea
# original from
def convert_from_unicode(input):
if isinstance(input, dict):
return dict((convert_from_unicode(key), convert_from_unicode(value)) for key, value in input.iteritems())
elif isinstance(input, list):
return [convert_from_unicode(element) for element in input]
elif isinstance(input, unicode):
return input.encode('utf-8')
return input
jamiesoncj / gist:06e06dc16680fde2e8b3
Created Mar 24, 2015
Message thread query syntax mongolab
View gist:06e06dc16680fde2e8b3
"_id": {
"$oid": "5507785bd4a87b03003f5c5b"
View app.js
var $ = document.getElementById.bind(document);
var $$ = document.querySelectorAll.bind(document);
var App = function($el){
this.$el = $el;
View gist:f595e77f9096a829a546

Some general reading and resources you may find helpful

When people ask me to give them advice about getting into startups, I direct them to these bits of writing.

There is loads of stuff out there which can help get an understanding of how "startups" are different from other service businesses, and how to approach trying to start one. Here are my top picks:

You can’t perform that action at this time.