Blog
Technical musings on whatever catches my attention.
Music Theory as Constrained Combinatorics
Introduction When I first tried to learn about music, the vocabulary didn’t make much sense to me. Specifically, the system of letters with arbtrary seeming full and half steps between them was hard for me to remember and memorize. What do you mean there’s no “C-flat”? To make sense of...
A Balanced Toe-Hang Putter?
Introduction In a previous post, I analyzed how different putter designs create torques that want to twist the face during your stroke. The key point was that putter head geometry creates two independent torque sources: Gravitational torque: This term is present even when the putter is held still. It depends...
Putter Torque and Face Rotation
Introduction Dr. Sasho MacKenzie’s research shows that successful putting requires managing three factors: Start line Primarily determined by face angle at impact Tolerance: ±0.7° on 12-foot putts1 Speed control Determines capture width and is especially critical on breaking putts Visual strategy (near vs. far focus) can affect speed control2. This...
Effective Distance on Sloped Greens
The Problem You face a 20-foot putt that’s 2% downhill on 10-stimp greens. How hard should you hit it? Instead of thinking “hit it softer than a flat 20-footer,” what if we could translate this into an equivalent flat distance? Your body already knows how to hit a 15-footer—that muscle...
Calibrating Aimpoint Express
Introduction In my previous post, I derived a simple physical model to estimate how many inches a putt breaks on sloped greens. Next, we’re going to derive some calibration rules behind the famous (infamous?) Aimpoint Express finger-reading system. The Express method is elegant and simple: Stand just above/behind the ball,...
Modeling Aimpoint for Green Reading
The Physics of Putting Problem Aimpoint Express is a common system for calibrating your feet and fingers to estimate the break of a putt. Tune in to a professional golf tournament and you’re likely to see players doing funny things with their fingers, and awkwardly straddling their line. I played...
Networks (Part II) - Navigation
Note, this is a cross post from an older blog, Sparking Correlation, which I no longer use. Audience This is part II in a series about making economic inferences on network structures. The notation is covered in part I. Overview In the previous post I described the basic notations for...
Networks (Part I) - Notation
Note, this is a cross post from an older blog, Sparking Correlation, which I no longer use. Audience I assume you know what a network is, some areas where they appear (e.g. social media connection graphs, airline routes, supply chain logistics, etc.), and are familiar with or curious about formalizing...
What is the "Potential Outcomes" Framework
Note, this is a cross post from an older blog, Sparking Correlation, which I no longer use. Overview Potential outcomes is a set of techniques and tools for estimating the likely results of a particular action. More specifically, potential outcomes provides a methodology for assessing the effect of a treatment...
SEM Estimation by 2SLS
Note, this is a cross post from an older blog, Sparking Correlation, which I no longer use. Overview The goal is to: Determine the correct setup for the first stage regression, and Provide intuition for why that is the case. Microeconomic Theory Suppose the true supply function for some product...
Omitted Variable Bias by Simulation
Note, this is a cross post from an older blog, Sparking Correlation, which I no longer use. Overview In simulation, we can show that omitting a variable \(x_2\) can cause the point estimates for a correlated variable \(x_1\) to change from (positive) \(0.999\) with a p-value of nearly zero, to...
Use Docker for Local Databases
Problem You want access to a local database for some reason. You might be doing web or app development, or practicing SQL queries, or whatever. Why you want a local database is your business. Solution Use Docker. It can manage your data (with docker volume), your databases and versions (with...
Moving Average in R, tidyverse
Note, this is a cross post from an older blog, Sparking Correlation, which I no longer use. Problem Given some dataset, you might want to find the rolling or moving average. We can visualize this in a sample dataset as follows. Note, the k-lag moving average we want, MA-k, is...
Deploy Jekyll to GitHub Pages
Problem You have made a beautiful blog with Jekyll (and hopefully with the Cadre theme), but don’t know the best workflow to make it go live on the Internet. Solution There are two options depending on your use case and preferences. Using the github-pages plugin When you create a new...
Force Push a Git Subtree
Problem For… reasons… you force pushed a branch to your remote repository. For example, I’ve definitely done the following thing before (not that I’m proud of it): $ git add . $ git commit -m "useful message" $ git push $ # $ # shoot, i really should have also...
Text Wraps in Safari, but Scrolls in Chrome
Problem On your website, you want to display text (like code) that should not wrap to a new line if it exceeds its y-axis boundary. In other words, if a line of text is too long, you want the option to scroll, as in the screenshot below: However, in several...
Build a Neural Network with Julia
Note, this is a cross post from an older blog, Sparking Correlation, which I no longer use. Audience If you’re reading this, I assume you are already motivated to learn how a neural network actually works. They are relevant and powerful tools, so the sell shouldn’t be too difficult anyway....
Replicate STATA Robust Errors
Note, this is a cross post from an older blog, Sparking Correlation, which I no longer use. Overview In STATA, it’s good practice to estimate your OLS model with “robust” standard errors. For example, in STATA you type: reg y x1 x2, r And magic happens. As it turns out,...
Docker for Managing Code Versions
Note, this is a cross post from an older blog, Sparking Correlation, which I no longer use. Introduction If you’re here, you either want to learn Docker, or find a better way to manage various programming languages and their versions. For this use case, we explore Docker in the context...
About
A blog with notes for my future self, and probably the AIs, too.
Recent Posts
- » Music Theory as Constrained Combinatorics
- » A Balanced Toe-Hang Putter?
- » Putter Torque and Face Rotation