coding

Knotel builds a better flexible workspace experience with Apollo

Using a federated Apollo data graph allowed Knotel to scale their GraphQL implementation, speed development, and deliver a better experience to all their users

Read

Knotel GraphQL Apollo Federation Tweetstorm

Our engineering team at Knotel was one of the first companies to deploy Apollo Federation into production. This was originally an 18 Tweet Tweetstorm that I have reformatted as a blog post here for readability.

Read

How Spring Prepares for the Black Friday Frenzy

Our engineering team generally spends a few months leading up to that day running drills, gathering metrics and tuning systems, prepping, pre-emptively scaling, and just generally ensuring everything is in tip top shape to handle traffic for that one day in which we will often see 20 or 30 times the volume that we’d see on a normal day. This article and the video tells the story about one such optimization

Read

nginx as a SPDY load balancer for Node.js

Recently we wanted to integrate SPDY into our stack at SocialRadar to make requests to our API a bit more speedy (hurr hurr). Particularly for multiple subsequent requests in rapid succession, avoiding that TCP handshake on every request would be quite nice. This article outlines how we did it with nginx

Read

Full text search with Bookshelf.js

Bookshelf has no inbuilt method for performing such a query but it actually ended up being rather simple.

Read

JavaScript: Async Promise "while loop"

This is a solution to the situation where you have an asynchronous task you want to perform over and over again, in a non-blocking fashion, stopping when some condition is met.

Read

Emacs: Prevent autosave mess

Emacs is trying to be helpful by creating autosave files, but by default it stores them alongside the file you're editing creating a mess in active folders, repositories, etc. Follow this tutorial to fix that mess and ensure Emacs still stores those backups but puts them all in a single location to reduce clutter

Read

Gobbledygook: a poem

A silly poem I wrote in Fall 2003 while studying quantum mechanics

Read

JavaScript: arguments explained

A mini tutorial on the JavaScripts arguments pseudo-object

Read

Want to Work for a Startup? Contribute to Open Source!

Some tips for getting a gig at a startup

Read

Deploy Coffeescript Node App to Heroku

So you've got a cool node app written in Coffeescript and you want to deploy it to Heroku? Seems like it should be easy these days, right? Not so much. Well, let's be honest, we're in the future, you don't have to manually manage servers, etc. (Thank you Heroku!) but deploying a Coffeescript app is still no small task as there are a bunch of gotchas. Hopefully this will help.

Read

Chance

I am often looking to generate random things in JavaScript. Whether in the browser or in Node, I often find myself looking to generate a random phone number or address or even number with some characteristics. So I created Chance

Read

Alfred 2 and Emacs

Long story short, Alfred 2 and Emacs installed via Homebrew don't exactly play along nicely. Alfred 2 doesn't like to follow symlinks so it won't open Emacs. This is a solution.

Read

Backbone CrossDomain Library

Open sourcing the Backbone.CrossDomain Library

Read

Convert .png to .eps on Mac

This is one of those tips that seems almost too easy to be true.

Read

Solved: git svn Broken in Mavericks

Struggling with git svn in Mavericks (or Mountain Lion)? This may be your answer

Read

Solved: ZSH tab completion painfully slow

Struggling with slow tab completion in zsh? This may be your answer

Read

Programmatically Creating Fielded Nodes in Drupal 7

Programmatically Creating Fielded Nodes in Drupal 7

Read

tmux Tutorial

A tutorial on tmux, the terminal multiplexer along with my rationale for trying it out and some tips and tricks

Read