Last updated 1 min read

Software Development with AI

#AI Alignment, #Software Engineering

A few thoughts on software development with AI

  • Now we have a tool to both significantly improve and significantly worsen the codebase legacy: How Can AI Affect Code Quality

  • Human language is a pretty inefficient way to describe logic of complex systems in prompts because english is not the hottest new programming language.

  • Development workflows have to be re-adjusted. There should be more quality gates between any code change and production. Ensuring that at least some of the quality gates are organic.

  • Software development does not entirely consist of hard problem-solving that requires deep expertise. There are a lot of shallow tasks that can be offloaded to AI in the form of "intelligent" code generation.

  • Sorting out task types and selecting those well-suited for delegation to AI is an art.

  • Software Development with AI needs an extensively well-thought-out application architecture. Flexible enough for different use cases, but restrictive and consistent to ensure that everything works as expected at the high level and hard-to-spot bugs are secured. That's a hard trade-off to balance.

  • At the moment, it feels like the industry is swept up in a FOMO-driven rush, overlooking the security vulnerabilities we’re exposing ourselves to.

  • Even in the worst-case scenario (AI turns out to be useless) we still end up with densely documented codebases and probably extensive test coverage.