logo

Dan Goldin

  • Home
  • About
  • Lore
  • 2021
  • 2021-08-29
    Yahoo fantasy football stats: 2021-2022 edition
  • 2021-02-15
    Instacart price markup
  • 2021-02-14
    Slack Idea: Hierarchical Channels
  • 2021-01-31
    Clubhouse as a solution to Deepfakes
  • 2021-01-23
    Pre-internet businesses were tough
  • 2021-01-22
    Billion dollar features
  • 2021-01-08
    From AMP on Jekyll to Hugo and GitHub Actions
  • 2020
  • 2020-12-30
    Science vs policy
  • 2020-12-30
    Everyone's a hustler
  • 2020-12-29
    Time to remove AMP from my blog
  • 2020-12-29
    Improving the accuracy of evergreen content
  • 2020-12-29
    Challenges in identifying a spawned OS X process
  • 2020-12-29
    2021 goals
  • 2020-12-28
    Increase reliability through loose coupling: An adtech example
  • 2020-12-28
    Blogging: 2020 and beyond
  • 2020-12-27
    SpaceX Starship vs Saturn V
  • 2020-12-26
    Tools of 2020
  • 2020-12-26
    2020 donations
  • 2020-12-25
    My Tesla stock trade
  • 2020-12-24
    Incident response
  • 2020-12-23
    An ounce of prevention is worth a pound of cure
  • 2020-12-22
    Browser zero
  • 2020-12-21
    Stop charging for support plans
  • 2020-12-21
    2020 Goal review
  • 2020-12-19
    Blame the algorithm
  • 2020-12-18
    Removing duplicate files in S3
  • 2020-12-17
    What do adtech and BGP have in common?
  • 2020-12-15
    Substack can evolve into a marketplace
  • 2020-12-14
    Do your users delete or archive your email?
  • 2020-12-13
    Impact of getting to the top of Hacker News in 2020
  • 2020-12-12
    Evolution of open source licenses
  • 2020-12-11
    Amazon owns more than $2B worth of IPV4 addresses
  • 2020-12-08
    Pay to enjoy video games
  • 2020-12-02
    Degrade functionality instead of building cross region availablity
  • 2020-11-26
    Static code analysis with DeepSource
  • 2020-11-25
    Bringing a user centric approach to the command line
  • 2020-11-22
    Subconciously learning to type Russian
  • 2020-11-20
    Cursed by GDPR
  • 2020-11-14
    Medium is a shopping mall
  • 2020-11-11
    Poor Intel
  • 2020-10-27
    Google and the Apple Watch
  • 2020-10-21
    Substack and paid newsletters
  • 2020-10-21
    Gasoline
  • 2020-09-22
    Cold turkey and fighting temptations
  • 2020-09-05
    Get Google Group membership using Calendar
  • 2020-09-03
    iOS 14 and local network access
  • 2020-08-28
    Working your way up the engineering management stack
  • 2020-08-24
    Back to Mac
  • 2020-08-21
    An era of productivity
  • 2020-08-20
    Yards, balls, fences, and software engineering
  • 2020-08-20
    Apple and Mr. Burns: Indestructible
  • 2020-08-18
    Yahoo fantasy football stats: 2020-2021 edition
  • 2020-08-18
    The sandpaper learning method
  • 2020-08-17
    Coupling in action: protobuf enum fields
  • 2020-08-16
    Traveling at the speed of light through life
  • 2020-08-16
    Big money, not big data
  • 2020-08-09
    TikTok: A Prisoner's Dilemma
  • 2020-08-09
    Three types of advice from a manager
  • 2020-07-30
    Products change, humans stay the same
  • 2020-07-27
    Analyzing the AWS EC2 reservation options
  • 2020-07-24
    Amusing Russian translations in Duolingo
  • 2020-07-11
    Quibi's problem
  • 2020-07-08
    Optimizing AWS reservations
  • 2020-06-30
    Overthinking how to load data into MySQL
  • 2020-06-28
    Specify versions in technical blogging
  • 2020-06-19
    AWS Snowcone and my first job
  • 2020-06-19
    AWS 101
  • 2020-06-15
    Software defined photography
  • 2020-06-11
    Dark Mode is for when you run out of real features
  • 2020-06-10
    Catch up with your former coworkers
  • 2020-06-06
    Black Lives Matter
  • 2020-05-31
    Giving Obsidian a shot
  • 2020-05-30
    Three categories of software engineering work
  • 2020-05-29
    Anatomy of a crypto mining hack
  • 2020-05-27
    Metrics, logging, and error reporting
  • 2020-05-23
    Stock portfolio hedging during the coronavirus pandemic
  • 2020-05-21
    Shopify for food delivery
  • 2020-05-21
    Prefer verbs to adverbs
  • 2020-05-16
    The curse of mastery
  • 2020-05-16
    Limits of our imagination
  • 2020-05-02
    Sometimes it really is just the dirty, hard work
  • 2020-04-29
    Data analysis and visualization
  • 2020-04-25
    Engineering management resources
  • 2020-04-24
    Margin of victory
  • 2020-04-18
    Optimizing code? Think theoretical limits
  • 2020-04-18
    Google and Apple's COVID tracking project
  • 2020-04-18
    AlphaGo documentary
  • 2020-04-11
    Dumping Apple health data into MySQL
  • 2020-04-07
    Gamification works
  • 2020-04-05
    Start open sourcing government software
  • 2020-04-04
    Finding the truth in a sea of misinformation
  • 2020-03-31
    Visualizing my journey to Inbox Zero
  • 2020-03-29
    Disabling TabNine to improve Ubuntu performance
  • 2020-03-29
    A TikTok experience for streaming services
  • 2020-03-28
    COVID-19
  • 2020-03-15
    Zoom's blow up and their financials
  • 2020-03-01
    Paying for improved productivity
  • 2020-02-27
    My personal Grafana dashboard
  • 2020-02-11
    Embracing smartphone productivity
  • 2020-02-07
    Repository of configurations
  • 2020-02-04
    Micromanaging is underrated
  • 2020-01-31
    Finding parking spots using YOLO
  • 2020-01-28
    2020 Goals
  • 2020-01-24
    Software comparison done right
  • 2020-01-21
    Instagram targeting ads based on likes
  • 2020-01-17
    Visualizing my 2019
  • 2020-01-14
    Whatever happened to fast software?
  • 2020-01-10
    Quick math calculations
  • 2020-01-07
    Social network usage is exclusive
  • 2020-01-03
    Build for optionality
  • 2019
  • 2019-12-31
    Self hosted, externally managed
  • 2019-12-31
    Power of media
  • 2019-12-31
    Gaming virtual kitchens
  • 2019-12-31
    Farewell 2019, hello 2020
  • 2019-12-31
    Advertising an Airbnb on Instagram
  • 2019-12-30
    Zappos customer service
  • 2019-12-29
    Finding parked cars: AWS vs Google computer vision
  • 2019-12-28
    Gboard vs iOS swipe keyboard
  • 2019-12-27
    Who's hosting? Who's managing?
  • 2019-12-27
    Drop in piracy, drop in accessibility
  • 2019-12-26
    Parking spot finder
  • 2019-12-26
    In praise of the simple tech stack
  • 2019-12-25
    Increasing creativity
  • 2019-12-24
    Write mobile, edit desktop
  • 2019-12-23
    iPhone 11 battery
  • 2019-12-22
    Netflix's CEO transition
  • 2019-12-21
    DeAMPifying my blog
  • 2019-12-20
    Privacy updates and emission standards
  • 2019-12-19
    Class action settlements
  • 2019-12-18
    Shoulders of giants
  • 2019-12-17
    2019 donations
  • 2019-12-16
    Disney's hostile takeover
  • 2019-12-15
    TabNine
  • 2019-12-14
    Avoiding the mouse
  • 2019-12-13
    Disney+
  • 2019-12-12
    2019 Predictions in review
  • 2019-12-11
    Strive for linear complexity
  • 2019-12-11
    Search within Google search
  • 2019-12-10
    Solve categories, not individual problems
  • 2019-11-29
    My TI-89
  • 2019-11-28
    Thanksgiving
  • 2019-11-24
    Improving product reviews
  • 2019-11-23
    Optimizing long running SQL queries
  • 2019-11-19
    SMS based password manager
  • 2019-11-17
    Rebirth of digital piracy?
  • 2019-11-08
    DYI password manager
  • 2019-11-06
    Importing resources into terraform
  • 2019-11-04
    Upgrade your libraries
  • 2019-11-02
    QR codes in China
  • 2019-10-29
    Computer history memos
  • 2019-10-28
    Deplying Docker using systemd
  • 2019-10-26
    GitHub's security automation
  • 2019-10-20
    File size histogram via the command line
  • 2019-10-13
    Bypassing the incognito browser check on nytimes.com
  • 2019-10-12
    Online food delivery markups: Seamless vs UberEats vs DoorDash
  • 2019-10-11
    Combining Excel and the command line
  • 2019-10-07
    Visualizing my Twitter archive - 2019 edition
  • 2019-10-06
    Make sure you're understood
  • 2019-10-03
    Upgrading pip packages within a Dockerfile
  • 2019-10-01
    Visualizing Kafka partition changes
  • 2019-09-28
    SSO and SAAS pricing
  • 2019-09-23
    Free speech and the First Amendment
  • 2019-09-16
    Goldilocks and the three implementations
  • 2019-09-15
    Google Sheets explore functionality
  • 2019-09-14
    Solving Num: A combinatoric math game
  • 2019-09-13
    In praise of tcpdump
  • 2019-09-12
    Where's the new iPhone SE?
  • 2019-08-27
    Getting public keys from GitHub
  • 2019-08-25
    Explain the why in code reviews
  • 2019-08-24
    Disney+
  • 2019-08-22
    What do airlines and LinkedIn have in common?
  • 2019-08-05
    Yahoo fantasy football stats: 2019-2020 edition
  • 2019-08-04
    Diablo on the web
  • 2019-07-29
    Sports biographies as management books
  • 2019-07-28
    Open sourcing configurations
  • 2019-07-27
    GitHub blocks access from Iran
  • 2019-07-26
    PagerDuty's incident response guide
  • 2019-07-21
    A more efficient Google Calendar backup
  • 2019-07-21
    A more efficient Google Calendar
  • 2019-07-19
    Why is your Confluence in Polish?
  • 2019-07-17
    Substack vs Medium
  • 2019-07-16
    Cloudflare outage postmortem
  • 2019-07-15
    Environmental sustainability
  • 2019-07-14
    Toward a global government
  • 2019-07-14
    My Ubuntu experinece
  • 2019-07-14
    DNS resolution gotchas
  • 2019-07-13
    Keeping Ubuntu computers in sync
  • 2019-07-10
    Personal dashboards
  • 2019-07-09
    Ideal tech intern projects
  • 2019-07-08
    Power of habit
  • 2019-07-07
    Video of my Data Council NYC talk
  • 2019-07-06
    Credit card merchant fees
  • 2019-07-05
    Future of cloud is hybrid
  • 2019-07-04
    Increasing the bar for reelection
  • 2019-07-03
    Revamping my online security
  • 2019-07-02
    Combine registration and sign in
  • 2019-07-01
    Sign In with Apple
  • 2019-06-15
    Tightly coupled data loss
  • 2019-05-31
    Video games of my youth
  • 2019-05-04
    Patents and Patent Law
  • 2019-04-30
    Polaroid and Dr. Edwin Land
  • 2019-04-27
    Gerrymandering
  • 2019-04-23
    Free as in puppy
  • 2019-03-22
    YouTube's popularity
  • 2019-03-17
    Airbnb and HotelTonight
  • 2019-03-10
    LinkedIn's terrible messaging experience
  • 2019-02-28
    Dropbox should drop the freemium model
  • 2019-02-10
    Netflix recommendation system failure
  • 2019-02-09
    A personal DSP
  • 2019-02-02
    Finally, some price increases
  • 2019-01-27
    Modernizing Makers Alley and Better404
  • 2019-01-12
    Buying Kindle books on iOS
  • 2019-01-08
    GitHub's new plan
  • 2019-01-06
    Java's SimpleDateFormat: YYYY vs yyyy
  • 2018
  • 2018-12-31
    Farewell 2018, Hello 2019!
  • 2018-12-31
    Dorm rooms for adults
  • 2018-12-31
    2019 Predictions
  • 2018-12-30
    Twenty seconds makes all the difference
  • 2018-12-30
    Mexico city thoughts
  • 2018-12-30
    Amazon vs Walmart
  • 2018-12-29
    Wired headphones
  • 2018-12-29
    The Teotihuacan pyramids
  • 2018-12-29
    Moving from OS X to Ubuntu
  • 2018-12-28
    Calendly
  • 2018-12-27
    Eerie blue NYC sky
  • 2018-12-27
    Amazon's "Add to list" design
  • 2018-12-26
    Visualizing my blog: 2018 edition
  • 2018-12-26
    Secret management across computers
  • 2018-12-25
    Top posts of 2018
  • 2018-12-25
    Happy holidays from Visual Studio Code
  • 2018-12-24
    Solve all web app performance problems with SQL
  • 2018-12-24
    Open, Public, Electronic, and Necessary Government Data Act
  • 2018-12-24
    Calendars as streaming events
  • 2018-12-23
    Quora's revenue model
  • 2018-12-22
    HackerRank
  • 2018-12-22
    Edge moving to Chromium
  • 2018-12-21
    Global roaming
  • 2018-12-21
    FIxing spotty AirBnB wifi
  • 2018-12-20
    Tech startups are not the only ones taking risks
  • 2018-12-19
    New iteration of DevOps
  • 2018-12-19
    Facebook's latest hit
  • 2018-12-18
    I finally tried an electric scooter
  • 2018-12-17
    The new company town
  • 2018-12-16
    Stuck on a problem? Take a break
  • 2018-12-15
    Overanalyzing Medium's tag suggestions
  • 2018-12-15
    New code is not a linear increase in complexity
  • 2018-12-14
    State of tech in 2018
  • 2018-12-13
    Counting the number of lines of code in a GitHub account
  • 2018-12-12
    Scenepeek
  • 2018-12-11
    The price of AWS vs GitHub
  • 2018-12-10
    EMR vs Databricks costs
  • 2018-12-09
    The modern economy relies on information
  • 2018-12-09
    Avoiding content overload
  • 2018-12-08
    Automatic login
  • 2018-12-07
    Speech recognition and a bunch of APIs
  • 2018-12-06
    Conference call echoes
  • 2018-12-05
    The golden age of browsers
  • 2018-12-04
    How many wifi devices do we have?
  • 2018-12-03
    Overcoming writing rustiness
  • 2018-12-02
    Mobile payments and messaging apps
  • 2018-12-01
    Fat specs, light stories
  • 2018-11-30
    Tragedy of the commons: Apartment edition
  • 2018-11-29
    A delivery aggregation service
  • 2018-11-28
    Shell history: 2018 edition
  • 2018-11-27
    Privacy in a face detection world
  • 2018-11-26
    An ad on the Google search homepage
  • 2018-11-25
    Exploring my backlinks
  • 2018-11-25
    Aggressive code deprecation
  • 2018-11-24
    Code without online help
  • 2018-11-24
    Adding optionality to products
  • 2018-11-23
    Electronic goods are cheaper than ever
  • 2018-11-22
    History's largest empires
  • 2018-11-21
    Superhuman review
  • 2018-11-20
    My DataEngConf 2018 talk
  • 2018-11-19
    Computer history books
  • 2018-11-18
    Falling behind my 2018 blogging goal
  • 2018-11-17
    Random quotes
  • 2018-11-16
    Python 3 and aiohttp
  • 2018-11-15
    Limiting tracking in email
  • 2018-11-14
    What messaging war?
  • 2018-11-13
    A UX gem in Google Slides
  • 2018-11-12
    Social Security Administration spoofing scam
  • 2018-10-29
    Gmail's autocomplete
  • 2018-10-25
    Just ship it
  • 2018-10-13
    Equity in the gig economy
  • 2018-08-21
    Incognito mode: Chrome vs Safari
  • 2018-08-18
    Yahoo fantasy football stats: 2018-2019 edition
  • 2018-08-15
    Google Calendar: Constantly shipping
  • 2018-07-29
    Privacy vs user experience
  • 2018-07-22
    Bulk discounts hurt competition
  • 2018-07-21
    Class action settlement emails
  • 2018-07-10
    In a software world, humanity comes first
  • 2018-07-07
    MySQL foreign keys
  • 2018-06-28
    Using personal AWS credentials in production
  • 2018-06-05
    ALB and ELB access log schemas for Redshift
  • 2018-06-01
    Type 1 and Type 2 tech specs
  • 2018-05-26
    Power of shell commands
  • 2018-05-14
    Memory as a stack
  • 2018-05-12
    Curse of the early adopter
  • 2018-04-28
    Rise of microbrands
  • 2018-04-25
    Connect Four bot competition
  • 2018-04-17
    Secure at the network level
  • 2018-04-12
    Load testing
  • 2018-04-03
    Open sourcing self driving car data
  • 2018-03-25
    Protecting data ouside of a Terms of Service
  • 2018-03-18
    Facebook's "breach"
  • 2018-03-11
    Crowdsourced data
  • 2018-03-03
    Hunting for my old GeoCities site
  • 2018-02-25
    Retrieving Kindle highlights
  • 2018-02-20
    Analyzing AWS ELB logs
  • 2018-02-10
    Optimize for keyboard shortcuts
  • 2018-02-09
    Making the most of the subway commute
  • 2018-02-03
    My follower factory
  • 2018-01-28
    MoviePass: A fascinating business model
  • 2018-01-23
    Design anti pattern: Tab switching autosave
  • 2018-01-16
    Phonetic distance
  • 2018-01-13
    Calendar query language
  • 2018-01-03
    Learning Docker
  • 2017
  • 2017-12-31
    Favorite books of 2017
  • 2017-12-28
    AR Adblocking
  • 2017-12-27
    Visualizing my 2017 stats
  • 2017-12-26
    People do what you inspect, not what you expect
  • 2017-12-25
    Send a shirt, get a shirt
  • 2017-12-24
    Top posts of 2017
  • 2017-12-22
    My Medium experiment
  • 2017-12-21
    Analyzing my blog: 2017 edition
  • 2017-12-14
    More intelligent credit card merchant rates
  • 2017-12-10
    Google's news problem
  • 2017-12-07
    Jira analysis script
  • 2017-12-01
    Measuring sprint efficiency
  • 2017-11-30
    Google Voice transcription fails
  • 2017-11-25
    Make all laws temporary
  • 2017-11-23
    Improving Jekyll generation speed for AMP pages
  • 2017-11-20
    Ride sharing ride bailing
  • 2017-11-18
    Archiving large MySQL tables
  • 2017-11-15
    DevOps and Core Engineering application gap
  • 2017-11-11
    Modern world of massive competiting corporations
  • 2017-11-07
    Spark's read.jdbc
  • 2017-10-30
    Slides from my talk at DataEngConf
  • 2017-10-29
    Philosophy of code
  • 2017-10-27
    The code review pyramid
  • 2017-10-21
    GPS: The foundation of them all
  • 2017-10-20
    Schedule automation using Google spreadsheets and Slack
  • 2017-10-15
    Carrier specific iPhone ads
  • 2017-10-14
    Scale challenges with AWS Athena
  • 2017-10-09
    Downloading your AIM buddy list
  • 2017-10-07
    Farewell, AIM
  • 2017-10-05
    Generating a series of commands covering a date range
  • 2017-10-02
    Writer's block and code
  • 2017-10-01
    Lessons from a Yes concert
  • 2017-09-22
    Open sourcing government
  • 2017-09-21
    Examining my shell command history
  • 2017-09-09
    Apartment rental arbitrage
  • 2017-09-06
    Scaling meal kit distribution
  • 2017-09-04
    Cross app AI
  • 2017-08-31
    Amazon's real leverage
  • 2017-08-28
    Focus on the story
  • 2017-08-27
    Why live sports?
  • 2017-08-25
    A unified Lambda architecture
  • 2017-08-22
    Death of retail
  • 2017-08-20
    JSON to CSV
  • 2017-08-12
    A Snapcode in the mail
  • 2017-08-10
    Start with pen and paper
  • 2017-08-08
    Google Docs vs Confluence
  • 2017-08-07
    Ephemeral data
  • 2017-07-28
    Visualizing my meetings over time
  • 2017-07-24
    A Google Docs efficiency win
  • 2017-07-23
    The wild world of online trackers
  • 2017-07-13
    Cities and outsourced infrastructure
  • 2017-07-09
    Increasing software engineer specialization
  • 2017-07-08
    Yahoo fantasy football stats: 2017-2018 edition
  • 2017-07-04
    Thoughtful code
  • 2017-06-30
    Send private messages to all members of a Slack channel
  • 2017-06-26
    RSS finally fixed
  • 2017-06-24
    Unsubscribe and wait 10 days
  • 2017-06-22
    Apple's ARKit
  • 2017-06-20
    Getting AMP into RSS
  • 2017-06-17
    Investigating application issues
  • 2017-06-16
    The Amazon juggernaut
  • 2017-06-04
    Mary Meeker's Internet Trends 2017
  • 2017-05-30
    Learn from failure, not success
  • 2017-05-27
    Engineering, product, and design
  • 2017-05-25
    IVR to SMS
  • 2017-05-23
    Type dependent databases
  • 2017-05-20
    Copying production SQL data to other environments
  • 2017-05-17
    The different flavors of engineering interviews
  • 2017-05-13
    In praise of the polymath
  • 2017-05-10
    Using options to play Snapchat's quarterly results
  • 2017-05-07
    Tools over languages
  • 2017-05-04
    Security across multiple AWS regions
  • 2017-04-30
    Having some fun with the RGB color model
  • 2017-04-23
    The golden age of big data tools
  • 2017-04-21
    Subscription all the things
  • 2017-04-16
    AMP and subscription paywalls
  • 2017-04-11
    SQL is the perfect interface
  • 2017-04-09
    Optical illusions and self driving cars
  • 2017-04-08
    Quality over quantity: NextDoor vs Craigslist
  • 2017-04-04
    Changing good code is easy
  • 2017-04-02
    Slack's channel exit anti pattern
  • 2017-03-26
    Fulfillment by Amazon counterfeiting
  • 2017-03-25
    The effects of marketing on price
  • 2017-03-22
    Embrace experimentation
  • 2017-03-19
    Refactor driven development
  • 2017-03-12
    In praise of long running code
  • 2017-03-09
    Stop procrastinating
  • 2017-03-04
    Automating admin work: Spreadsheets to Slack
  • 2017-02-28
    Lessons learned from today's S3 failure
  • 2017-02-26
    My Snapchat investment strategy
  • 2017-02-21
    Advice for coding bootcamp graduates
  • 2017-02-19
    Math is incredible
  • 2017-02-16
    Read books, not blog posts
  • 2017-02-13
    Mancur Olson and the changing economy
  • 2017-02-09
    Traffic efficiency
  • 2017-02-06
    New law? Let the opposition name it
  • 2017-02-04
    Identifying product weaknesses using Google autocomplete
  • 2017-02-01
    Learning modern frontend development
  • 2017-01-28
    The freedom to move
  • 2017-01-26
    Shame on United and Bank of America
  • 2017-01-16
    Powering our devices using the human body
  • 2017-01-14
    Find the arbitrage opportunities in hiring
  • 2017-01-11
    Information bandwidth of audio and display ads
  • 2017-01-04
    Top posts of 2016
  • 2017-01-02
    Year in review: 2016
  • 2016
  • 2016-12-31
    Favorite books of 2016
  • 2016-12-31
    Amazon's peer to peer marketplace
  • 2016-12-30
    Human-AI cooperation
  • 2016-12-29
    Traveling? Buy a local book
  • 2016-12-24
    Comparing public transit systems: New York vs London
  • 2016-12-17
    Programming languages and developer tools
  • 2016-12-13
    Automatically taking screenshots of HTML elements
  • 2016-12-10
    Word clouds and text similarity
  • 2016-12-09
    It's donation season
  • 2016-12-06
    Efficiency vs expressiveness
  • 2016-12-03
    Read the release notes
  • 2016-11-30
    Becoming a better developer
  • 2016-11-27
    Visualizing your AWS costs
  • 2016-11-19
    Joy of old code
  • 2016-11-18
    Comparing the web requests made by the top sites: 2014 vs 2016
  • 2016-11-13
    Recursive redirects with AWS Lambda
  • 2016-11-12
    A poor man's data pipeline
  • 2016-11-06
    Restricted highlighting on the Amazon Kindle
  • 2016-10-30
    The NFL abroad
  • 2016-10-26
    Simple data visualizations from the command line
  • 2016-10-23
    Preventing future DDOS attacks
  • 2016-10-19
    Revisiting my Twitter activity
  • 2016-10-13
    My new blogging setup
  • 2016-10-10
    Setting up secor for Kafka 0.10
  • 2016-10-09
    Friction and mass surveillance
  • 2016-10-02
    iOS wifi security recommendation
  • 2016-10-01
    Shaming meeting room hogs
  • 2016-09-25
    NFL Thursdays on Twitter
  • 2016-09-23
    A smarter Touch ID
  • 2016-09-18
    Automating management
  • 2016-09-13
    Supporting Disqus in AMP
  • 2016-09-10
    Comparing my top sites: 2012 vs now
  • 2016-09-08
    AMP migration scripts
  • 2016-09-05
    Visualizing fantasy football stats
  • 2016-09-05
    AMPifying my blog
  • 2016-09-01
    Violating the norms of a social network
  • 2016-08-29
    Food identification with Google's Cloud Vision
  • 2016-08-28
    Giving wallabag a shot
  • 2016-08-24
    Writing scrapers as APIs
  • 2016-08-21
    Downloading your Turo ride history
  • 2016-08-14
    Integrating poorly documented Open Source libraries
  • 2016-08-13
    Fantasy football stats: 2016-2017 edition
  • 2016-08-08
    Consumer tech leads to cyborgs
  • 2016-08-07
    Engineering management: Measuring the unmeasurable
  • 2016-08-06
    One of my favorite programs
  • 2016-07-26
    Smarter geographic ad targeting
  • 2016-07-22
    Double down on your brand and IP
  • 2016-07-17
    Coding puzzle: Word transformation through valid words
  • 2016-07-16
    Whatever happened to automatic login?
  • 2016-07-10
    A Twitter Moments fail
  • 2016-07-09
    Consumer protection for UX
  • 2016-07-04
    Maximize the potential energy of your code
  • 2016-07-03
    Snapchat's massive potential
  • 2016-06-26
    Low cost at small scale
  • 2016-06-23
    The Brave browser
  • 2016-06-22
    Messaging app fragmentation
  • 2016-06-19
    Blogging from my phone
  • 2016-06-18
    AWS, Stripe, and WeWork
  • 2016-06-12
    Analyzing my blog
  • 2016-06-11
    Following up on a website optimization offer
  • 2016-06-06
    Word clouds in R
  • 2016-06-05
    Blogging: The small wins
  • 2016-05-28
    Uber and self driving cars
  • 2016-05-22
    Analyzing IMDB data: Actors vs actresses
  • 2016-05-21
    Analyzing IMDB data: Step 1 - Cleaning and QA
  • 2016-05-15
    Experimenting with Medium
  • 2016-05-14
    Expiration date selection design anti pattern
  • 2016-05-11
    Identifying unused database tables
  • 2016-05-08
    Google's photo search is eerily incredible
  • 2016-04-30
    Text is king
  • 2016-04-27
    Avoid full body code transplants
  • 2016-04-23
    A Telegram blog bot
  • 2016-04-18
    Irrationality of the markets: Amazon up, Netflix down
  • 2016-04-13
    The corporate email signup design pattern
  • 2016-04-10
    Unintended consequences
  • 2016-04-07
    Generalize at n=3
  • 2016-04-05
    The best code is no code
  • 2016-04-03
    Ben Thompson's “laddering up” and building bigger moats
  • 2016-03-27
    Unbundling politics
  • 2016-03-26
    Political parties are product bundles
  • 2016-03-21
    Data analysis needs to be fun
  • 2016-03-20
    Passing the torch: IBM to Google
  • 2016-03-13
    Approach work like the gym
  • 2016-03-10
    The MySQL enum type
  • 2016-03-06
    Airbnb, Uber, and local laws
  • 2016-03-05
    AWS EC2 instance arbitrage
  • 2016-02-28
    Tool specialization and growing companies
  • 2016-02-27
    Aural information density
  • 2016-02-22
    Platform partnerships
  • 2016-02-21
    Amazon Echo
  • 2016-02-20
    Let's Encrypt
  • 2016-02-17
    The impact of self driving cars
  • 2016-02-15
    Design your database for flexibility
  • 2016-02-13
    Longer terms in government?
  • 2016-02-10
    Retargeting gone wrong
  • 2016-02-07
    Don't build a Homer
  • 2016-01-31
    Describe what your code won't do
  • 2016-01-29
    Unification in tech and a new Gilded Age
  • 2016-01-24
    The famed 10x developer
  • 2016-01-23
    The ownership hierarchy
  • 2016-01-17
    Poor, neglected Google Voice
  • 2016-01-12
    2015 Stats: Part 1
  • 2016-01-10
    Cleanest way to read a CSV file with Python
  • 2016-01-09
    Have consistent development environments
  • 2016-01-03
    Paris versus New York City
  • 2016-01-01
    Lessons from 2015
  • 2015
  • 2015-12-28
    Smartphone usage by generation
  • 2015-12-25
    The true cost of low quality
  • 2015-12-20
    Have a work “workout” plan
  • 2015-12-19
    Automatically generating APIs
  • 2015-12-15
    Know what's mission critical
  • 2015-12-12
    Jersey City garbage truck routes
  • 2015-12-07
    Optional museum fees and corporate sponsorships
  • 2015-12-06
    Setting up a new computer - then and now
  • 2015-12-02
    Think interfaces, not implementation
  • 2015-11-26
    Analyzing large networks
  • 2015-11-22
    Why are Netflix and Spotify so different?
  • 2015-11-21
    More MySQL fun
  • 2015-11-19
    Adhoc task management
  • 2015-11-12
    My old projects
  • 2015-11-09
    Apps on LTE, mobile web on wifi
  • 2015-11-08
    A company marches on its data
  • 2015-11-05
    Zoning Airbnb
  • 2015-11-01
    Good code is easy to build and deploy
  • 2015-10-29
    Some nostalgia
  • 2015-10-25
    Production makes fools of us all
  • 2015-10-21
    Jsonify.me 2.0
  • 2015-10-19
    Dates in the shell
  • 2015-10-18
    Writing code? Think about the deployment
  • 2015-10-15
    Adblock, publishers, and content quality
  • 2015-10-11
    Have a 'go to' project when learning a new programming language
  • 2015-10-10
    Not every big company is evil
  • 2015-10-04
    Is media consumption zero sum?
  • 2015-09-26
    The iPad Pro and Apple's walled garden
  • 2015-09-24
    Mapping the Jersey City parking zones II
  • 2015-09-20
    Keep on learning
  • 2015-09-15
    Internalizing externalities
  • 2015-09-13
    Workaround driven product development
  • 2015-09-12
    Mapping the Jersey City parking zones
  • 2015-09-05
    Smart OSes
  • 2015-09-03
    Come on Twitter
  • 2015-08-31
    Two factor authentication hell
  • 2015-08-29
    Game theory dining
  • 2015-08-23
    Learn the application architecture through AWS
  • 2015-08-20
    Development cycles across programming languages
  • 2015-08-16
    A phoneless day
  • 2015-08-15
    Generating vs filtering
  • 2015-08-12
    Reprioritizing a non priority RabbitMQ queue
  • 2015-08-09
    Static site search
  • 2015-08-03
    Debate what's necessary and no more
  • 2015-08-01
    It's not done until it's deployed
  • 2015-07-29
    The Go interface
  • 2015-07-25
    Use the database Luke
  • 2015-07-20
    Tunnel vision
  • 2015-07-19
    Excel wins
  • 2015-07-16
    A Bloom filter in my head
  • 2015-07-12
    Comparing SQL schemas
  • 2015-07-08
    Apple and Intel
  • 2015-07-06
    Zsh and Oh My Zsh
  • 2015-06-27
    Ambiguous SQL queries
  • 2015-06-23
    Domain specific API definitions
  • 2015-06-20
    Properly handling text based two factor authentication
  • 2015-06-19
    The Edmunds API
  • 2015-06-13
    Smartphone productivity
  • 2015-06-09
    A MySQL “GROUP BY” nuance
  • 2015-06-07
    Finding the optimal car to list on RelayRides
  • 2015-05-30
    Date range generation
  • 2015-05-26
    Dealing with a stripped screw
  • 2015-05-25
    Google Chrome knows what's best for me
  • 2015-05-22
    The decline of niche tools
  • 2015-05-18
    Experts, time, and quality
  • 2015-05-17
    Taking spontaneous notes
  • 2015-05-12
    Mosh trumps shoddy internet
  • 2015-05-09
    Driving before GPS
  • 2015-05-06
    Computer show fliers from the mid 1990s
  • 2015-05-02
    A unique solution to every problem
  • 2015-04-28
    A few days with Google Contributor
  • 2015-04-26
    AWS service limits
  • 2015-04-23
    Adding columns in PostgreSQL and Redshift
  • 2015-04-19
    Don't scrape into a Dropbox folder
  • 2015-04-12
    The uncanny valley of advertising
  • 2015-04-12
    Dealing with an unresponsive Google CDN
  • 2015-04-06
    Redshift meets Excel
  • 2015-04-03
    My tool setup
  • 2015-03-29
    iOS first and username claiming
  • 2015-03-24
    Why login after resetting your password?
  • 2015-03-21
    The sharing economy and human behavior
  • 2015-03-18
    Power of engineering standards
  • 2015-03-15
    Learning to spell again
  • 2015-03-14
    An ode to Pi
  • 2015-03-10
    Strongly typed, static language tools
  • 2015-03-08
    Computer literacy for protection and productivity
  • 2015-02-28
    Getting the most out of log4j
  • 2015-02-26
    Lists and localStorage
  • 2015-02-23
    In praise of the full stack developer
  • 2015-02-22
    Lessons from Node
  • 2015-02-16
    Smarterphones
  • 2015-02-13
    Learning Scala
  • 2015-02-07
    URL redirection app
  • 2015-02-01
    MySQL vs PostgreSQL sort order
  • 2015-01-29
    Migrating a simple HTTP application on AWS
  • 2015-01-26
    IBM's rumored layoff
  • 2015-01-25
    The changing fidelity of the past
  • 2015-01-24
    Don't trust client side data
  • 2015-01-18
    Fun with GitHub's map tools
  • 2015-01-17
    Take the first step
  • 2015-01-11
    2014 stats
  • 2015-01-09
    Limited language codebases
  • 2015-01-06
    Some quick Twitter analytics analysis
  • 2015-01-04
    Introducing jsonify.me
  • 2014
  • 2014-12-31
    Redirect recursion
  • 2014-12-29
    A new Turing test
  • 2014-12-26
    DevOps for the rest of us
  • 2014-12-20
    Passive technology and the decline of privacy
  • 2014-12-18
    Amazon's Fire TV Stick
  • 2014-12-16
    Why log me out?
  • 2014-12-14
    Waiting for the aha moment
  • 2014-12-13
    Travel to appreciate technological growth
  • 2014-12-09
    Piketty and the power of data
  • 2014-12-07
    Internetless coding
  • 2014-12-01
    Symptom based monitoring
  • 2014-11-24
    AWS: Always shipping
  • 2014-11-22
    Fab's fall from grace and the difficulty of startups
  • 2014-11-20
    Paying publishers without ads
  • 2014-11-18
    Backendless applications
  • 2014-11-13
    Productivity optimization
  • 2014-11-09
    Some simple AWS tools
  • 2014-11-05
    Luxury for cheap
  • 2014-11-01
    Tools as tools, not products
  • 2014-10-28
    Libraries
  • 2014-10-27
    Lessons learned teaching a MySQL class
  • 2014-10-26
    Spam blog comments
  • 2014-10-19
    My first open source contribution
  • 2014-10-18
    Link bait titles are a race to zero
  • 2014-10-12
    AWS Glacier
  • 2014-10-08
    Clearing my head
  • 2014-10-04
    XKCD movie quotes by Android
  • 2014-10-01
    Normalizing a CSV file using MySQL
  • 2014-09-27
    Mobile web browsing and Javelin
  • 2014-09-25
    Dev tools matter
  • 2014-09-21
    Software is good enough, why improve the hardware?
  • 2014-09-20
    Dealing with an RDS replication issue
  • 2014-09-17
    Web development bootcamps
  • 2014-09-16
    Top down vs bottom up coding
  • 2014-09-08
    Curated Twitter timelines and the tech stack
  • 2014-09-07
    Importance of various tech services
  • 2014-09-01
    API first startups
  • 2014-08-30
    Managing settings files in Django projects
  • 2014-08-26
    Yahoo fantasy football stats - 2014 edition
  • 2014-08-22
    Cofounders and their situations
  • 2014-08-18
    Trick your users into staying
  • 2014-08-17
    A MySQL class proposal
  • 2014-08-11
    Books are insanely cheap
  • 2014-08-09
    Evolution of code deployment
  • 2014-08-03
    Getting the most out of Lyft's 50 free rides
  • 2014-07-31
    Hiring people on Odesk
  • 2014-07-29
    Low quality? Start bundling!
  • 2014-07-27
    Ephemeral security questions
  • 2014-07-23
    When one door closes, another door opens
  • 2014-07-16
    A simple way to automate AWS deployments
  • 2014-07-15
    Set up HTTPS on EC2 running Nginx without ELB
  • 2014-07-14
    Getting low level with HTTP
  • 2014-07-13
    Good artists use fewer tools
  • 2014-07-10
    Amazon courting app developers for the Fire phone
  • 2014-07-09
    On Google Now
  • 2014-07-07
    Retrieving a Twitter user's followers and followees
  • 2014-07-05
    The future of databases
  • 2014-06-15
    On having my Pinterest account hacked
  • 2014-06-12
    An eBay design rant: timezone support
  • 2014-06-08
    Replacing Evernote
  • 2014-06-07
    Debugging a reverting database update
  • 2014-06-02
    Approachable data science
  • 2014-05-29
    Generate fake SQL data using JavaScript
  • 2014-05-24
    On Fab's latest move
  • 2014-05-20
    Logging in through your inbox
  • 2014-05-16
    Examining ssh login requests
  • 2014-05-15
    Coding in a VR future
  • 2014-05-12
    Most commonly used shell commands
  • 2014-05-10
    Site down? Fall back to S3
  • 2014-05-03
    Gap fills and cross joins in Excel
  • 2014-05-02
    Migrating from Linode to Digital Ocean
  • 2014-04-28
    System knowledge and human creativity
  • 2014-04-25
    Craigslist: the web's fertilizer
  • 2014-04-21
    Bulk geocoding tool
  • 2014-04-16
    Vertical integration and web development
  • 2014-04-13
    Some computer memories
  • 2014-04-12
    My computer experience
  • 2014-04-07
    Self hosted services
  • 2014-04-04
    PostgreSQL Fibonacci
  • 2014-03-30
    AWS is about infrastructure optionality
  • 2014-03-28
    Hacker lore
  • 2014-03-25
    Visualizing my browsing history
  • 2014-03-18
    Goodbye Gmail
  • 2014-03-16
    Fun with the Oyster books API
  • 2014-03-11
    Website load times: NYC vs Beijing
  • 2014-03-09
    Examining the requests made by the top 100 sites
  • 2014-03-06
    Follow the WhatsApp money
  • 2014-03-02
    Trained for discounts
  • 2014-02-26
    Blog posts are now tagged
  • 2014-02-21
    More Sierpinski fun
  • 2014-02-19
    Sierpinski triangle in D3
  • 2014-02-15
    Heuristic vs algorithmic approaches
  • 2014-02-13
    Foursquare as a contact book
  • 2014-02-10
    Using virtualenv in production
  • 2014-02-09
    Travel more
  • 2014-02-05
    Visualizing GPS data in R
  • 2014-02-02
    Why I manage my own blog
  • 2014-01-25
    Solving coding tests in PostgreSQL
  • 2014-01-23
    Developing on a remote instance
  • 2014-01-19
    Emotional products
  • 2014-01-15
    Ebook readers
  • 2014-01-09
    Taxi prices around the world
  • 2014-01-05
    Surge pricing ideas
  • 2014-01-04
    Visualizing RunKeeper data in R
  • 2013
  • 2013-12-30
    2013 blog stats
  • 2013-12-29
    Taxi pricing in NYC vs Mumbai
  • 2013-12-26
    Smartphones and literacy
  • 2013-12-25
    Global products
  • 2013-12-23
    Getting a SIM card in India
  • 2013-12-21
    CSV powered products
  • 2013-12-20
    Why Bank of America, why?
  • 2013-12-15
    Using the information_schema.columns table
  • 2013-12-09
    Why are there so many cleaning startups?
  • 2013-12-01
    Drowning in JavaScript
  • 2013-11-30
    Genetic programming Connect 4
  • 2013-11-26
    Blog analytics (blogolytics?)
  • 2013-11-23
    I'm joining TripleLift
  • 2013-11-16
    A Twitter flashback
  • 2013-11-15
    RDS and R
  • 2013-11-09
    Is Excel on a Mac intentionally hobbled?
  • 2013-11-07
    Security in the wake of MongoHQ
  • 2013-11-03
    Why I run
  • 2013-10-30
    What the SEO? Followup
  • 2013-10-27
    Lessons from consulting
  • 2013-10-23
    Some more design ranting
  • 2013-10-20
    What the SEO?
  • 2013-10-14
    But I don't have time
  • 2013-10-13
    My running progress
  • 2013-10-12
    Decline of cynicism
  • 2013-10-05
    Some JavaScript Tools
  • 2013-10-01
    Why's the iPhone 5C so expensive?
  • 2013-09-30
    Going rate for an email address
  • 2013-09-28
    Pricing small consulting projects
  • 2013-09-20
    In defense of Excel
  • 2013-09-17
    Programming and math
  • 2013-09-16
    Offering suggestions
  • 2013-09-11
    MoMath visit
  • 2013-09-06
    Want more sales? Start teaching
  • 2013-09-03
    Design anti pattern: footer under infinite scroll
  • 2013-09-02
    Startups aren't black and white
  • 2013-08-28
    Simplicity vs power in product design
  • 2013-08-26
    Extract info from a web page using JavaScript
  • 2013-08-24
    Splitting an AWS account
  • 2013-08-18
    On Teaching AP Computer Science
  • 2013-08-14
    Netflix profiles, why now?
  • 2013-08-11
    Rise of flat design
  • 2013-08-07
    Introducing Better 404
  • 2013-08-02
    A brief history of manufacturing
  • 2013-07-30
    Run Django under Nginx, Virtualenv and Supervisor
  • 2013-07-27
    The power inbox
  • 2013-07-22
    Security through monopoly
  • 2013-07-21
    Beware the data monopoly
  • 2013-07-17
    Scraping Yahoo fantasy football stats with Scrapy
  • 2013-07-13
    Marketplaces are hard
  • 2013-07-09
    D3 and Vega
  • 2013-07-07
    Meetings: to take or not to take?
  • 2013-07-03
    A design that's too good?
  • 2013-07-01
    Externalizing externalities in brick and mortar
  • 2013-06-25
    Business frameworks are actually useful
  • 2013-06-21
    Where are you on the sales matrix?
  • 2013-06-20
    Pushing moral boundaries
  • 2013-06-16
    Regulation and the share economy
  • 2013-06-12
    Constantly entertained
  • 2013-06-07
    Fun with Prolog: Priceonomics Puzzle
  • 2013-06-04
    Citibike Directions: Second Attempt
  • 2013-06-01
    Citibike Station to Station Directions
  • 2013-05-29
    On SEO: Authority vs Originality
  • 2013-05-24
    Investing in tech stocks
  • 2013-05-22
    Save my reading spot, damn it
  • 2013-05-17
    Adding attachments to django-postman
  • 2013-05-15
    Google's “free” Adwords credits
  • 2013-05-10
    Eighteen Months of Django: Part 2
  • 2013-05-07
    Eighteen months of Django
  • 2013-05-05
    Netflix, bundling, and the future of video
  • 2013-05-02
    Follow through on that personal welcome email
  • 2013-04-29
    Some gaming nostalgia
  • 2013-04-24
    Smart software; dumb hardware
  • 2013-04-19
    What does getting on the HN front page get you?
  • 2013-04-15
    Automatically add a “Follow on HN” link
  • 2013-04-12
    Why don't cell phones have a dialtone?
  • 2013-04-10
    Raspbmc
  • 2013-04-05
    Coke, Pepsi and Passover
  • 2013-04-02
    The new Gmail compose
  • 2013-03-29
    Mailbox: Is the server required?
  • 2013-03-26
    Welcoming the long, single webpage
  • 2013-03-24
    Email addresses are private?
  • 2013-03-20
    One art, please
  • 2013-03-16
    Makers Alley v2
  • 2013-03-12
    Mmmm... pseudo static sites
  • 2013-03-09
    Just do the work
  • 2013-03-05
    Discriminatory Pricing in the Post Office
  • 2013-03-01
    App Store, what took so long?
  • 2013-02-26
    Book Review: Liars and Outliers
  • 2013-02-25
    Account management madness
  • 2013-02-22
    Vacationing with Foursquare
  • 2013-02-21
    Tesla and privacy
  • 2013-02-12
    An analysis of Lincoln's words
  • 2013-02-08
    More thoughts on online education
  • 2013-02-05
    Identifying duplicate bills across states
  • 2013-02-01
    Improving online programming classes
  • 2013-01-29
    The Patent troll troll
  • 2013-01-24
    Blog updates since November
  • 2013-01-23
    Why aren't there more engineers in politics?
  • 2013-01-19
    Making sense of my Twitter archive
  • 2013-01-15
    What do Fab and Groupon have in common?
  • 2013-01-11
    Is the pen mightier than the sword in a social world?
  • 2013-01-09
    Web scraping like a pro
  • 2013-01-02
    2013 Goals
  • 2013-01-01
    Year in Review 2012
  • 2012
  • 2012-12-19
    Self hosted Instagram export
  • 2012-12-16
    The joy of upgrading an HD in a Macbook
  • 2012-11-29
    Entrepreneurship is not a job
  • 2012-11-14
    Github Migration Notes
  • 2012-11-13
    Hello, Github!
  • 2012-08-12
    Eating Yourself - Innovation & Cannibalization
  • 2012-08-05
    In Defense of Yahoo
  • 2012-07-28
    The Startup Advantage - Details, Details, Details
  • 2012-07-10
    Race to 0 - RIM vs IE
  • 2012-07-09
    Photo taken near Times Square
  • 2012-06-07
    Achieving browser autocomplete
  • 2012-05-23
    Trend of actor vs actress age differences
  • 2012-05-22
    Selling to the enterprise? Target the consumer
  • 2012-05-16
    Peter Thiel's CS183
  • 2012-04-25
    Growth of Consumer Comfort with Technology
  • 2012-04-12
    Draw Something Zyngafied
  • 2012-04-10
    Future of Startups - Small Teams, Big Profit
  • 2012-04-04
    On Writing
  • 2012-03-30
    Where are the event recommendation startups?
  • 2012-03-24
    Overcoming the Build Bias
  • 2012-03-21
    When is it time to leave the full time job?
  • 2012-03-05
    On business models - To collect or to fine?
  • 2012-01-29
    Shakespeare and Startups
  • 2012-01-12
    Improving the Subway User Experience
  • 2011
  • 2011-12-30
    Screwed if you do, screwed if you don't
  • 2011-12-08
    GroupOn Scheduler
  • 2011-01-08
    Tech interview question
  • 2010
  • 2010-08-25
    Google Giving Employees Free Adwords?
  • 2010-03-10
    More posts coming soon
  • 2009
  • 2009-09-28
    Improving your luck
  • 2009-03-08
    Power of Twitter
  • 2009-01-23
    Enabling modules in Apache2 under Ubuntu
  • 2009-01-21
    What's the easiest way to be elected president?
  • 2009-01-20
    More posts coming up
  • 2008
  • 2008-10-24
    On weekend voting
  • 2008-10-01
    Some thoughts on innovation
  • 2008-09-15
    Should we apply the EU model to the US
  • 2008-09-12
    Voting system proposal
  • 2008-09-03
    On TV commercials
  • 2008-06-19
    Advice on internet passwords
  • 2008-06-12
    Privacy in the digital age
  • 2008-05-30
    Interesting Perl behavior
  • 2008-05-28
    Don't judge words by their author
  • 2008-05-24
    Martha's Vineyard Lighthouse
  • 2008-05-21
    Welcome
  • 2008-05-14
    Brainteasers and interviews
  • 2008-05-13
    Why we may never colonize space
  • 2008-05-13
    Printers no longer come with cables?
  • 2008-05-08
    Pronunciation
  • 2008-05-04
    The homeless in the US
  • 2008-05-04
    On Microsoft walking away from Yahoo
  • 2008-04-29
    Why does EA want Take Two?
  • 2008-04-29
    Video games as art
  • 2008-04-25
    On Apple buying PA Semiconductor

© 2024 Dan Goldin
  • Contact
  • GitHub
  • Twitter
  • LinkedIn
  • RSS