Skip to content

Instantly share code, notes, and snippets.

🆗
Safe to approach

Livvy Mackintosh livmackintosh

🆗
Safe to approach
Block or report user

Report or block livmackintosh

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 keybase.md

Keybase proof

I hereby claim:

  • I am livmackintosh on github.
  • I am livvy (https://keybase.io/livvy) on keybase.
  • I have a public key ASB9KCfqRHr_ndh4CRF4mdj9DVsqqWG0rVikmnat1kPdnQo

To claim this, I am signing this object:

@livmackintosh
livmackintosh / haskell-python-rmq-stack.md
Last active Sep 26, 2016
Haskell to Python RabbitMQ Test Stack
View haskell-python-rmq-stack.md

Haskell to Python RabbitMQ Test Stack

This Gist is intended for BD developers who wish to test Haskell-to-Python RabbitMQ communication.

Instructions

Follow each instruction, skipping any optional segments or those which you've already executed. You'll have to infer certain commands e.g. making sure you're in the right directory. This applies to many of the buildbits commands. The instructions assumes that you're inside a directory containing the following repositories:

  • beautilytics
  • buildbits

1. Build Docker Images

@livmackintosh
livmackintosh / nginx-tls.conf
Created Sep 27, 2016
Nginx TLS Global Config
View nginx-tls.conf
ssl_certificate /path/to/signed_cert_plus_intermediates;
ssl_certificate_key /path/to/private_key;
ssl_session_timeout 1d;
ssl_session_cache shared:SSL:50m;
ssl_session_tickets off;
ssl_dhparam /path/to/dhparam.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';
@livmackintosh
livmackintosh / docker-install-ubuntu-12-14-16.sh
Last active Oct 14, 2016
Install Docker Engine on Ubuntu 16.04 x64
View docker-install-ubuntu-12-14-16.sh
#!/bin/bash
# Install Docker Engine on Ubuntu 14.04 and 16.04 LTS
#
# Installs Docker Engine and it's dependencies, then adds
# the current user to the docker group and starts the Docker
# service.
echo "Docker Installer for Ubuntu 14.04 and 16.04"
sudo apt-get update
View id_livvy_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDCCFaYua1V4rWA4uQOlDWxWCq6riMtnvfygZj559PhgLLPeDaiADevIjAcZ6mGyL8NoDogWtA52r0KifcVVFHuQLfZFHYo1WlfB3HZgXwCLsJoR7PnzUqeGznURLwyRPiWgbECYG3waKZ5lo24A8HrIQz27LDlrRaQqZZZsybf58pLIvuAMjdwhFkTBs2w2PEFgtMhd1At/o6rq4TPMjElVeCM9VdBibL+tpJzZrJ8rO2U3cZpqgSLhd/K/++9w9DZMnzZt6IwPmFLP/R8tkVUU0gvOYeGPmEa2NMas4wyCi79HGCrPNCrzgUVAft7ww6J3LDbRw93HTE0hQ2Bh9Bz livvy@livvy-laptop
@livmackintosh
livmackintosh / state-monad-post.md
Created May 26, 2019
A random stream-of-thought on state monad.
View state-monad-post.md

Maybe this should be in #random as it’s a random thought but it’s also kind of engineering related. I did some further FP reading over the past few weeks about Kleisli categories and extra composition tidbits. They’re literally amazing and totally make sense for chaining together a bunch of transformations/actions but also abstracting things like logging/audits/messages to maintain separation of concerns.

One common pattern is to do something like the following when logging - this happens probably in 90% of business apps:

log = ""

def add_four(number):
    log += "Added four\n"
    return number + 4
You can’t perform that action at this time.