The practice of programming is undergoing its most significant transformation since the advent of high-level languages. Large language models trained on code now write, complete, explain, and repair software inside the world's most popular development environments, and a new paradigm—popularly called vibe coding—lets people express intent in natural language while the model handles implementation. This paper presents a systematic survey of AI-assisted software development. We trace the evolution from statistical autocomplete to generative models, formalize the emerging interaction paradigms, and propose a two-dimensional taxonomy that separates tools by interaction paradigm (inline completion, conversational assistance, agentic execution) and by autonomy level (assistive, supervised, autonomous). We review representative models, benchmarks, and human-centered studies; examine how the community evaluates functional correctness, productivity, and security; and organize the risks—vulnerable generated code, testing debt, over-reliance, and licensing ambiguity—into a coherent framework. Finally, we identify open challenges, including reliable evaluation of agentic workflows, secure-by-default generation, and the changing skill profile of the software engineer, and outline directions for future research.
No takes yet. Share an insight, caveat, or question.
Aref Mahmoudpour (2026) studied this question.
Synapse has enriched 5 closely related papers on similar clinical questions. Consider them for comparative context: