Skip to content

Instantly share code, notes, and snippets.

@sspencer
sspencer / transparent-gif.js
Created October 31, 2010 22:27
Serve a transparent GIF from NodeJS
// Two ways to serve transparent GIF
var buf = new Buffer([
0x47, 0x49, 0x46, 0x38, 0x39, 0x61, 0x01, 0x00, 0x01, 0x00,
0x80, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x2c,
0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x02,
0x02, 0x44, 0x01, 0x00, 0x3b]);
res.send(buf, { 'Content-Type': 'image/gif' }, 200);
@sspencer
sspencer / location.sql
Created February 21, 2012 01:18
Mysql Location Search
--
-- Mysql Functions and Idea from http://www.xarg.org/2009/12/people-near-you-with-mysql/
-- Stored procedures from Steve.
-- Not using `point`, could leave out field from location table.
--
CREATE TABLE IF NOT EXISTS `location` (
`vendor_id` INT unsigned NOT NULL,
`lat` decimal(10,6) NOT NULL,
`lon` decimal(10,6) NOT NULL,
@sspencer
sspencer / keybase.md
Created October 26, 2021 21:37
Keybase proof

Keybase proof

I hereby claim:

  • I am sspencer on github.
  • I am steve_spencer (https://keybase.io/steve_spencer) on keybase.
  • I have a public key ASAmiGpUUaDFLwkAnpEZySbGDBM_2b1ZqbF0Iq01hBl0AQo

To claim this, I am signing this object:

@sspencer
sspencer / log.go
Created September 10, 2016 23:47
Make function logging stand out
// Golang UK Conference 2016 - Mat Ryer - Idiomatic Go Tricks
func foo() error {
log.Println("----------")
defer log.Println("----------")
// ... do stuff ...
}
@sspencer
sspencer / timer.go
Created September 10, 2016 23:46
Time a function
// Golang UK Conference 2016 - Mat Ryer - Idiomatic Go Tricks
func StartTimer(name String) func() {
t := time.Now()
log.Println(name, "started")
return func() {
d := time.Now().Sub(t)
log.Println(name, "took", d)
}
}
@sspencer
sspencer / unitedstates.html
Created March 3, 2012 00:08
United States in select options tag
<option value="AL">Alabama</option>
<option value="AK">Alaska</option>
<option value="AZ">Arizona</option>
<option value="AR">Arkansas</option>
<option value="CA">California</option>
<option value="CO">Colorado</option>
<option value="CT">Connecticut</option>
<option value="DE">Delaware</option>
<option value="FL">Florida</option>
<option value="GA">Georgia</option>
package command
import (
"fmt"
"net"
"os"
)
const (
message = "This process is already running in SOLO mode."
@sspencer
sspencer / closure.sh
Created April 22, 2013 23:10
Shell function to send JS file thru closure. Usage: closurejs file.js
closurejs()
{
curl -s --data output_info=compiled_code --data-urlencode js_code@${1} http://closure-compiler.appspot.com/compile
}
@sspencer
sspencer / repl.js
Created April 10, 2013 19:52
Simple standalone NodeJS REPL.
// Simple embedded REPL
var repl = require("repl");
repl.start({
prompt: "karma> ",
input: process.stdin,
output: process.stdout,
eval: function(cmd, context, filename, callback) {
// cmd comes thru as "(ls\n)", get back to original "ls"
callback("You typed: " + cmd.substring(1, cmd.length-1).trim());
@sspencer
sspencer / SomeNetworkOperation.m
Created August 1, 2012 01:57
Override MKNetworkOperation so 4xx response body available in the error handler
// Register your NetworkOperation class after creating your network engine
// someEngine = [[SomeEngine alloc] initWithHostName:SOME_API customHeaderFields:nil];
// [someEngine registerOperationSubclass:[SomeNetworkOperation class]];
// ------ SomeNetworkOperation.h ------
#import "MKNetworkOperation.h"
@interface SomeNetworkOperation : MKNetworkOperation
@end