sigotirandolas 17 hours ago

My foresight is that when you compensate bad developers with process, measurements and QA, the software breaks when exposed to the real world, which has a habit of doing things you didn't think about.

Maybe an user can open two tabs and manage to submit two incompatible forms. Or a little gap in an API validations' allows a clever hacker to take over other users' accounts. Or a race condition corrupts data and causes a crash loop.

Maybe some are OK with that level of brokenness, but I don't see how software can be robust unless you go into the code and understand what is logically possible. My experience is that AI models aren't very good at this.

1
austin-cheney 14 hours ago

That is exactly why you need good QA and not developers doing their own QA. The role of a good developer is threefold: features, defects, and refactors. 80-90% of your product improvements should live in your refactors and not feature creep.