Writing computer programs in Python just got a lot easier! Use AI-assisted coding tools like GitHub Copilot and ChatGPT to turn your ideas into applications faster than ever.
AI has changed the way we write computer programs. With tools like Copilot and ChatGPT, you can describe what you want in plain English, and watch your AI assistant generate the code right before your eyes. It’s perfect for beginners, or anyone who’s struggled with the steep learning curve of traditional programming.
In Learn AI-Assisted Python Programming: With GitHub Copilot and ChatGPT you’ll learn how to:
- Write fun and useful Python applications—no programming experience required!
- Use the Copilot AI coding assistant to create Python programs
- Write prompts that tell Copilot exactly what to do
- Read Python code and understand what it does
- Test your programs to make sure they work the way you want them to
- Fix code with prompt engineering or human tweaks
- Apply Python creatively to help out on the job
Learn AI-Assisted Python Programming: With GitHub Copilot and ChatGPT is a hands-on beginner’s guide that is written by two esteemed computer science university professors. It teaches you everything you need to start programming Python in an AI-first world. You’ll hit the ground running, writing prompts that tell your AI-assistant exactly what you want your programs to do. Along the way, you’ll pick up the essentials of Python programming and practice the higher-level thinking you’ll need to create working apps for data analysis, automating tedious tasks, and even video games.
Foreword by Beth Simon, Ph.D.
Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.
About the technology
The way people write computer programs has changed forever. Using GitHub Copilot, you describe in plain English what you want your program to do, and the AI generates it instantly.
About the book
This book shows you how to create and improve Python programs using AI—even if you’ve never written a line of computer code before. Spend less time on the slow, low-level programming details and instead learn how an AI assistant can bring your ideas to life immediately. As you go, you’ll even learn enough of the Python language to understand and improve what your AI assistant creates.
What’s inside
- Prompts for working code
- Tweak code manually and with AI help
- AI-test your programs
- Let AI handle tedious details
About the reader
If you can move files around on your computer and install new programs, you can learn to write useful software!
About the author
Dr. Leo Porter is a Teaching Professor at UC San Diego. Dr. Daniel Zingaro is an Associate Teaching Professor at the University of Toronto. The technical editor on this book was Peter Morgan.
Table of Contents
1 Introducing AI-assisted programming with Copilot
2 Getting started with Copilot
3 Designing functions
4 Reading Python code – Part 1
5 Reading Python Code – Part 2
6 Testing and prompt engineering
7 Problem decomposition
8 Debugging and better understanding your code
9 Automating tedious tasks
10 Making some games
11 Future directions
Code snippets are helpful and the plot starts at 'print 1 to 10' instead of the usual "Hello, Welcome".
They compare Assembly code to Python. Had to laugh. Author had the same issue with Assembly that most computer science majors suffer. It's boring and makes not sense. Especially after you try AI-assisted Python programming.
Thank you so much for publishing this.
It really in an introduction, from an broader perspective, how we all can increase our knowledge via having an AI teaching component. What a fabulous and inclusive resource for our otherwise divided world.
I had to adapt to using Netbeans and Eclipse and then continues to even newer IDEs. This book took me, who was very pessimistic and realized it was time for me to start to use a coding AI, and though they use Copilot there are many others and people should start to experiment and determine which will help them, but raising fists and yelling at the moon won't stop the stomping of technology, just as I had to stop using wordpad for development, we need to continue to adapt.
The advantage of this book is they walk through how to not only do some prompt engineering but also to think about how do you think about structuring your program, so decompose it, and as I was reading this I realized that much of what we used to expect architects to do now developers should be doing, so we should be expecting more from more junior developers, but the tool will help so they should be able to get better code written faster, with unit tests more easily developed.
Though this book focuses on python, that is just the language they chose to use, but in all honesty they walk through python well so even if you will never use this language you can understand and then focus on how to apply their concepts to the language you are using.
If you don't want to fall behind your co-workers you should get this book and learn where the feature is going.
This is the first book that teaches how to treat AI like a primary tool while programming, rather than an add-on. It breaks down a user's flow into useful steps: designing functions that are easy for you (the human) and the AI to work with, making sense of the AI's code and explanation, testing the AI's code, prompt engineering, decomposing problems to make the AI more effective, and debugging with the AI.
These skills can accelerate learning to program and also radically change how we develop software! The book is written in a way that anyone can follow and introduces useful examples along the way.
I'll be recommending the book to my students.
What sets this book apart is its comprehensive approach to integrating tools like GitHub's Copilot and ChatGPT into Python programming. The authors do an exceptional job of demystifying these advanced technologies, making them accessible and practical for everyday coding tasks. Each chapter is meticulously crafted, offering clear explanations, real-world examples, and practical exercises that reinforce the concepts being taught.
The book's emphasis on efficiency and productivity is particularly commendable. It underscores the importance of leveraging AI tools to not only speed up the coding process but also to enhance the quality of the code. This approach is invaluable in today's fast-paced tech environment, where the ability to quickly adapt and incorporate new tools can set a programmer apart from their peers!
Additionally, for those computer scientists and software developers out there, this book is more than just a learning tool; it's a roadmap to becoming more proficient and competitive in the field. By embracing AI-assisted programming, readers are equipped to code more efficiently, reducing the time spent on routine tasks and focusing more on complex problem-solving and innovation.
Ultimately, this book is a must-read for anyone in the field of computing! Its forward-thinking approach and practical insights provide a clear path for harnessing the full potential of AI in programming. It's a book that doesn't just teach you how to code; it teaches you how to code smarter! And remember, efficiency is key in computing! :)
In an era where AI is reshaping our daily lives, this book offers a fresh perspective on programming. Rather than being overwhelmed by syntax rules, "Learn AI-Assisted Python Programming" encourages readers to focus on creativity and problem-solving while AI handles the intricacies of syntax. This shift in mindset is nothing short of revolutionary, and the authors guide readers through this transformation with precision and clarity.
One of the book's standout features is its emphasis on practicality. It introduces readers to AI tools like Copilot and ChatGPT, demonstrating how they can streamline the coding process. The authors skillfully break down complex programming tasks into manageable projects, equipping readers with the ability to engineer effective prompts for AI-generated code. Moreover, the book provides invaluable guidance on testing, troubleshooting, and refining AI-generated code, ensuring that readers are not just reliant on AI but also proficient programmers in their own right.
The book's structure is well thought out, with key lessons in each chapter providing valuable insights.
Chapter 1 sets the stage by exploring the impact of AI on programming, and subsequent chapters delve into essential Python features and problem-solving strategies.
Dr. Leo Porter and Dr. Daniel Zingaro's expertise in computer science education shines through in this book. Their accolades and teaching experience add credibility to the content, assuring readers that they are learning from the best. By combining AI coding assistants with high-level thinking, the authors make programming more accessible to learners of all levels.
In conclusion, "Learn AI-Assisted Python Programming" is a transformative resource that is poised to reshape the way we approach programming education. With its user-friendly approach, expert guidance, and the integration of AI, it is a great read for both students and professionals looking to thrive in the AI-driven world of programming. This book offers a pragmatic approach to coding that is sure to impress and inspire readers, making it an invaluable addition to any programmer's library.
Thank you!