GitHub hat ein wichtiges neues Produkt namens GitHub Spark angekündigt, das es Nutzern ermöglicht, Mikro-Apps nur mit Beschreibungen in natürlicher Sprache zu erstellen und zu teilen, wodurch die Hürden für die Softwareentwicklung drastisch gesenkt werden. Das System kümmert sich automatisch um alle technischen Details und zeigt den Prozess der App-Erstellung in Echtzeit sowie den Aufbau neuer KI-Tools namens "Microapps" oder "Sparks". Um eine Mikroanwendung zu erstellen, erhalten die Benutzer zunächst eine Eingabeaufforderung, woraufhin Spark innerhalb von Sekunden eine Live-Vorschau anzeigt. Die Benutzer können dann die Feinabstimmung vornehmen, indem sie mit dem Bot hin und her interagieren.
GitHub Spark
Können wir es jedem ermöglichen, mit Hilfe von KI und einer vollständig verwalteten Laufzeitumgebung Software selbst zu erstellen oder anzupassen?
Erstellen und Teilen von personalisierten Mikroanwendungen ("Sparks")
Als Entwickler sind wir leidenschaftlich daran interessiert, unsere Umgebungen anzupassen und Tools zu entwickeln, die zu unseren individuellen Vorlieben und Arbeitsabläufen passen. Das verbessert nicht nur die Produktivität und den Arbeitskomfort, sondern macht unsere tägliche Arbeit auch persönlicher. Und wenn etwas personalisiert ist, macht es in der Regel auch mehr Spaß.
Doch wie oft haben wir trotz der Zeit, die wir in die Verwaltung von Dotfiles, das Schreiben von Automatisierungsskripten oder die Konfiguration von Editoreinstellungen investieren, die Idee aufgegeben, unsere eigenen Anwendungen zu erstellen? Nicht, weil wir sie nicht bauen können, sondern weil sie uns zu flüchtig, zu spezifisch oder zu zeitaufwändig erscheinen, als dass wir ihnen Priorität einräumen könnten. 😩
Dies ist eine der Ironien der heutigen Software: Die Computer auf unseren Schreibtischen und in unseren Taschen sind zwar sehr leistungsfähig, aber nicht sehr "personalisiert". Stattdessen verlassen wir uns auf generische Tools, die von anderen entwickelt wurden, weil die Komplexität der Erstellung eigener Anwendungen zu groß ist.
Das wirft zwei interessante Fragen auf: Wie können wir die Personalisierung von Software so einfach machen wie die Personalisierung einer Entwicklungsumgebung? Und dann, wie machen wir diese Personalisierung für unsere Mitmenschen einfach? Nicht nur, weil es notwendig ist - sondern weil es Spaß machen könnte 🙌.
Wir stellen vor: GitHub Spark
GitHub Spark ist ein KI-gesteuertes Tool zum Erstellen und Teilen von Mikroanwendungen ("Sparks"), die auf Ihre Bedürfnisse und Vorlieben zugeschnitten werden können und direkt auf Desktop- und Mobilgeräten genutzt werden können.Es muss kein Code geschrieben oder implementiert werden.
Dies geschieht durch drei eng miteinander verbundene Komponenten:
- Ein auf natürlicher Sprache basierender Editor, der es Ihnen leicht macht, Ihre Ideen zu beschreiben und sie im Laufe der Zeit zu verfeinern.
- Eine gehostete Laufzeitumgebung zum Hosten Ihrer Sparks und für den Zugriff auf Datenspeicher, Themeneinstellungen und das Large Language Model (LLM)
- Ein PWA-fähiges Bedienfeld, mit dem Sie Ihre Sparks von überall und jederzeit verwalten und starten können
Außerdem können Sie mit GitHub Spark Ihre Sparks mit anderen teilen und festlegen, ob diese nur Lese- oder auch Schreibzugriff haben. Die Benutzer können den Spark mit einem Lesezeichen versehen, ihn direkt verwenden oder ihn nach ihren Wünschen umgestalten. Immerhin ...... personalisieren Sie es!
Jetzt wollen wir mal sehen, wie es funktioniert 🎬.
Was ist eine "Mikro-Anwendung"?
GitHub Spark folgt der Unix-Philosophie, die besagt, dass sich Software auf eine einzige Sache konzentrieren und diese extrem gut erledigen kann - vor allem für Sie und nur so lange, wie sie nützlich ist. Daher bezieht sich "Mikro" nicht auf die Größe des Wertes der Anwendung, sondern auf ihre funktionale Komplexität, so wie sie konzipiert wurde.
Hier sind zum Beispiel einige der Sparks, die das GitHub Spark-Team bei der Entwicklung von GitHub Spark erstellt (und verwendet!) hat. Diese Apps reichen von Lebensmanagement-Tools über Lernhilfen und lustige Animationen bis hin zu Nachrichten-Clients. Aber eines haben sie alle gemeinsam: Sie sehen genau so aus und fühlen sich genau so an, wie es ihre Schöpfer beabsichtigt haben. Nicht mehr, nicht weniger, einfach richtig ❤️
Ein benutzerdefinierter HackerNews-Client, der die 20 wichtigsten Beiträge anzeigt und Kommentar-Threads mithilfe eines großen Sprachmodells zusammenfasst (sehr nützlich!) . Hier ist der tägliche HN-Treiber des Teams
Mit diesem Hintergrund lassen Sie uns in das "Was?" und "Warum?" der Hauptkomponenten von GitHub Spark eintauchen. und "Warum?" 👍
Auf natürlicher Sprache basierende Toolchain
Wenn Sie eine App erstellen, müssen Sie genau wissen, was Sie wollen. Nicht nur eine allgemeine Idee, sondern den genauen Funktionsumfang, das detaillierte Interaktionsverhalten und das allgemeine Erscheinungsbild. Leider kann das ziemlich kompliziert werden und manche Leute sogar abschrecken. Genau dieses Problem hoffen wir zu lösen!
GitHub Spark lindert dieses Problem, indem es Ihnen erlaubt, mit einer einfachen Idee zu beginnen (z.B. "eine App, um das Taschengeld Ihres Kindes im Auge zu behalten") und dann die Komplexität durch "assisted exploration" schrittweise zu erhöhen. Insbesondere der Editor für natürliche Sprache ist so konzipiert, dass das Vorankommen einfach ist und Spaß macht, mit vier zentralen iterativen Funktionen:
- Interaktive Vorschau
- überarbeitete Variante
- Automatische Verlaufsaufzeichnung
- Modellauswahl
Interaktive Vorschau
Wenn Sie einen natürlichsprachlichen Ausdruck in GitHub Spark eingeben, wird der Code nicht nur generiert, sondern auch sofort ausgeführt und in einer interaktiven Vorschau angezeigt. Diese "app-zentrierte Feedback-Schleife" ermöglicht es Ihnen, so viele oder so wenige Details anzugeben, wie Sie möchten, und dann zu iterieren, während die Visualisierung nach und nach Ihre Absicht versteht ("Hmm, ich glaube, ich brauche hier eine Umschalttaste!"). .
überarbeitete Variante
Wenn Sie Spark erstellen oder iterieren, können Sie wählen, ob Sie eine Reihe von Varianten erzeugen möchten. Dadurch werden 3-6 verschiedene Versionen Ihrer Anfrage generiert, jede mit feinen, aber bedeutsamen Unterschieden. Da Sie vielleicht wissen, dass Sie eine bestimmte Funktion haben wollen, aber nicht sicher sind, wie sie aussehen oder sich verhalten soll, kann es hilfreich sein, Inspirationen und Vorschläge zur Erweiterung Ihrer Ideen zu erhalten, wie ein KI-Denkpartner!
Automatische Verlaufsaufzeichnung
Während Sie sich durch Funken bewegen, wird jede Revision automatisch gespeichert und kann mit einem einzigen Klick wiederhergestellt werden. So können Sie Ideen (und Varianten) ausprobieren, ohne sich Sorgen machen zu müssen, dass der Fortschritt verloren geht. Und was noch wichtiger ist: Sie müssen sich nicht selbst um die Versionskontrolle kümmern. Dieser Ansatz unterstützt die "neugiergetriebene Entwicklung", bei der Sie eine Idee haben und sie ausprobieren können, ohne sich Sorgen machen zu müssen, dass sich dies negativ auf die Anwendung auswirkt (z. B. dass Sie sie vermasseln).
Der Verlauf ist auch aus der Perspektive der Zusammenarbeit interessant, da er eine Art "semantische Quelle" darstellt, wenn jemand einen Spark mit Ihnen teilt. Bei der Erstellung von GitHub Spark haben wir festgestellt, dass wir ganz natürlich neue Ideen miteinander geteilt haben und uns dann sofort die Historie angesehen haben, um zu sehen, wie sie umgesetzt wurden. Es ist fast so, als würde man einen Einblick in die Serialisierung der Ideen anderer Leute bekommen.
Modellauswahl
Wenn Sie einen Spark erstellen oder ändern, können Sie aus vier KI-Modellen wählen: Claude Sonnet 3.5, GPT-4o, o1-preview und o1-mini. Das hat den Vorteil, dass Sie, wenn Sie nicht die erwarteten Ergebnisse erhalten, den Vorgang rückgängig machen und mit einem völlig anderen Modell erneut versuchen können. Darüber hinaus wird in der Historie das für jede Revision verwendete Modell festgehalten, so dass Sie die Entwicklung von Spark im Laufe der Zeit beobachten können.
Gehostete Betriebsumgebung
Wir nennen GitHub Spark ein "anwendungszentriertes" Tool (im Gegensatz zu einem "codezentrierten" Tool). Nicht, weil es Ihnen nicht erlaubt, Code zu sehen oder zu bearbeiten (das tut es!), sondern weil es entwickelt wurde, um Tools zu erstellen, die Menschen sehen, erleben und nutzen können. sondern weil es darauf abzielt, Anwendungen zu erstellen, die die Benutzer sehen, erleben und verwenden können, anstatt nur Code zu generieren und Sie dann selbst erstellen, bereitstellen, Datenbanken konfigurieren usw. zu lassen.
GitHub Spark ermöglicht dies, indem es vier Kernfunktionen der Laufzeitumgebung bereitstellt:
- Hosting ohne Bereitstellung
- Designsystem mit anpassbaren Themen
- Dauerhafte Datenspeicherung
- Hinweise zum integrierten Modell
Hosting ohne Bereitstellung
Wenn Sie einen Spark erstellen oder ändern, werden die Änderungen automatisch bereitgestellt und können auf einem Desktop, Tablet oder Mobilgerät (über eine PWA) ausgeführt und installiert werden. In diesem Sinne ist GitHub Spark ein bisschen wie eine Mini-App-Cloud, die den Prozess der Erstellung, Bereitstellung und Nutzung von Software zu einer einzigen Aktion vereinfacht: Sie drücken Ihre Ideen durch natürliche Sprache aus 🚀.
Designsystem mit anpassbaren Themen
Um sicherzustellen, dass Ihre Apps schön aussehen, bietet GitHub Spark eine Reihe integrierter UI-Komponenten und ein Designsystem mit anpassbaren Themen. Dadurch sehen Formularsteuerelemente, Layouts, Symbole und vieles mehr standardmäßig gut aus, wenn Sie eine neue App erstellen. Wenn Sie das Design weiter anpassen möchten, können Sie den Themeneditor verwenden, um die standardmäßige Akzentfarbe, den Radius der Umrandung, den Abstand der App und das Farbthema (hell/dunkel) zu ändern.
Dauerhafte Datenspeicherung
Egal, ob Sie eine To-Do-Liste, einen Gartenplaner oder ein Tic-Tac-Toe-Spiel erstellen, die meisten unterhaltsamen Anwendungen müssen Daten speichern. Die Laufzeit von GitHub Spark stellt Ihnen einen gehosteten Key-Value-Speicher zur Verfügung und bestimmt automatisch, wann er verwendet werden soll. Darüber hinaus bietet GitHub Spark einen Dateneditor, mit dem Sie die von Spark verwendeten Daten einfach anzeigen und bearbeiten können. Damit haben Sie die vollständige Kontrolle über den Zustand Ihrer Anwendung, ohne sich um die Details kümmern zu müssen.
Hinweise zum integrierten Modell
GitHub Spark Runtime mit GitHub ModelleIntegration, mit der Sie Spark generative KI-Funktionen hinzufügen können, ohne LLM-Kenntnisse zu benötigen (z. B. Generierung von Zusammenfassungen oder Gute-Nacht-Geschichten für Kinder). Darüber hinaus bietet es einen Hinweis-Editor, mit dem Sie die von GitHub Spark generierten Hinweise anzeigen und bei Bedarf anpassen können - ohne dass Sie den Code bearbeiten müssen.
Uff! Das ist eine Menge Inhalt. Aber um das Ziel von GitHub Spark zu erreichen (die Kosten der App-Erstellung auf Null zu reduzieren), halten wir eine solche Toolchain und Laufzeitumgebung für absolut notwendig. Wir sind zuversichtlich, dass die Benutzer die Erfahrung der Nutzung lieben werden 🥰.
Was kommt als Nächstes?
Als Technologievorschau befindet sich GitHub Spark noch in einem sehr frühen Stadium und es gibt noch viel zu tun. Aber wir freuen uns darauf, in den nächsten Monaten Nutzer von der Warteliste einzuladen und wöchentlich eng mit ihnen zu interagieren! Wöchentliches Update. Wenn Sie daran interessiert sind, uns auf dieser Reise zu begleiten, sehen Sie sich die FAQund treten Sie dem GitHub Next Discord Server 👋
Wenn Sie neugierig auf unsere zukünftigen Schwerpunkte sind, freuen Sie sich darauf, die folgenden Richtungen zu erkunden:
- Erweiterte Methoden der Zusammenarbeit (z.B. öffentliche Galerien, die es Benutzern ermöglichen, semantische Zusammenführungen in Zweigen von Spark durchzuführen, Multi-User-Modus)
- Erweiterte Editorfunktionalität (z.B. Bereitstellung eines "Röntgenmodus", der es erlaubt, das genaue Verhalten der Anwendung zusammenzufassen und anzupassen)
- Erweiterte Laufzeitumgebung (z.B. mehr eingebaute Komponenten, bessere Integration von Diensten Dritter, Unterstützung für Dateispeicherung und Vektorsuche)
- Es gibt auch eine Menge cooler Funktionen, an die wir noch gar nicht gedacht haben!