Teilen

13. March 2024

Lieber nicht mehr ohne: GitHub Copilot

Was gibt es schöneres, als an einem winterlichen Samstagmorgen mit einer Tasse Kaffee hinter dem Rechner zu sitzen und ein neues Coding Projekt zu starten? Im Frühjahr 2022 fand ich mich in dieser Situation. Gefesselt von meiner Idee, unterbrach mich plötzlich eine Notification - eine neue E-Mail von GitHub mit dem Betreff: "Join the Copilot waitlist". Dort hat meine Reise mit GitHub Copilot begonnen. Seither schaue ich nicht mehr zurück.

GitHub Copilot (nicht zu verwechseln mit Microsoft Copilot) ist ein LLM AI-Assistent, welcher uns Entwicklern beim Schreiben von Codes unterstützt. Copilot sammelt Informationen über den Workspace und macht darauf basierend Vorschläge für die Weiterführung des Codes.

Der Assistent ist als Plug-in für die gängigsten Entwicklungsumgebungen ("IDEs") verfügbar und dadurch ohne grossen Aufwand integrierbar.

Wann ist ein Tool ein gutes Tool?

Ich empfinde ein Tool dann als hilfreich, wenn ich es vermisse, wenn es nicht mehr da ist.

Copilot ist so ein Tool. Ich habe mich so sehr an die Vorschläge gewöhnt, dass ich sie nicht mehr missen möchte.

So habe ich mich auch schon dabei ertappt, wie ich unterwegs den Smartphone-Hotspot eingeschaltet habe, nur damit ich Copilot auf meinem Laptop verwenden konnte.

Ich habe mich inzwischen so sehr an die Copilot-Vorschläge gewöhnt, dass ich sie nicht mehr missen möchte.

Simon Schödler

GitHub Copilot in der Praxis

In meinem Use Case hat sich GitHub Copilot insbesondere bei repetitiven Aufgaben ausgezeichnet. Dazu gehören: 

  • Erstellen von Testdaten und Testcases

  • Erstellen von Mocks

  • Scaffolding von Klassen und Methoden

  • Dokumentation von Code

Weniger Erfolg hatte ich bei komplexeren, fachspezifischen Algorithmen. Nicht, weil die Ergebnisse falsch waren, sondern weil es nicht mehr mein Code war und ich mehr Zeit damit verbrachte, den vorgeschlagenen Code zu verstehen statt ihn gleich selbst zu schreiben.

Allerdings darf gesagt werden, dass GitHub Copilot mir in diesen Fällen einen guten Ansatz geliefert hat, welcher ich dann weiterverfolgen konnte - sozusagen als Inspiration.

In meiner Zeit mit GitHub Copilot habe ich gelernt, wann es sinnvoll ist einen Vorschlag von GitHub Copilot zu verwenden und wann nicht.

Bei der Nexplore verwenden wir Copilot seit September 2023. In dieser Zeit haben wir Copilot in verschiedenen Projekten eingesetzt. Die Erfahrungen waren durchwegs positiv. Hauptfaktor für den Erfolg ist die Zeitersparnis: Klar können viele Entwickler:innen schnell tippen, aber Copilot ist schneller.

So hat sich das Scaffolding von Code mit GitHub Copilot als besonders effizient erwiesen. Persönlich motiviert mich das enorm, weil ich mich so auf die wichtigen Dinge konzentrieren kann.

Im Screenshot wird in Grau der Vorschlag vom Copilot angezeigt. Mit der TAB-Taste kann der Vorschlag als Quellcode direkt in die Datei übernommen werden.

Und die Schattenseiten?

Die größte Hürde im professionellen Umfeld ist, dass der Nutzer-Code an die Copilot-API übermittelt werden muss, um Vorschläge zu generieren. Dies kann problematisch sein, wenn ein Projekt verbietet, Code an Dritte zu übermitteln.

Ein weiteres Problem ist die Verwendung von Code-Vorschlägen, die aus Lizenzgründen nicht verwendet werden dürfen. Da Copilot mit Open-Source-Code trainiert wurde, kann es vorkommen, dass Vorschläge unter anderen Lizenzen stehen. In der Vergangenheit hat dies auch schon zu hitzigen Diskussionen geführt. Die Verantwortung liegt beim Entwickler. Dieser Punkt wurde inzwischen erkannt: mit dem neuen Referencing-Feature zeigt GitHub Copilot die Quellen der Vorschläge an. Dieses Feature gibt uns Entwicklern mehr Sicherheit und ermöglicht uns bessere Entscheidungen zu treffen, ob der Vorschlag verwendet werden darf oder nicht.

Copilot ist kein Tool, welches mir die Arbeit abnimmt, sondern eines, welches mich bei der Arbeit unterstützt. Für mich gilt: lieber nicht mehr ohne GitHub Copilot!

Simon Schödler

Fazit - Wieso schaue ich nicht mehr zurück? Was macht GitHub Copilot gut?

Meines Erachtens ist Copilot so gut, weil es meinen bestehenden Workflow nicht hindert, sondern unterstützt. Dieser Satz könnte gut in einem Marketing-Pitch für Copilot verwendet werden - persönlich empfinde ich Copilot als ein wertvolles Tool, weil es keinen Mehraufwand generiert.

Die wenigen Minuten, die aufgewendet werden müssen, um Copilot einzurichten, sind nach wenigen Stunden wieder amortisiert.

Ich möchte nicht mehr ohne und kann GitHub Copilot sehr empfehlen. Hier beginnt deine Reise: GitHub Copilot · Your AI pair programmer.

Aktuelle Themen unseres Blogs

Bildnachweis: Foto von charlesdeluvio on Unsplash; Screenshot vom Autor