"AI-Assisted Software Engineering: Practice and Case Analysis" (Draft)
On June 1, 2024, I plan to use my three-month seniority leave at Thoughtworks to do some AI-assisted research and advanced design. At the same time, combined with the previous practical experience in AI-assisted software engineering and the open source project and implementation experience in Thoughtworks, I wrote an open source e-book about "AI-Assisted Software Engineering".
- As a new dad, I need to complete this book in my spare time while raising my baby, so some of the research will be rushed and the writing progress may be slower. However, I will try to update at least one article per week.
- As an engineer, I prefer solutions that can actually be implemented rather than just talking about them on paper. Therefore, I spent a lot of time collecting and analyzing implementation cases and practical experience in actual projects to avoid wasting readers’ time.
What this open source e-book (https://aise.phodal.com/) contains:
- The latest AI-assisted software engineering practices at home and abroad. We read a large number of domestic and foreign generative AI technology blogs and collected AI-assisted software engineering practices from companies such as GitHub, GitLab, Google, JetBrains, Atlassian, New Relic/Dynatrace, etc.
- Implementation details from AI models to IDE plug-ins. As the author of the IDE plug-in AutoDev open source project and the Shire coding agent language, I will share the implementation details from AI models to IDE plug-ins based on actual project experience.
- Practical cases and experiences from coding RAG to coding agents. We have collected a large number of practical cases and experiences of coding agents, as well as practical cases of how to use the RAG model in the coding field.
What's not in this book?
- Related Paper. As an engineer, I prefer solutions that can actually be implemented rather than just talking about them on paper. Although there are already a large number of papers for AI-assisted software engineering, judging from the practical experience in the industry, the gap between paper and actual implementation is still very large.
If you are interested in this, welcome to join this open source project.
Reading information:
In most organizations, developers spend less than 40% of their total working time on coding. Therefore, improving coding efficiency has a very limited impact on the performance of the entire software development life cycle (SDLC). We should try to apply AI to the entire software life cycle. cycle and the entire team, not just the output of individual members and individual links.
For more information about me, please visit my personal website: Phodal. Or scan the QR code below:
Introduction
This book is an open source e-book on how to use AI to assist software engineering. We will cover:
- How to use generative AI to assist in different stages of software engineering.
- Prompt techniques for AI IDE programming tools.
- Design AI-assisted processes to improve software engineers' work efficiency.
- Customize AI IDE to integrate different programming tasks.
- Design and build AI coding agents.
- How to use Shire and RAG for AI-assisted research and development.
Before you start reading, you need to understand some basic concepts:
- What is generative AI?
- What is an AI agent?
- What are IDE plug-ins? (I think you don’t need it)
This book is not suitable for the following people:
- People who want to learn the basics of AI.
- Get started quickly with AI-assisted software engineering.
- People who want to learn about AI IDE plug-in development.
If you are one of the above people, it is recommended that you first understand some basic knowledge before reading this book.