I have been playing around with my cloud-based "Tulip Broker" application again. I am using this sample application to learn about AI coding and to try some things with cloud databases. It has been great to try this hands-on; this teaches the concept much better than just in the abstract.
Yes, of course I know that a “scan” is just best-effort in DynamoDB, and of course I know I should have created an index—but that is the difference between knowing and experiencing.
I am preparing for performance testing and noticed the UI was not reliably showing the newest orders. It turned out the backend was using a DynamoDB scan and then sorting client-side. Of course, it kind of worked when I only had a handful of orders, but once I exceeded 50 orders, it was not deterministic anymore.
I configured OpenAI Codex to connect to my AWS account (locked down, with minimum permissions), and it helped diagnose the missing GSI. I then had it backfill older rows by writing entity="ORDER" to existing order items using a one-off Python script, and that resolved it.
On a personal note—this continues to be an amazing experience. Unbelievable how much the software engineering field is changing, and awesome to be part of it.
Comment