Herszfang / Misiak / Erlihson | Supercharged Coding with GenAI | E-Book | www.sack.de
E-Book

E-Book, Englisch, 460 Seiten

Herszfang / Misiak / Erlihson Supercharged Coding with GenAI

From vibe coding to best practices using GitHub Copilot, ChatGPT, and OpenAI
1. Auflage 2025
ISBN: 978-1-83664-528-3
Verlag: De Gruyter
Format: EPUB
Kopierschutz: 0 - No protection

From vibe coding to best practices using GitHub Copilot, ChatGPT, and OpenAI

E-Book, Englisch, 460 Seiten

ISBN: 978-1-83664-528-3
Verlag: De Gruyter
Format: EPUB
Kopierschutz: 0 - No protection



Software development is being transformed by GenAI tools, such as ChatGPT, OpenAI API, and GitHub Copilot, redefining how developers work. This book will help you become a power user of GenAI for Python code generation, enabling you to write better software faster. Written by an ML advisor with a thriving tech social media presence and a top AI leader who brings Harvard-level instruction to the table, this book combines practical industry insights with academic expertise.
With this book, you'll gain a deep understanding of large language models (LLMs) and develop a systematic approach to solving complex tasks with AI. Through real-world examples and practical exercises, you'll master best practices for leveraging GenAI, including prompt engineering techniques like few-shot learning and Chain-of-Thought (CoT).
Going beyond simple code generation, this book teaches you how to automate debugging, refactoring, performance optimization, testing, and monitoring. By applying reusable prompt frameworks and AI-driven workflows, you'll streamline your software development lifecycle (SDLC) and produce high-quality, well-structured code.
By the end of this book, you'll know how to select the right AI tool for each task, boost efficiency, and anticipate your next coding moves-helping you stay ahead in the AI-powered development era.

Herszfang / Misiak / Erlihson Supercharged Coding with GenAI jetzt bestellen!

Weitere Infos & Material


1


From Automation to Full Software Development Life Cycle: The Current Opportunity for GenAI


If you are reading this book, you have probably heard some of the excitement, hype, concerns, and reality of Generative Artificial Intelligence (GenAI) for coding. You may have checked out some tutorials online and perhaps even explored using this technology for your own coding.

Learning to apply GenAI to software coding takes both practice and time. While there are many online demonstrations of the capabilities, there has not been a systematic approach for achieving functional, quality code with any consistency. There also aren’t many resources that guide developers to use GenAI beyond simple code completion or perhaps testing. GenAI can be particularly useful in expediting tasks such as standardizing coding style to improve readability, debugging, optimizing performance, and the many other tasks performed by software engineers.

In this chapter, we will explore the following topics:

  • Changing the software engineering field
  • Introducing the rise of large language models
  • Exploring the software development lifecycle
  • Embracing a GenAI toolkit
  • Is GenAI worth learning for software engineering?
  • What you will get from this book

Changing the software engineering field


Computer programming and software engineering, in general, contribute not only to the tech industry, but to many different sectors of the economy, including commerce, finance, health, transportation, and energy. Software drives the creation of many new products. It increases the productivity of companies through the automation and optimization of processes and enables cost reductions.

As software continues to deliver economic value, new paradigms and tools for software developers have increased the ability to write quality software at a faster pace. Over the last couple of years, GenAI has become one of these tools.

In software engineering, GenAI has suddenly advanced to reach an inflection point and is fundamentally changing the field. This recent technology allows everyone from novices to expert software developers to supercharge their productivity not only in coding but, more generally, the full software development lifecycle (SDLC).

Advanced technologies, including artificial intelligence, seem to be in the news every day lately. Despite this, many software engineers seem somewhat surprised that AI has progressed to the point that it can support their field and specific software development work. The current state of software engineering tools has resulted from the convergence of two separate trends. First, software development tools are not new but have progressed continuously over many decades. Second, GenAI technology has crossed over from the rapid emergence of large language models (LLMs), which trace back to neural networks and the origins of artificial intelligence.

