AI for software development: A reality check | Birgitta Boeckeler | LeadDev Berlin 2023

Ai

Explore the reality of AI in software development, where powerful tools and demos come with limitations and trade-offs, and developers must adapt to changing technologies while considering AI's impact on workflow and code ownership.

Key takeaways
  • In software development, AI is a reality check, with some useful demos and tools, but also limitations and trade-offs.
  • AI-augmented software engineering is a trend, with examples from GitHub, Snowflake, and automated coding assistants.
  • Large language models are powerful, but also have limitations, such as understanding only tokens, not context.
  • AI can assist with coding, documentation, and even discover information, but it’s not a replacement for human thought and creativity.
  • Developers should be aware of the potential impact of AI on their workflow, including speed, quality, and error tolerance.
  • AI-assisted coding can generate tests, complete tasks 55% faster, and assist with low-code applications, but also requires customization and extensibility.
  • AI-augmented software engineering is not a magic solution, and developers must still own the code and consider the limitations.
  • Reality check: AI is not good software, and we must consider the trade-offs and limitations.
  • AI-assisted coding can help with onboarding, debugging, and testing, but developers must still have a good understanding of their codebase.
  • Low-code platforms can raise the level of abstraction, but also require flexibility and customization.
  • AI-augmented software engineering is a continuous process, and developers must adapt to changing tools and technologies.
  • Developers should not be tempted by AI hype and must consider the limitations and trade-offs.
  • AI is not a replacement for human judgment and must be used as a tool, not a substitute.