Parse, Don't Guess
3 days ago
- #reliability
- #software development
- #API design
- The author deleted a smart feature from their PostgreSQL parser that guessed foreign key relationships based on naming conventions and table order, because it sometimes produced incorrect results silently, leading to downstream issues.
- The replacement approach requires passing schema metadata to derive relationships from actual primary keys; without schema, the function returns nothing, ensuring reliability by avoiding guesses.
- This design shift, inspired by 'Parse, don't validate,' emphasizes that libraries should admit uncertainty by returning empty results instead of guesses, building trust through factual accuracy.