The evolution of tools for software development


The application of GenAI to software engineering is quite a recent development. Although AI has been discussed for many years as a promising set of tools for enhancing code development, the emergence of GenAI has ushered in a new era of capabilities.

Software development has experienced many new tools over the past decades that have transformed the field. It is easy to argue that software development is constantly evolving, with new tools that have streamlined the processes and enhanced productivity. This section provides an overview of some major technology revolutions that have aided software developers.

In the 1970s and 1980s, the was developed as the first integrated development environment (IDE), although it would hardly be recognized as such by today’s standards. Its successors, such as and , provided an easy integration of coding, file management, debugging, compilation, and execution. Today’s IDEs for Python, such as , , and , facilitate global changes to variables, code highlighting, syntax checkers, and access to multiple tools.

Version control systems were a critical step in software engineering, enabling many developers to work on a single project. With a single code base, different versions of code can be tracked and managed. IBM’s in the 1960s was a forerunner of the technology, followed by the in 1982 and the in 1986. It wasn’t until 2005 that the now ubiquitous was developed, which enabled a distributed version control system.

Build tools and continuous integration and continuous deployment (CI/CD) systems speed the delivery process of software. Build tools such as Jenkins and Maven transform source code into executable code. CI/CD tools are often triggered by the build, but continue further to automate the testing, execute linters or other code tools, and often deploy the updated version to users. The full deployment pipeline frees the developers from the many manual steps and enables both a rapid and consistent way of providing users with the latest functionality.

Significant research has been poured into software testing. Apart from many specialized tools for different forms of testing, testing frameworks are now a standard part of virtually all software development suites. IDEs already speed up the process of creating skeleton tests from existing code by using method signatures and standard test naming conventions. The frameworks run all the tests and report failures, significantly speeding up the process.

Code analysis and refactoring tools identify issues with code and can improve the overall quality. is an example of a code analysis tool that performs static code analysis. It identifies potential problems with code, often referred to as code smell, but can also check for a range of potential issues, such as deviations in code style and poor security handling.

Some more advanced tools have been able to not only recognize coding problems but also fix them. For example, actually refactors the code to improve its quality. Such tools save developers time and achieve this result through a combination of pattern matching and AI.

With continual changes in coding sources and packages, software development always seems to require new packages, platforms, or even languages. As a result, software developers require access to the latest manuals or other documentation. Some refer to searching for code examples in or . Innovations in this space included , AI-powered software that provided automated code completion and instant code documentation. Kite proved to reduce keyboard clicks and improved code development speed, gaining a user base of an estimated 500,000 programmers. Unfortunately, the company ceased to exist in 2021 and donated its multi-language code tools to the open source community.

Next, we will introduce the turning point in AI research that has driven significant adoption across a variety of domains, including software engineering.

Introducing the rise of LLMs


Over the past few short years, LLMs have emerged as the dominant AI resource for writing, research, and inference. They are currently transforming the tech industry, and their applications have a far-reaching impact across all fields. This section provides a brief overview of their unprecedented ascent.

Artificial Intelligence was formally started in 1956 at a famous Dartmouth College workshop of computer science experts. They coined the term artificial intelligence (AI) and set ambitious goals ranging from automated reasoning to natural language processing (NLP). Although the participants expected a rapid progression to these goals, the compute and technology limitations thwarted their success. A publication in 1969 denounced the key technology and allegedly started the first well-documented AI winter, an extended period of no funding or research.

In the 1980s, expert systems emerged as a workable solution where rules could be crafted by technologists to reproduce human-like reasoning over limited domains for a specific problem. Despite some early successes with the approach, it proved difficult to craft and manage the ordering for sets of rules. This hindered its adoption and eventually led to the second AI winter.

Machine learning (ML), a sub-field of AI, emerged as the only viable solution. Unlike the hand-crafted rules of expert systems, ML systems could learn to make predictions or decisions directly from data. Research has led to dozens of techniques within the sub-field, but neural networks have become the dominant approach over the past dozen years....



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.