AI Code Assistenten: Die Zukunft des Programmierens mit Copilot und ChatGPT

Vorteile, Risiken und Best Practices

AI Code Assistenten: Die Zukunft des Programmierens mit Copilot und ChatGPT

Marco Schumacher

Senior Software Engineer

schummar

marco@schumacher.dev

Augsburg, München

Pentland Firth Software GmbH

pentlandfirth.com

Wer oder was ist ChatGPT?

Wer oder was ist GitHub Copilot?

MuseNet

Jukebox

CLIP

GPT-2

GPT

DALL·E

Codex

GPT-3

DALL·E 2

GPT-4

2017

2018

2019

2020

2021

2022

2023

GPT-3.5

2024

ChatGPT

MuseNet

Jukebox

CLIP

GPT-2

GPT

DALL·E

Codex

GPT-3

DALL·E 2

GPT-4

2017

2018

2019

2020

2021

2022

2023

GPT-3.5

2024

ChatGPT

Codex

GPT-3

ChatGPT

Copilot

GPT-4

ChatGPT

Copilot X

Schon bald?

AI Goldrausch

Chat GPT

Bing Chat

Google Bard

Jasper Chat

Neuroflash

Chatsonic

YouChat

Viele mehr

Copilot

Codewhisperer

Ghostwriter

Tabnine

Boxy

CODEPAL

Codeium

Viele mehr

How GitHub Copilot is getting better at understanding your code

Was kann es denn nun?

  • Code vervollständigen
  • Code generieren
  • Code erklären
  • Code dokumentieren
  • Code refactoren
  • Code-Konzepte erklären
  • Projekte aufsetzen
  • Projekte implementieren

Projekte implementieren

Projekte implementieren

Projekte implementieren

Projekte aufsetzen

Code Konzepte erklären

Code refactoren

Code dokumentieren

Code dokumentieren

Code erklären

Code generieren

Code vervollständigen

Code vervollständigen

Code vervollständigen

Was kann es denn nun?

  • Code vervollständigen
  • Code generieren
  • Code erklären
  • Code dokumentieren
  • Code refactoren
  • Code-Konzepte erklären
  • Projekte aufsetzen
  • Projekte implementieren

Was kann es denn nun?

  • Code vervollständigen
     
  • Code generieren
  • Code-Konzepte erklären
  • Projekte aufsetzen
     
  • Code erklären
  • Code dokumentieren
  • Code refactoren
     
  • Projekte implementieren

Extrem nützlich

Nützlich, aber Vorsicht!

Unbeständig

Eines Tages...

Kontroverse/Risiken

With great power comes great responsibility

Risiko Nr. 1: Urheberecht

Risiko Nr. 2: Blindes Vertrauen

Do Users Write More Insecure Code with AI Assistants?

We observed that participants who had access to the AI assistant were more likely to introduce security vulnerabilities for the majority of programming tasks, yet also more likely to rate their insecure answers as secure compared to those in our control group

Empfehlung

Codezeilen vervollständigen: Unproblematisch

Der lokale Kontext sowie allgemeine Coding-Standards und Best Practices sind entscheiden.

Kleine Codeblöcke generieren: Unproblematisch, aber mitdenken

Standardprobleme mit Standardlösungen, oft aus ofizieller Dokumenation übernommen.

Große Codeblöcke und ganze Algorithmen: Vorsicht!

Codesuche um Quelle zu finden. Oder den Tools noch etwas Zeit geben, zuverlässig Quellen und Lizenzen darzustellen.

Gefahr, sich blind auf fehlerhafte Implementierungen zu verlassen.

Zahlen zum Abschluss

Research: quantifying GitHub Copilot’s impact on developer productivity and happiness

Research: quantifying GitHub Copilot’s impact on developer productivity and happiness

Vielen Dank

https://slides.com/marcoschumacher/ai-code-assistenten

AI Code Assistenten

By Marco Schumacher

AI Code Assistenten

  • 140