Skip to content

Instantly share code, notes, and snippets.

View slashdotdash's full-sized avatar

Ben Smith slashdotdash

View GitHub Profile
@othiym23
othiym23 / excerpt.js
Created December 1, 2012 00:01
mocha is not your friend if you want to test uncaughtException handlers
before(function (done) {
/**
* Mocha is extremely zealous about trapping errors, and runs each test
* in a try / catch block. To get the exception to propagate out to the
* domain's uncaughtException handler, we need to put the test in an
* asynchronous context and break out of the mocha jail.
*/
process.nextTick(function () {
// disable mocha's error handler
mochaHandler = process.listeners('uncaughtException').pop();
@isochronous
isochronous / Application.root.js
Last active November 17, 2018 10:13
Root app for drop-in multi-app Marionette framework using requireJS and the subapprouter it works with
define([
"underscore",
"backbone",
"marionette",
"vent"
],
/**
* Creates the primary `Marionette.Application` object that runs the admin framework. Provides a central point
* from which all other sub-applications are started, shown, hidden, and stopped.
@ndarville
ndarville / business-models.md
Last active April 8, 2026 23:11
Business models based on the compiled list at http://news.ycombinator.com/item?id=4924647. I find the link very hard to browse, so I made a simple version in Markdown instead.

Business Models

Advertising

Models Examples
Display ads Yahoo!
Search ads Google
@mxriverlynn
mxriverlynn / marionette.gauntlet.js
Last active September 25, 2018 18:13
Marionette.Gauntlet - an event based "state machine" of sorts, used for building wizard, breadcrumb and tab UI and navigation systems
// Marionette.Gauntlet v0.0.0
// --------------------------
//
// Build wizard-style workflows with an event-emitting state machine
// Requires Backbone.Picky (http://github.com/derickbailey/backbone.picky)
//
// Copyright (C) 2012 Muted Solutions, LLC.
// Distributed under MIT license
Marionette.Gauntlet = (function(Backbone, Picky, Marionette, $, _){
@wolfflow
wolfflow / watcher.coffee
Created January 18, 2013 07:39
BaconJS activity/inactivity detection
activity = $(document).asEventStream "keyup mousemove"
inactivity = activity.skipDuplicates().map((x)->x.timeStamp).toProperty("")
activity.subscribe(-> $("#test").show())
inactivity.combine(inactivity.delay(1500), (a, b) -> a is b)
.filter((x)->x).subscribe(-> $("#test").hide())
@jen20
jen20 / GetEventStoreRepository.cs
Last active August 13, 2018 18:36
Event Store implementation of the CommonDomain IRepository interface and integration tests
public class GetEventStoreRepository : IRepository
{
private const string EventClrTypeHeader = "EventClrTypeName";
private const string AggregateClrTypeHeader = "AggregateClrTypeName";
private const string CommitIdHeader = "CommitId";
private const int WritePageSize = 500;
private const int ReadPageSize = 500;
private readonly Func<Type, Guid, string> _aggregateIdToStreamName;
@dergachev
dergachev / GIF-Screencast-OSX.md
Last active April 11, 2026 05:03
OS X Screencast to animated GIF

OS X Screencast to animated GIF

This gist shows how to create a GIF screencast using only free OS X tools: QuickTime, ffmpeg, and gifsicle.

Screencapture GIF

Instructions

To capture the video (filesize: 19MB), using the free "QuickTime Player" application:

@wolfflow
wolfflow / Watcher.coffee
Last active December 13, 2015 18:08
activity watcher class using Bacon.js
class Watcher
constructor: (options) ->
@idleTime = options.idleTime or 3500
@onCallback = options.onCallback or ->
@offCallback = options.offCallback or ->
eventEquals = (a,b) ->
a and b and a.pageX is b.pageX and a.pageY is b.pageY
mousemoves = Bacon.fromEventTarget(body, "mousemove")
@zdne
zdne / BasicExample.md
Last active December 13, 2015 21:28
Deprecated. This is an example file for the upcoming Apiary.io blog post on New API Blueprint Format.

Format: 1A Host: http://blog.acme.com

Basic ACME Blog API

NOTE: This document is outdated. Refer to the actual API Blueprint examples.

Welcome to the ACME Blog API. This API provides access to the ACME Blog service.

@colinsurprenant
colinsurprenant / ec2_openvpn_setup.md
Last active July 25, 2017 15:35
EC2 and OSX OpenVPN setup

EC2/Ubuntu OpenVPN server config

  • open UDP port 1194 using EC2 security groups
sudo apt-get install openvpn
sudo openvpn —genkey —secret /etc/openvpn/openvpn-key.txt
sudo modprobe iptable_nat
echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward
sudo iptables -t nat -A POSTROUTING -s 10.8.0.1/2 -o eth0 -j MASQUERADE