DEV Community

Dakota Huang profile picture

Dakota Huang

Building things with Python, Go, and JavaScript. Love automating everything.

Location Seattle, WA Joined Joined on 
Freeze the Clock, Not the Timeout: A Time-Zone Matrix Before You Extract a Module

Freeze the Clock, Not the Timeout: A Time-Zone Matrix Before You Extract a Module

Comments
6 min read
Refactor Error Paths First: A Fault-Injection Table for Messy Repos

Refactor Error Paths First: A Fault-Injection Table for Messy Repos

Comments
5 min read
Twenty Identical Runs, Then One Small Diff: Sealing Entropy Before a Messy Refactor

Twenty Identical Runs, Then One Small Diff: Sealing Entropy Before a Messy Refactor

Comments
4 min read
Test the Safety Net First: Mutation-Check Characterization Pins Before a Refactor

Test the Safety Net First: Mutation-Check Characterization Pins Before a Refactor

Comments
5 min read
Twenty Identical Runs or No Refactor: A Determinism Gate for Characterization Tests

Twenty Identical Runs or No Refactor: A Determinism Gate for Characterization Tests

Comments
4 min read
Freeze the Clock First: A Nondeterminism Gate for Messy Refactors

Freeze the Clock First: A Nondeterminism Gate for Messy Refactors

Comments
5 min read
The Bug Is in the Files: Characterize Filesystem Side Effects Before a Messy Refactor

The Bug Is in the Files: Characterize Filesystem Side Effects Before a Messy Refactor

Comments
5 min read
Find the Seam Before You Cut: A Read/Write Census for Messy Modules

Find the Seam Before You Cut: A Read/Write Census for Messy Modules

Comments
7 min read
Cap Snapshot Churn: A Failure-First Characterization Harness for Messy Repos

Cap Snapshot Churn: A Failure-First Characterization Harness for Messy Repos

Comments
5 min read
Pin the Call Log, Not the Return Value: Choosing the Smallest Safe Refactor Move

Pin the Call Log, Not the Return Value: Choosing the Smallest Safe Refactor Move

Comments
6 min read
Record Every Side Effect Before You Extract: A Ledger Diff Gate

Record Every Side Effect Before You Extract: A Ledger Diff Gate

Comments
5 min read
Characterization Tests Are Not Enough: Add a Diff-Budget Guard

Characterization Tests Are Not Enough: Add a Diff-Budget Guard

Comments
6 min read
Seed Five Mutations Before You Trust a Characterization Test

Seed Five Mutations Before You Trust a Characterization Test

Comments
5 min read
Stop Hand-Writing a Hundred Characterization Tests: Shrink a Recorded Corpus Instead

Stop Hand-Writing a Hundred Characterization Tests: Shrink a Recorded Corpus Instead

Comments
5 min read
Shuffle the Input 200 Times Before You Extract One Module

Shuffle the Input 200 Times Before You Extract One Module

Comments
5 min read
Twenty Repeat Runs Before You Move One Function: A Determinism Gate for Messy Repos

Twenty Repeat Runs Before You Move One Function: A Determinism Gate for Messy Repos

Comments
5 min read
Refactor a Repo You Don't Understand: Golden Files First, One Change Second

Refactor a Repo You Don't Understand: Golden Files First, One Change Second

Comments 1
5 min read
One Star Alias Moves Only After Grant Rows Freeze

One Star Alias Moves Only After Grant Rows Freeze

Comments
6 min read
Refund Clock Tests Before the Smallest Extract

Refund Clock Tests Before the Smallest Extract

Comments
7 min read
Freeze Refund Outcomes, Then Extract One Predicate

Freeze Refund Outcomes, Then Extract One Predicate

Comments
7 min read
Hold Receipt Outputs, Then Lift One Tax Function

Hold Receipt Outputs, Then Lift One Tax Function

Comments
8 min read
Record Observed Outputs Before One Safe Refactor

Record Observed Outputs Before One Safe Refactor

Comments
6 min read
Hold Fourteen Retry Outcomes, Then Move Backoff Math

Hold Fourteen Retry Outcomes, Then Move Backoff Math

Comments
8 min read
Freeze the Deadline Split Before You Extract It

Freeze the Deadline Split Before You Extract It

Comments
7 min read
Settings Precedence Stays Put Until Nine Rows Match

Settings Precedence Stays Put Until Nine Rows Match

Comments
6 min read
An Overlap Contract Before Any Shift Helper Split

An Overlap Contract Before Any Shift Helper Split

Comments 1
7 min read
A Cache Helper Moves Only After Nine Frozen Rows

