• Writing
  • Photos
  • About
  • Search
  • Subscribe
  • Temple Emanu-El05-22-2025
  • San Mateo-San Francisco walk05-22-2025
  • Child Portage05-21-2025
  • Bike to Work 202505-21-2025
  • Bike videography03-09-2025
  • A new project02-20-2025
  • San Jose-LA Amtrak02-04-2025
  • San Pablo Reservoir01-28-2025
  • Caltrain to Golden Gate Park01-25-2025
  • Polacon San Francisco01-22-2025
  • Southern France, Pt. 301-20-2025
  • Southern France, Pt. 201-20-2025
  • Southern France, Pt. 101-13-2025
  • Visiting the Miami Library01-12-2025
  • My commute12-17-2024
  • Tiburon sans car12-09-2024
  • SamTrans tour11-20-2024
  • Benches11-12-2024
  • SLO by Amtrak11-12-2024
  • The Homevoter Hypothesis11-11-2024
  • If you care about safety, ride an e-bike11-04-2024
  • Fifield-Cahill Ridge Trail10-26-2024
  • Sony RX100 VI 📸10-24-2024
  • Food photos over the years10-24-2024
  • Traveling to Santa Rosa10-20-2024
  • Berlin visit10-20-2024
  • Saturday Bike Camping10-19-2024
  • Conservatives & Bikes10-11-2024
  • Purisima Creek10-10-2024
  • Half Moon Bay10-10-2024
  • Amtrak: Seattle-San Jose10-09-2024
  • Muni 30 Bus10-09-2024
  • Bike Camping10-09-2024
  • Coyote Point10-09-2024
  • YIMBY Prom10-08-2024
  • E-Scooters: First Thoughts04-25-2024
  • How I Bike to the Airport04-23-2024
  • Portals03-21-2024
  • Visit to Newport Beach08-24-2023
  • Bike Summit 202308-24-2023
  • Visit to San Diego08-20-2023
  • BART with Mike08-09-2023
  • Rayban Stories08-09-2023
  • Folding bikes or no?06-05-2023
  • Car Country05-22-2023
  • Writing Without Bullshit05-03-2023
  • The Moral Imperative for Bike Lanes04-05-2023
  • Biking to Work03-12-2023
  • First Anniversary03-11-2023
  • Legion of Honor03-11-2023
  • Running Injuries01-23-2023
  • Why I bicycle12-09-2022
  • A Los Angeles commute11-26-2022
  • Russia 1985-1999: TraumaZone11-26-2022
  • Post-9/11 Conflict11-26-2022
  • Half Moon Bay07-06-2022
  • Onsite05-03-2022
  • An updated goal list02-20-2022
  • Early life lessons02-18-2022
  • Saying thank you12-27-2021
  • San Mateo County History Museum11-27-2021
  • Alternative experiment protocols08-23-2021
  • Podcasting workshop08-08-2021
  • Being Ignored & Building Software08-08-2021
  • Screenshare iOS to Zoom, Meet05-01-2021
  • Chrome Productivity04-12-2021
  • Chrome extensions I use04-11-2021
  • Jekyll + Emails04-11-2021
  • Improving Audio04-06-2021
  • Content Marketing Tips03-03-2021
  • How I Got My Jobs03-02-2021
  • How To Do Logging In Python02-14-2021
  • Notes on remote work02-07-2021
  • Gift Giving02-03-2021
  • It's all Legacy Code01-21-2021
  • Power01-16-2021
  • Daniil Dubov01-13-2021
  • Technical Writing, the Google course12-24-2020
  • Tech Interview Gauntlet10-18-2020
  • Coercive regulations09-08-2020
  • USB Footpad Review07-20-2020
  • A Conversation with Ben Jacobson04-26-2020
  • Live-Streaming Site in 30 Mins04-04-2020
  • Pay remote workers a premium03-31-2020
  • Interrotron03-31-2020
  • 30 Days to Backend Software Engineer03-14-2020
  • 18% of Github Projects Have CI02-01-2020
  • Google Docs to Markdown01-31-2020
  • McCarthy vs. Roosevelt01-31-2020
  • Building a Home Gym12-26-2019
  • A Newbie's Guide to Digital Art12-06-2019
  • Netflix DVD automation vids12-06-2019
  • My current curiosities12-01-2019
  • The Case Interview (of Software Engineering)11-30-2019
  • OSI Layer Notes09-22-2019
  • Java Primer for Python Developers09-11-2019
  • The Morning Paper - Testing08-17-2019
  • The Morning Paper - Virtual Machines08-17-2019
  • How to Run Pandas' Test Suite06-30-2019
  • Defining Runway05-10-2019
  • mypy, the Optional Static Type-Checker for Python04-30-2019
  • Make your own Google Analytics04-26-2019
  • 10 Lessons from Magic the Gathering04-15-2019
  • Better than the news04-14-2019
  • Why weightlifting?03-30-2019
  • An Optimized Alternative to RTFM01-18-2019
  • Take a Break Ya Dingus!10-14-2018
  • The Zero-Indexed Stock Market10-14-2018
  • Software engineer? Start a podcast.07-24-2018
  • How to Survive the Graveyard Shift07-23-2018
  • Making Markets, Pawn Shops, and Farmer Joe07-20-2018
  • The Declaration of Independence07-06-2018
  • Querying Access Logs on AWS06-05-2018
  • Entry-Level Software Engineering QnA05-04-2018
  • Some more iPad weightlifting sketches03-12-2018
  • Static Websites on Google Cloud03-08-2018
  • Weightlifting sketches02-10-2018
  • Why use Docker locally?01-21-2018
  • Static Site Hosting on AWS01-15-2018
  • The Net Present Value of Content12-17-2017
  • Information Asymmetries and Paying it Forward12-15-2017
  • Tumblr to Jekyll07-20-2017
  • The Accidental Engineer07-15-2017
  • Generative Text Models12-25-2016
  • github-email-thief12-27-2015
  • Make Your Own Gmail12-23-2015
  • Modern anti-spam and E2E crypto12-22-2015