Skip to content

Instantly share code, notes, and snippets.

@vasanthk
vasanthk / System Design.md
Last active November 15, 2025 18:07
System Design Cheatsheet

System Design Cheatsheet

Picking the right architecture = Picking the right battles + Managing trade-offs

Basic Steps

  1. Clarify and agree on the scope of the system
  • User cases (description of sequences of events that, taken together, lead to a system doing something useful)
    • Who is going to use it?
    • How are they going to use it?
@kharrison
kharrison / String.swift
Last active January 22, 2024 14:03
Swift String Playground Examples
// Swift Standard Librray - String
// Keith Harrison http://useyourloaf.com
// Import Foundation if you want to bridge to NSString
import Foundation
// ====
// Initializing a String
// ====
@viklas
viklas / sirius_instructions.md
Last active January 28, 2016 22:19
Starting a dockerized instance of Sirius

##Instructions for setting up sirius from the Emerging Stack dockerfile (end-to-end) ####NOTE: Everything here works on a laptop, but it will run out of disk space in all likelihood, requiring an annoying boot2docker hack. It's easier and faster in the cloud. You can copy/paste each of the commands below...without the dollar or hash symbol. Remember, if you terminate your DigitalOcean droplet, you'll have to do all these steps again (but they will survive a server reboot).

####At the end of this process, you will be able to ask Sirius some wikipedia type questions (when, which, where, etc) inside a terminal window...don't expect a fancy user experience, this is raw functionality only.

###Cloud Server Provisioning Stage

  1. Sign in to digitalocean and set up an account, billing, etc

  2. Setup new droplet ($40 month size with Ubuntu 14.04)...wait 1 minute

@jbardin
jbardin / proxy_copy.go
Last active April 27, 2025 20:47
Go TCP Proxy pattern
package proxy
import (
"io"
"log"
"net"
)
func Proxy(srvConn, cliConn *net.TCPConn) {
// channels to wait on the close event for each connection
@acolyer
acolyer / service-checklist.md
Last active September 24, 2025 07:57
Internet Scale Services Checklist

Internet Scale Services Checklist

A checklist for designing and developing internet scale services, inspired by James Hamilton's 2007 paper "On Desgining and Deploying Internet-Scale Services."

Basic tenets

  • Does the design expect failures to happen regularly and handle them gracefully?
  • Have we kept things as simple as possible?
@deckarep
deckarep / goroutine-channel-pattern.go
Last active December 13, 2016 20:46
A Goroutine safe pattern using channels that abstracts away the usage of channels.
/*
A Goroutine safe pattern using channels that abstracts away the channels
This is a concept of creating a goroutine safe object that uses channels under the covers to communicate
with the internal map[string]string structure. I know that typically this kind of solution may done
with mutexes but the excercise was in using channels on purpose although they are heavier.
Note a couple of points:
- When using channels, you can still build a public-facing api that nicely abstracts them away, therefore
@cuppster
cuppster / flask_gridfs_images.py
Created March 12, 2013 18:24
Recipe for downloading images into a mongoDB gridfs collection, then serving the images with a Flask application. No temp files created.
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
SYNOPSIS
flask_gridfs_images.py --start
flask_gridfs_images.py --add <IMAGE_URL>
DESCRIPTION
@dergachev
dergachev / GIF-Screencast-OSX.md
Last active October 31, 2025 16:45
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:

@woodb
woodb / setup_flask_and_friends.sh
Created July 8, 2012 16:43
Shell script to get setup with Flask, nginx and uWSGI on an Amazon EC2 Linux image
#!/bin/bash
#
# Shell script to automatically configure a new Flask, nginx and uWSGI based blog
# on an Amazon EC2 instance.
#
# See http://bit.ly/MeGwjD for more information!
#
# If you are forking this for your own custom configuration script, see the following other gists:
# https://gist.github.com/3071737
# https://gist.github.com/3071739
@qur2
qur2 / bash_prompt.sh
Last active October 6, 2015 02:08 — forked from insin/bash_prompt.sh
Set color bash prompt according to active virtualenv, git branch (including detached head state) and return status of last command. Adapted for git 1.8.5 status output.
#!/bin/bash
#
# DESCRIPTION:
#
# Set the bash prompt according to:
# * the active virtualenv
# * the branch/status of the current git repository (handles detached head state)
# * the return value of the previous command
# * the fact you just came from Windows and are used to having newlines in
# your prompts.