Remix.run Logo
Jtsummers 4 days ago

Which is tragic. Waterfall is almost always the wrong way to do things.

adastra22 4 days ago | parent [-]

Why? Waterfall is suboptimal mostly due to human failings.

Jtsummers 4 days ago | parent | next [-]

Waterfall is suboptimal because it's optimistic and lacks feedback loops. Waterfall as codified was not the improved process Royce described, but the flawed process early in his paper.

It's optimistic because it carries an assumption that you can delineate your development into clear phases with a distinct start and finish. That doesn't work on large projects. You don't spend years designing your new system and then years building it and then years testing it. You commingle each of those, and once you do that, you're not doing Waterfall. You're doing something better, you're using your brain.

Iterative & Incremental, Spiral development, or most ideas out of the Agile movement are better. They incorporate feedback into the project and don't have strongly delineated phases. They don't make 10 year project commitments before they've even written a single requirement. Because these are methods that are realistic.

We didn't get to the moon by Waterfall. The Wright brothers didn't succeed in flight with Waterfall. Linux wasn't developed with Waterfall. Waterfall is a failure for large scale systems.

CuriouslyC 3 days ago | parent | prev [-]

AI loves waterfall because every time you insert yourself in the agentic coding loop you reduce the velocity of the system, and if the system blocks on your input the reduction can be pretty epic. Beyond that, AI has myopia, and if you tell it to implement something without a larger framework it understands how to slot it into, it'll put it somewhere that makes no sense, duplicate code, make incompatible interfaces, etc. It's much more efficient to just have the system outlined clearly from the get-go, and this also helps because you can generate E2E tests for validation up front to ensure the features really are valid and working.

adastra22 3 days ago | parent [-]

That is half of it. The other half is that AI is tireless about planning. Most waterfall implementations fail from lack of planning, or when done right (think well managed government programs) are significantly delayed compared with agile because the planning process itself takes forever.

AI will happily spend the human equivalent of months getting the planning details right before implementation. It won’t by default, to be sure, but if prompted right it will. So you can go into a waterfall implantation plan with significantly better and more thought out plans.

CuriouslyC 3 days ago | parent [-]

Yup, I actually force my agents to build a formally validated CUE spec for everything they build, I have a service that gives them a wizard for interacting with the cue to add/remove/update, then when everything we discuss is represented they can use it to sync a project, which will automatically generate missing unit/e2e tests, iac docs, folder stubs with README.md files, etc. It was a lot of work to get agents to interact with the service correctly, so many facepalm moments, but it's pretty magical when it works.

mighmi 2 days ago | parent | next [-]

> CUE spec

Have you heard of Ada, whose type system does the same thing?

adastra22 3 days ago | parent | prev [-]

Still waiting/hoping for you to share your stack!

CuriouslyC 3 days ago | parent [-]

You can follow my development if you want, I'm developing a lot of stuff in public, https://sibylline.dev/products/ or https://github.org/sibyllinesoft/, I haven't done real releases on anything because it's all alpha and I'm iterating on it rapidly so I don't want to rug pull anyone, but if you want to try something out and hack on it I'm happy to have collaborators!

adastra22 3 days ago | parent [-]

Is hydra the main agent coordination framework?