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
10/29/2019Knotel 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.
7/29/2019How 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
4/25/2018nginx 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
10/13/2014Full text search with Bookshelf.js
Bookshelf has no inbuilt method for performing such a query but it actually ended up being rather simple.
4/10/2014JavaScript: 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.
12/19/2013Emacs: 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
11/6/2013Gobbledygook: a poem
A silly poem I wrote in Fall 2003 while studying quantum mechanics
10/25/2013JavaScript: arguments explained
A mini tutorial on the JavaScripts arguments pseudo-object
10/21/2013Want to Work for a Startup? Contribute to Open Source!
Some tips for getting a gig at a startup
8/18/2013Deploy 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.
8/10/2013Chance
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
6/24/2013Alfred 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.
3/15/2013Backbone CrossDomain Library
Open sourcing the Backbone.CrossDomain Library
3/11/2013Convert .png to .eps on Mac
This is one of those tips that seems almost too easy to be true.
3/13/2012Solved: git svn Broken in Mavericks
Struggling with git svn in Mavericks (or Mountain Lion)? This may be your answer
2/19/2012Solved: ZSH tab completion painfully slow
Struggling with slow tab completion in zsh? This may be your answer
12/22/2011Programmatically Creating Fielded Nodes in Drupal 7
Programmatically Creating Fielded Nodes in Drupal 7
8/8/2011tmux Tutorial
A tutorial on tmux, the terminal multiplexer along with my rationale for trying it out and some tips and tricks
6/20/2011