-
Noticing when an app is only hosted in us-east-1
-
Exploring how Magic Link works
-
Semantic search in iMessage, iMessage Wrapped, and AI conversations
-
Getting a vanity phone number with 4 repeating digits
-
Web3, Free Candy, and exploits galore
-
Snapshotting memory to scrape encrypted network requests
-
JavaScript gotchas
-
Writing fast async HTTP requests in Python
-
A boilerplate for SSR'd Vite, React 17, and TypeScript 4.3
-
How to redeem $2000 of HNS for being a FOSS developer
-
Fun VPN tricks due to Apple owning all of 17.X.X.X
-
What is tax loss harvesting?
-
Zoh-no Zogo: Manufacturing pineapples (and cash) with Burp Suite
-
Setting up Matomo in such a way to bypass adblockers
-
Unlimited free WiFi on flights with T-Mobile
-
Habitat 2020 - Coliving during COVID
-
American Airlines is an e-currency company that happens to own some planes
-
Thoughts on user growth and product
-
Reversing Lyft's ride history API to analyze 6 years worth of rides
-
How the Nintendo Switch prevents downgrades by irreparably blowing its own fuses
-
Promise.all vs Promise.allSettled in JavaScript
-
Goodreads has a time to first byte of nearly 5 seconds
-
Re-enabling context actions on websites
-
How much space would it take to store every word ever said?
-
The hidden value of automation in programming comes from saving mental context switches
-
2019 Travel in Review - 52,848 miles, 137 hours, and 40 flights
-
Flight stats, entertainment, and trying to crack widevine
-
Email authentication: SPF, DKIM and DMARC out in the wild
-
Reversing private APIs, Safeway, and not-so-extreme couponing
-
Ember.js, Dr. Carvers Shave Butter, and disappearing products
-
An analysis of activity on /r/churning
-
Compensation in 2019 new grad tech offers
-
Useful shell aliases and functions
-
What's better - a broken clock or a clock that's always 5 minutes off?
-
Around the world in business class: ANA RTW in J
-
Identifying non-default global variables in JavaScript
-
Experiments, growth engineering, and the perils of not disguising your API routes: Part 1
-
Obfuscated javascript, scam emails, and American Express
-
Class schedules, a cease and desist from Viacom, and accidental monetization
-
Uber, statistics, and a chrome extension
-
Ryanair, Hamiltonian Cycles, and using graph theory to find cheap flights
-
An introduction to credit card churning
-
Making high-fidelity audio sound like it came through the phone
-
Illegal streams, decrypting m3u8's, and building a better stream experience
-
Leaky vs punch-through abstractions
-
The Federalist Papers: author identification through K-means clustering
-
The rise of megathreads on reddit
-
Speeding up zsh and Oh-My-Zsh
-
Old code is institutional knowledge
-
On USC's CSCI-350 (Operating Systems)
-
Disambiguating language type systems
-
Information and economies of scale
-
Words per minute is not a good measure of typing speed
-
Why does this blog exist?
-
10x Performance Increases: Optimizing a Static Site