Einige von euch wissen ja, dass ich hauptberuflich programmiere. Und seit zwei Mochen mache ich das mit Hilfe einer KI. GitHub/Microsoft hat das Produkt "GitHub CoPilot" veröffentlich. Das ganze basiert auf OpenAI GPT3 Model.
Ich nutze es jetzt seit knapp 2 Wochen und am aktuellen Projekt wo ich arbeite habe ich so gut wie keine eigene Zeile Code geschrieben. Egal ob HTML, PHP, JavaScript, TypeScript, Python, CSS, SASS, etc.
Wenn ich Anfange Code zu schreiben versucht die KI direkt herauszufinden was ich machen will und gibt mir eine Option an meinen Code zu vervollständigen. Mit Druck auf die "Tabulator" Traste schreibt es dann diesen Code z.b. eine Funktion automatisch fertig.
Es kann auch selbstständig SQL Queries schreiben:
Als Beispiel:
Wenn ich an einem WordPress Projekt arbeite und in der globalen functions.php eine neue Funktion schreibe tippe ich:
Ab diesem Zeitpunkt erkennt der CoPilot, dass ich eine Funktion haben wie der mir Benutzer anhand der E-Mail Adresse ausgibt. Er merkt auch automatisch, dass ich mit WordPress arbeite und schlägt mir eine WordPress kompatible Funktion vor die ich mit der "Tab-Taste" nur noch bestätigen muss:
Das graue ist der Vorschlag vom CoPilot
Fairerweise ist das natürlich ein einfacher Vorschlag machen wir was komplizierteres. Als Beispiel ich möchte eine Funktion, die mir ein WordPress Menü, ink. der Untermenüs als Array zurückgibt:
Ich schreibe wieder folgendes:
Danach wird mir folgendes vorgeschlagen (wieder in grau):
In beiden Fällen ist das 100% funktionierender PHP Code der 1:1 WordPress kompatibel ist und ich auch nicht anders geschrieben hätte (evtl hätte ich die Variabeln anders genannt, aber funktional ist das genial). Und spart extrem Zeit.
Hier ein weiteres Beispiel in JavaScript:
Ich schreibe folgendes:
Als Ergebnis bekomme ich folgendes:
Und nun wird es mehrfach beeindruckend. Der CoPilot gibt mir nicht nur irgendeinen Code Schnipsel aus, sondern analysiert auch das Projekt an dem ich arbeite. Und findet bisher als einziges Formular Feld vom Typ E-Mail irgendwo in einer HTML Datei das Feld "#molino_contact_mail" und arbeitet das direkt mit ein.
Gleichzeitig merkt es auch, dass ich jQuery im Projekt aktiv habe und bietet mir entsprechend keine pure JavaScript sondern eine jQuery Lösung. Wenn ich jQuery deaktiviere, bietet er mit stattdessen eine pure JavaScript Lösung an.
Ganz ehrlich die Art und weise, wie ich in den letzten 2 Wochen programmiert haben, haben sich extrem verändert. Und ich habe in viel kürzerer Zeit massiv mehr geschafft. Die Vorschläge vom CoPilot sind nicht immer 100% akkurat aber oft eine sehr gute Basis und man muss nur noch wenige Dinge verändern.
Der GitHub CoPilot gibt es für folgende IDEs jeweils als Plugin:
- Visual Studio
- Visual Studio Code
- Neovim
- und für alle IDEs von JetBrain (WebStorm, PyCharm, etc)
Man kann das ganze kostenlos in vollem Funktionsumfang für 30 Tage kostenlos testen.
Danach bezahlt man als Einzelperson entweder 10 Dollar/Monat oder 100 im Jahr.
Es gibt aber auch Pläne für Unternehmen wo man mehrere Lizenzen auf einmal erwerben kann.
Ich kann allen die regelmässig programieren nur empfehlen das mal auszuprobieren.