~/talk

Your database migrations are bad and you should feel bad

links:none on file
slides:none on file

Argues that instead of accumulating numbered migration files, use a Postgres-aware diff tool: a command-line plus Python library called migrate that compares a development pg_dump schema and a live dump, emits the exact SQL statements to move from live to goal, and supports temporary databases for fast local cycles. Workflow includes a checked-in pending.sql, running tests both pre- and post-migration, and heuristics for function dependencies; requires access to production schema dumps.

AI-written summary · about

  1. 0:00Introduction
  2. 1:40Structure
  3. 5:52Questions to answer
  4. 6:28The usual answer
  5. 6:47Framework lockin
  6. 7:28Database management
  7. 7:54Primitive table store
  8. 8:42Status quo
  9. 8:54Three schema versions
  10. 9:34Migration files and version numbers
  11. 10:19Database Diff
  12. 12:11Goal Schema
  13. 12:41Goal Schema Example
  14. 14:11Review the File
  15. 17:03Testing
  16. 17:54Test Fixtures
  17. 18:52Trustful migrations
  18. 19:10Independence from our framework
  19. 20:05Questions
  20. 23:05Changes
  21. 23:55Deployment workflow
  22. 25:34Temporary database
  23. 26:51pgdump
  24. 28:04SQL queries
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.