Inertia and When to Break a Habit

On a recent episode of Under the Radar, David Smith said something that hit on an idea I’ve been thinking about recently:

“Inertia is a dangerous thing … It’s hard to start something, and then sometimes it’s easy to just keep going”


Switching from Jekyll to Hugo

I recently went through the process of switching my blog’s static site generator from Jekyll to Hugo. Both are great tools, but as I’ve updated my website over time, I began to feel constrained by Jekyll — and wanted to switch to something more stable and robust.


Introducing Corral: A Serverless MapReduce Framework

This post gives a technical overview and architectural justification for my latest project, corral — a serverless MapReduce framework.


Counting Scanned Bytes in Go

For a recent project, I needed to read data from a specific chunk of a file. The data was a sequence of serialized records, so I used a bufio Scanner for splitting. Scanners are great, but they obscure the exact number of bytes read. In working through the problem, I found a solution that worked quite nicely.


Python Idioms in Rust

I’ve been going through a period of programming language wanderlust over the past couple months. Recently, I’ve been quite interested in Rust. Coming from Python, I’ve found a lot of Rust’s language features to be quite powerful.


Scraping the Web in Golang with Colly and Goquery

If told to write a web crawler, the tools at the top of my mind would be Python based: BeautifulSoup or Scrapy. However, the ecosystem for writing web scrapers and crawlers in Go is quite robust. In particular, Colly and Goquery are extremely powerful tools that afford a similar amount of expressiveness and flexibility to their Python-based counterparts.


MapReduce on Python is better with MRJob and EMR

Yelp’s MRJob is a fantastic way of interfacing with Hadoop MapReduce in Python. It has built-in support for many options of running Hadoop jobs — AWS’s EMR, GCP’s Dataproc, local execution, and normal Hadoop.


25 Days of using Golang

During the month of December, I used the daily Advent of Code puzzles to teach myself Go.


2017 in Review

2017 was an interesting year. Personally and professionally, I found it to be a successful year of growth. Reflecting on this year’s US/global news, my thoughts on 2017 are conflicted. We’ve seen the growth of troubling trends that will likely continue in 2018, and a significant amount of “bad” happened this year. From my own perspective, there were certainly setbacks and some periods of intense stress (thanks, college). I don’t wish to whitewash legitimate (and pressing) concerns, but I wanted to take a moment to reflect on my year with an intentionally positive spin. »

Learning to Like Java

This summer, I worked primarily in Java on a backend service for Zillow’s advertising platform. This service was built on top of Spring Boot, an “opinionated” Java web framework.


Page: 2 of 6