The author predicts that AI will soon write the majority of code, citing personal experience where over 90% of their current project’s code was AI-generated. They describe their project involving an email service built with Go and highlight the importance of maintaining rigorous standards despite using AI. The author outlines effective strategies for using AI tools Claude Code and Codex, emphasizing the need for careful oversight to ensure clarity and appropriateness in the generated code. They note improvements in coding efficiency and organization, as well as challenges with AI’s limitations. While convinced of AI’s growing role in coding, the author stresses the importance of human oversight to prevent errors and maintain quality in software engineering.
name | description | change | 10-year | driving-force | relevancy |
---|---|---|---|---|---|
AI-Generated Code Dominance | A trend towards AI writing a significant proportion of code based on current observations. | Shift from traditional coding practices to AI-generated solutions becoming mainstream. | AI may write the majority of code, changing how software is developed and maintained. | Advancements in AI technology and developer adoption leading to efficiency in coding. | 5 |
Changing Coding Responsibilities | Developers are increasingly relying on AI, yet maintain oversight and responsibility for code quality. | Transition from manual coding to AI-assisted coding with developer oversight. | Developers will focus more on system design while AI handles code generation, creating new roles. | The growing capabilities of AI tools and their integration into development workflows. | 4 |
AI as a Coding Assistant | AI is becoming a partner in coding, assisting with tasks such as debugging and code review. | Shift from solo coding to collaborative coding between humans and AI. | Coding may evolve into a collaborative effort between human developers and AI agents. | Improvements in AI’s ability to understand coding contexts and provide useful feedback. | 4 |
Switch to Raw SQL | Developers are moving away from ORM to using raw SQL due to AI capabilities. | Change in preference from ORM to raw SQL for better control and performance. | More developers may regularly use raw SQL due to AI’s handling of SQL generation. | Desire for improved clarity and control in database interactions. | 3 |
Rapid Prototyping with AI | AI allows for quicker prototypes and iterations, enabling faster experimentation. | From slow prototyping to rapid iteration and testing of ideas using AI tools. | The prototyping phase in software development will be drastically shortened, leading to faster deployment. | Increasing demand for speed in development and the capabilities of AI. | 4 |
Increased Tooling Complexity | Developers face new complexities in ensuring AI-generated code maintains quality. | Shift to navigating complexities of AI tooling while maintaining code quality. | Developers may need specialized skills to manage AI tools and quality standards in coding. | The proliferation of AI tools and their varying effectiveness in coding tasks. | 3 |
name | description |
---|---|
Overreliance on AI-generated code | Dependence on AI to write and manage code may lead to insufficient human oversight and design flaws. |
Brittleness of AI-assisted systems | AI-generated code can produce brittle systems, leading to potential failures and operational issues if not carefully monitored. |
Security vulnerabilities from automation | Automated code generation may introduce security holes if AI is allowed to operate without proper review and accountability. |
Loss of coding skills among developers | Heavy use of AI in coding may erode traditional programming skills and knowledge among developers. |
Opaque and unobservable systems | AI may create systems that are difficult to understand or debug, leading to challenges in maintenance and continued operation. |
Misinformation and poor practices in automation | AI may perpetuate outdated or incorrect coding practices based on conventional wisdom, impacting system robustness. |
Lack of accountability for AI-generated decisions | Delegating decisions to AI without personal responsibility can lead to ethical concerns and operational failures. |
Inaccurate or ineffective code generation | AI-generated code may not always adhere to best practices, requiring constant oversight and adjustments by developers. |
name | description |
---|---|
AI-Coded Software Development | AI is automating a significant portion of coding, including nearly all lines in some startups, changing traditional coding practices. |
Human-AI Collaboration | Developers utilize AI as a collaborative tool, actively engaging in back-and-forth interactions to improve code quality and architecture. |
Documentation Efficiency | Using AI improves efficiency in documentation and inline comments, maintaining code clarity without extensive human input. |
Iterative Feedback Mechanisms | Implementing iterative feedback loops between human programmers and AI to optimize code quality and system design. |
Refactoring as a Process | The low cost of refactoring enabled by AI encourages constant code improvement and better organization. |
Emerging Coding Patterns | Adoption of new coding patterns and practices driven by AI suggestions and tools, changing how software is structured. |
Data Handling and Debugging | AI significantly aids in debugging and managing data complexities, reducing the time spent on technical challenges. |
SQL Management | AI’s capabilities in generating quality SQL queries streamline development processes traditionally considered difficult. |
OpenAPI Emphasis | Developers are prioritizing OpenAPI standards in code generation, improving consistency and collaboration across services. |
Educated AI Use | Developers emphasize discerning use of AI, balancing between utilizing its strengths and maintaining professional oversight and responsibility. |
name | description |
---|---|
AI-Generated Code | AI technologies are increasingly capable of generating code, potentially writing up to 90% of it, thus transforming software development. |
OpenAPI-based Development | Development processes focusing on OpenAPI specifications for improved code generation and API integration with AI support. |
AI-assisted Debugging Tools | Using AI tools like Claude and Codex for debugging and optimizing code, enhancing developer productivity and system reliability. |
Raw SQL Utilization | A shift towards using raw SQL written by AI for migrations and other database interactions, improving SQL handling. |
Test Infrastructure Automation | AI tools are becoming adept at setting up test infrastructures quickly, like using testcontainers for database tests. |
Dynamic Database Management | Incorporating AI to manage and debug complex database queries and improve database operations. |
AI-Driven Refactoring | Utilizing AI to streamline code refactoring processes, making them quicker and more efficient. |
name | description |
---|---|
AI-Driven Code Development | The increasing reliance on AI systems to write and manage code raises questions about quality, accountability, and industry standards. |
AI Dependency in Software Engineering | As developers lean more on AI, dependency may lead to skill atrophy and a lack of understanding of core programming principles. |
Quality Control of AI-Generated Code | The potential for AI to produce low-quality code necessitates rigorous human oversight to prevent systemic failures. |
Evolving Software Architecture Standards | The shift towards AI-generated code may require new standards in software design and architecture. |
OpenAPI and AI Integration | The development of OpenAPI specifications combined with AI could streamline and enhance API development processes. |
Learning New Debugging Methods with AI | Relying on AI for debugging and performance issues introduces new methodologies that developers need to adapt to. |
Ethical Considerations in Code Ownership | With AI-generated code, questions of authorship and intellectual property may arise, particularly regarding accountability. |