A Cache Helper Moves Only After Nine Frozen Rows

Comments
6 min read
Pin Nine Payload Rows, Then Move One Mapper Branch

Pin Nine Payload Rows, Then Move One Mapper Branch

Comments 1
7 min read
Extract One Quiet-Hour Helper After Eight Rows Pass

Extract One Quiet-Hour Helper After Eight Rows Pass

Comments
7 min read
One Coercion Table Moves Only After Twelve Export Rows Hold

One Coercion Table Moves Only After Twelve Export Rows Hold

1
Comments
9 min read
Hold Three Quote Rows, Then Move One Surcharge

Hold Three Quote Rows, Then Move One Surcharge

Comments
7 min read
Characterize Ship Cutoffs With Twelve Frozen Instants

Characterize Ship Cutoffs With Twelve Frozen Instants

Comments
7 min read
Freeze Warehouse Hold Tuples, Then Move Availability

Freeze Warehouse Hold Tuples, Then Move Availability

Comments
8 min read
Characterize Retry Classes With Integer Wait Rows

Characterize Retry Classes With Integer Wait Rows

Comments
7 min read
Pin Query Rows Before One Cap Helper Moves

Pin Query Rows Before One Cap Helper Moves

Comments
7 min read
Capture Coupon Order Before One Rate Extract

Capture Coupon Order Before One Rate Extract

Comments 1
8 min read
Freeze Aging Labels Before One Status Extract

Freeze Aging Labels Before One Status Extract

Comments
7 min read
Five Discount Rows Are the Refactor Gate

Five Discount Rows Are the Refactor Gate

Comments 2
8 min read
Pin Apply Order Before One Discount Extract

Pin Apply Order Before One Discount Extract

Comments
6 min read
One Helper Moves Only After the Status Table Stays Green

One Helper Moves Only After the Status Table Stays Green

Comments
7 min read
Invoice Cents Stay Put While One Lookup Moves

Invoice Cents Stay Put While One Lookup Moves

Comments
6 min read
A Two-Commit Gate for a Messy Batch Module

A Two-Commit Gate for a Messy Batch Module

Comments
7 min read
Seal File, Clock, and Print Before One Module Split

Seal File, Clock, and Print Before One Module Split

Comments
6 min read
Pin the Golden Row Before You Split Dispatch

Pin the Golden Row Before You Split Dispatch

Comments
6 min read
Lock mkdir Failures Before One Path Extract

Lock mkdir Failures Before One Path Extract

Comments
8 min read
Pin Report Bytes Before You Extract One Parser

Pin Report Bytes Before You Extract One Parser

Comments 2
6 min read
Hold the Wide Diff Until One Score Extract Passes

Hold the Wide Diff Until One Score Extract Passes

Comments
7 min read
Score the Cut, Then Extract One Pure Function

Score the Cut, Then Extract One Pure Function

Comments
6 min read
Keep Audit Order Fixed Before You Extract Decide

Keep Audit Order Fixed Before You Extract Decide

Comments
7 min read
Smallest Adjuster Split After a Four-Row Stock Contract

Smallest Adjuster Split After a Four-Row Stock Contract

Comments
7 min read
Object Identity Belongs in the Flag Overlay Contract

Object Identity Belongs in the Flag Overlay Contract

Comments
7 min read
Keep the Reject Ledger Green Before You Split Ingest

Keep the Reject Ledger Green Before You Split Ingest

Comments
7 min read
Blank Is Not Missing: Lock a Config Merger, Then Extract Once

Blank Is Not Missing: Lock a Config Merger, Then Extract Once

Comments
7 min read
Freeze Quote, Null, and Newline Bytes Before One Join Extract

Freeze Quote, Null, and Newline Bytes Before One Join Extract

Comments
6 min read
Lock Hit and Miss Rows Before Splitting a Formatter

Lock Hit and Miss Rows Before Splitting a Formatter

Comments
6 min read
Pin Seed, Clock, and Cwd Before One Pure Extract

Pin Seed, Clock, and Cwd Before One Pure Extract

Comments
8 min read
Extract Rounding Only After the Row Contract Is Green

Extract Rounding Only After the Row Contract Is Green

Comments
7 min read
Pin Exception Class and Sibling Files Before One Loop Extract

Pin Exception Class and Sibling Files Before One Loop Extract

Comments
7 min read
Freeze Object Identity Before One Mutator Extract

Freeze Object Identity Before One Mutator Extract

Comments
6 min read
Record Logger Identity Before You Touch basicConfig

Record Logger Identity Before You Touch basicConfig

Comments
6 min read
loading...