Nice article :) Ive got some maybe unrelated questions about the feedback loop of the strong typing in code generation.
Ive experimented with automated code generating agent systems on localhost multiple times. Ive got some ok results when it was a project spanning over multiple files without any dependencies. But when I tried to cross a milestone of creating a web apps with lets say flask and some db, ive hit a wall. The problem were the dependencies and api hallucinations and the version/api inconsistencies of dependencies in genereated code. The system had a feedback loop with self-written tests, but even the output of the tests fell into neverending loop. Maybe the problem was python? Maybe annotations would help, maybe should use go?
great question. i am no expert on the topic, and my weekend project ended up being pretty small (a few hundred LoCs in total). I was able to get the core logic "work function" to work, but all of the stuff around it, I wrote by hand.
I'm @a8m's co-founder and also a maintainer of Atlas. I don't have an exact feature comparision but Atlas (and esp the Postgres driver) are heavily maintained with advanced features like views and materialized views (functions and procedures coming up, followed by triggers and more).
What features specifically are you missing in migra? Perhaps we can prioritize them. Also feel free to join our Discord https://discord.gg/zZ6sWVg6NT
Happy to share this announcement of the latest version of Atlas, our open-source schema management tool.
With this version, Atlas gets first-class support for SQL for defining the desired state of the database.
Think of it like "terraform apply" for your MySQL/Postgres/etc. Previously your schema needed to be define in an HCL syntax we maintain, now you can use plain ol' SQL!
Will appreciate feedback and comments!
Rotem, co-creator of Atlas
In this post, we will demonstrate how to create a basic configuration language using HCL and Go. To make this discussion entertaining, let's imagine that we are creating a new PaC (Pizza-as-Code) product that lets users define their pizza in simple HCL-based configuration files and send them as orders to their nearby pizza place.
@thunderbong thanks for posting.
Blogpost author here, happy to answer questions if any exist