Noch nie war es so einfach, mit moderner Technologie zu sprechen, wie jetzt, wo Sie buchstäblich mit Alexa oder Google Home sprechen können und ein Cloud-basiertes Programm Ihre Sprache erkennt. Doch lange Zeit musste man, um mit seinem Computer zu sprechen, dessen Sprache lernen – eine Programmiersprache. Die meisten Programmiersprachen sind textbasiert und ermöglichen es Programmierern, Befehle einzugeben, Informationen abzurufen und diese Informationen mit ihren Computern auszutauschen.

Wenn wir „visuelle Programmierung“ beschreiben, beziehen wir uns im Großen und Ganzen auf die Art und Weise, wie wir mit unseren modernen Computern mit Grafiken und Bildern statt mit reinem Text „sprechen“. Visuelle Programmierung gibt es schon seit Jahrzehnten und stellt eine weitere Abstraktionsebene der Maschinensprache dar, die unsere Computer verwenden, wenn sie miteinander kommunizieren.

Das Hauptziel der frühen visuellen Programmierung war es, die Interaktion mit dem Computer zu erleichtern. Schließlich boten die ersten grafischen Benutzeroberflächen (GUIs) eine wesentlich einfachere Erfahrung als das Eintippen von Zeilen in ein Terminal-Fenster, so dass die meisten Menschen heute einen „Mac“ oder „PC“ kaufen und ihren Computer gar nicht mehr als etwas anderes betrachten als ihr visuelles Betriebssystem.

Früh war die visuelle Programmierung für die Erstellung von Benutzeroberflächen ein einfaches No-Brainer. Heutzutage gibt es viele ausgefeilte visuelle Front-End-Webentwicklungs-Tools wie Wix oder Squarespace für die Erstellung von Websites und Design-Tools wie Figma und Sketch für die Erstellung von Prototypen.

Aber für die Erstellung von Berechnungslogik, wie man sie in einer komplexen Webanwendung finden könnte, ist der Wert der visuellen Programmierung umstritten. Skeptiker werden argumentieren, dass es für visuelle Programmierlogik nahezu unmöglich ist, mit der Leistung einer skriptbasierten Sprache zu konkurrieren. Visuelle Programmiersprachen haben nicht annähernd die Popularität von Skriptsprachen für die Erstellung von Backend-Logik erreicht… bis vielleicht heute.

Enter: Bubble. Bubble ist eine „No-Code“-Web-App-Entwicklungsplattform, die 2012 ins Leben gerufen wurde. Auf den ersten Blick hat Bubble viele Ähnlichkeiten mit den oben genannten visuellen UI-Entwicklungstools für Websites und Prototypen. Aber Bubble ist im Kern eine echte visuelle Programmiersprache – mit all den Möglichkeiten, die Logik für anspruchsvolle Webtools zu erstellen, wie textbasierte Programmierframeworks wie React oder Flask.

Um zu verstehen, wie visuelle Webentwicklungsplattformen wie Bubble entstanden sind, werfen wir einen Blick auf die Geschichte der visuellen Programmierung – und darauf, wie die nächste Phase in der Evolution von Code tatsächlich „kein Code“ sein könnte.“

Frühes „visuelles“ Programmieren: Grafische Sprachen und Basic der 1970er Jahre

Frühes visuelles Programmieren beinhaltete viele Flussdiagramme wie in Pygmalion (1975) und GRaIL (1968).

In den 1960er und 70er Jahren experimentierte man bereits mit grafischen Darstellungen von Logik in Form von Flussdiagramm-basierten Systemen wie Pygmalion und GRaIL (Graphical Input Language). Diese frühen visuellen Sprachen versuchten, die Aktionen von Maschinen auf eine Reihe zusammenhängender Bilder abzubilden. Aber erst in den frühen 1990er Jahren, nachdem Computer über annehmbare grafische Schnittstellen verfügten, begann die visuelle Programmierung durchzustarten.

Wenn Sie an den Begriff „visuelle Programmierung“ denken, fällt Ihnen vielleicht als erstes Visual Basic ein, ein Produkt von Microsoft, das 1991 auf den Markt kam. Mit Visual Basic kann man neue Anwendungen erstellen, indem man Codeblöcke verschiebt und Flussdiagramme erstellt, und es enthält Werkzeuge wie einen Debugger und einen Quellcode-Editor. Visual Basic ist jedoch eher als integrierte Entwicklungsumgebung (IDE) bekannt, in der eine textbasierte Programmiersprache (Basic) mit anderen visuellen Tools kombiniert wird, um die Arbeit mit dem Code zu erleichtern. Visual C und Visual Java sind ähnliche visuelle Entwicklungsumgebungen für ihre jeweiligen Programmiersprachen.

IDEs sind ein wichtiges Sprungbrett, um zu verstehen, wie Programmierung rein visuell gestaltet werden kann. Einer der Gründer von Bubble, Josh Haas, ließ sich von Visual Basic inspirieren, als er 2012 mit der Entwicklung von Bubble begann. Er beschreibt die frühe Entwicklung von Bubble als das Ergebnis, „wenn man mit einer IDE anfängt, bevor man die Programmiersprache darunter aufbaut.“

Während IDEs wie Visual Basic in ihrem Kern immer noch auf textbasierten Sprachen basieren, sind die Werkzeuge, die sie verwendet haben, um die Codierung weniger schmerzhaft zu machen, für die moderne visuelle Programmiererfahrung enorm wichtig.

Visuelle Programmierung als Bildungswerkzeug

Visuelle Programmiersprachen haben sich als Bildungswerkzeuge bewährt, mit denen neue Programmierer lernen können, logisch zu denken. Scratch, das 2002 vom MIT Media Laboratory entwickelt wurde, ist wahrscheinlich das beste Beispiel für eine visuelle Programmiersprache mit einer
„block“-basierten Syntax. Scratch wurde mit über 57 Millionen Nutzern und Anwendungen ziemlich populär. Einige moderne No-Code-App-Entwickler wie Thunkable haben sich von Scratch und anderen blockbasierten Designs inspirieren lassen.

Scratch richtet sich in erster Linie an Kinder, die mit seinem niedlichen Tiger und den bunten Blöcken, die sich zu logischen Sätzen zusammenfügen und Aktionen ausführen, programmieren lernen. Aber wenn man tiefer eintaucht, haben blockbasierte Systeme einige offensichtliche Schwächen, wenn es um die Darstellung komplexer Logik geht; man landet oft bei unübersichtlichen Diagrammen, die noch schwieriger zu verstehen sind als textbasierter Code.

Und auf Flussdiagrammen basierende Logiksysteme wie die frühen visuellen Programmiersprachen schneiden nicht viel besser ab, mit rekursiven Pfeilen und Linien, die eine Seite durchqueren und sich als schmerzhafter erweisen als saubere Zeilen von Skript.

Blockbasierte und Flussdiagramm-basierte visuelle Programmierung stößt an ihre Grenzen, wenn man versucht, komplexere Arbeitsabläufe zu programmieren.

Wir werden uns nicht zu sehr in die psychologische Debatte darüber vertiefen, ob Text oder Bilder für das menschliche Gehirn verständlicher sind; das ist weitgehend subjektiv und persönlich. Man kann jedoch argumentieren, dass die Beliebtheit textbasierter Programmiersprachen größtenteils auf die Tradition (Unix und Linux als grundlegende textbasierte Paradigmen) und die Bequemlichkeit des Sprachentwicklers zurückzuführen ist, nicht auf die Benutzer der Programmiersprache. Schließlich basieren die meisten Programmiersprachen auf dem Englischen, und es gibt Milliarden von Menschen auf der Welt, die überhaupt kein Englisch sprechen oder schreiben. Dennoch erwarten wir von ihnen, dass sie dies für die Entwicklung von Technologien tun.

Die visuelle Programmierung bietet hier die Möglichkeit, die Kluft zu überbrücken und den Menschen zu helfen, die Sprache der Technik auf andere Weise zu lernen. Scratch zum Beispiel wurde in mehr als 70 Sprachen übersetzt, so dass junge Menschen in ihrer Muttersprache programmieren können.

Der relative Erfolg von Scratch hat dem visuellen Programmieren jedoch auch den Ruf eingebracht, ein Werkzeug für Anfänger zu sein, ein Sprungbrett in die Welt des „echten Programmierens“, in der man die niedlichen Bilder wegwirft und sich stattdessen mit Klammern und Kommas herumschlägt.

Aber etwas „einfacher“ zu machen, muss es nicht weniger leistungsfähig machen. Warum investieren wir in das visuelle Lernen unserer Kinder, nur um dann, wenn sie älter werden, darauf zu bestehen, dass sie die Welt der verbalen Sprache bevorzugen? Was wäre, wenn es eine visuelle Programmiersprache gäbe, die einfach genug wäre, um verständlich zu sein, aber leistungsfähig genug, um auch außerhalb des Klassenzimmers nützlich zu sein?

Der Aufstieg der Bubble & „No Code“-Plattformen: Visual Programming for Web Apps

Bubble ist unsere Antwort auf die Frage, wie eine moderne visuelle Programmiersprache das Versprechen einlösen kann, die Entwicklung anspruchsvoller Technologien zu erleichtern. Bubble ermöglicht es Menschen, Webanwendungen zu erstellen, von Marktplätzen wie Airbnb bis hin zu sozialen Netzwerken wie Twitter, ohne dass sie programmieren müssen. Das Ergebnis ist, dass Menschen in der Lage sind, echte Geschäftsideen online in einem Bruchteil der Zeit und der Kosten für die Entwicklung zu entwickeln.

VERWEIST: Sehen Sie sich die Anwendungen an, die Benutzer in Bubble ohne Code erstellt haben.

Der visuelle Editor von Bubble ist von UI-Design- und Entwicklungstools inspiriert, mit einem „what you see is what you get“-Ansatz für die Webentwicklung. Der eigentliche Wert von Bubble liegt jedoch in seinem logischen Ansatz, der vielen anderen Plattformen fehlt. Als Josh mit der Arbeit am Workflow-System von Bubble begann, bestand er auf „aggressiver Einfachheit“, um die komplizierten Fallstricke älterer Flussdiagramm-Sprachen und die Unordnung blockbasierter Sprachen zu vermeiden.

Das Workflow-Design von Bubble soll Ihnen helfen, Logik mit einfachen Sätzen zu erstellen (z. B. „Wenn ein Benutzer x tut, sende ihm eine E-Mail“). Und während man bei den fortgeschrittenen Bubble-Techniken mit Anweisungen und Konditionalen ziemlich komplex werden kann, macht die Sprache bestimmte Annahmen über die grundlegenden Dinge, die man in einer Web-App haben will (wie: Benutzer, Herumklicken, Login, Anmeldungen), um die meisten grundlegenden Aktionen zu vereinfachen.

Computersprachen, die für einen bestimmten Zweck im Gegensatz zu einem allgemeinen Zweck entwickelt wurden, sind als domänenspezifische Sprachen bekannt. Bubble kann als eine domänenspezifische Sprache für das Webdesign bezeichnet werden, die auf der richtigen Abstraktionsebene angesiedelt ist, um die Gestaltung der Benutzeroberfläche einer Anwendung und die Entwicklung ihrer Logik hinter den Kulissen zu erleichtern. Bubble gibt den Menschen im Webdesign die Werkzeuge an die Hand, mit denen sie die Konzepte erklären können, die sie erstellen wollen – eine Schaltfläche, eine Eingabe, eine Suchleiste – und zwar auf der richtigen Ebene des Vokabulars für ihr Fachgebiet. Wenn Sie eine App für Restaurants entwickeln, erstellen Sie Datentypen für Ihr Restaurant, Ihre Speisekarte, Ihre Lebensmittel und/oder Ihre Kunden. Wenn Sie eine Schaltfläche mit einer bestimmten Funktion ausstatten möchten, erstellen Sie einfach ein Schaltflächenelement und geben an, was es tut.

„Bubble ermöglicht es den Menschen, Technik mit ihrem Vokabular zu erstellen, nicht umgekehrt“, erklärt Josh.

Tools wie Bubble wurden unter dem Begriff „no code“ oder „low code“ klassifiziert und stehen für eine Bewegung weg von textbasierten Frameworks für das Webdesign. Frühe Unternehmensprogramme bezeichneten das Konzept oft als „schnelle Anwendungsentwicklung“.

Aber nicht alle diese Tools sind gleich. Einige No-Code-Tools eignen sich besser für native mobile Apps, andere für Landing Pages und einfache Websites, wieder andere sind speziell auf Marktplätze mit vorgefertigten Vorlagen oder maschinellen Lernmodellen zugeschnitten. Bubble hat seine Wurzeln in einer umfassenden visuellen Programmiersprache und ist eine offenere und leistungsfähigere Plattform für die Erstellung von Web-Apps, die über unseren API-Connector mit Tausenden von anderen Plattformen integriert werden kann.

Mit Bubble haben viele Menschen die Probleme ihrer Startups gelöst und die ideale Version ihrer digitalen Unternehmen aufgebaut. Einige haben Millionen von Dollar an Risikokapital aufgebracht, andere haben ihre eigene Karriere gemacht, indem sie Vorlagen für Bubble erstellt oder anderen beigebracht haben, wie man No-Code-Tools verwendet. Bubbler mit technischem Hintergrund tragen zu unserem Plugin-Marktplatz bei, und Softwareunternehmen, die mehr Nutzer suchen, helfen uns bei der Entwicklung neuer benutzerdefinierter Integrationen, die es Nutzern, die bereits mit anderen Tools arbeiten, leichter machen.

Bubble und die Zukunft der visuellen Programmierung

Bubble hat es sich zur Aufgabe gemacht, es Menschen zu erleichtern, schnell und kostengünstig digitale Unternehmen zu gründen, ohne dafür programmieren zu müssen. In unserer Entstehungsgeschichte sprechen wir darüber, wie wir ein sehr altes Problem in der Technologie angehen, ein Problem, das die frühe visuelle Programmierung zu lösen versuchte und scheiterte: wie man Logik visuell macht und die Grenze zwischen der Nutzung von Technologie und der Schaffung von Technologie aufhebt.

Bubbles Ansatz zur visuellen Programmierung ist derzeit nicht dazu gedacht, alles zu tun, was die Technologie jetzt tun kann oder in Zukunft tun wird. Bubble ist für Webanwendungen konzipiert. Während wir festgestellt haben, dass Dinge wie Spieldesign dank unserer unglaublich talentierten Nutzer zunehmend in Bubble möglich sind, wissen wir, dass es andere Programme gibt, die speziell für Aufgaben wie Live-Streaming und Audioverarbeitung entwickelt wurden und besser ausgestattet sind (die wir aber in Zukunft gerne integrieren werden).

Was wir haben, ist die Grundlage für Möglichkeiten. Wir haben eine Gemeinschaft mit einer Fülle von Kreativität, Entschlossenheit und selbstmotivierter Neugier, die neue Wege entdeckt, ohne Code zu bauen. Wir haben eine Vision für die Zukunft, in der „No-Code“-Plattformen keine eigene Kategorie von Tools darstellen. Stattdessen werden Webanwendungen und andere Technologien einfach visuell programmiert, weil es am sinnvollsten ist, sie auf diese Weise zu erstellen.

Über Bubble

Bubble ist ein führendes Unternehmen in der No-Code-Bewegung. Bubble bietet einen leistungsstarken Point-and-Click-Web-Editor und eine Cloud-Hosting-Plattform, mit der Benutzer vollständig anpassbare Webanwendungen und Workflows erstellen können, von einfachen Prototypen bis hin zu komplexen Marktplätzen, SaaS-Produkten und mehr. Mehr als 500.000 Nutzer bauen derzeit Unternehmen auf Bubble auf und starten sie. Viele von ihnen haben an Top-Accelerator-Programmen wie Y Combinator teilgenommen und sogar 365 Millionen Dollar an Risikokapital aufgebracht. Bubble ist mehr als nur ein Produkt. Wir sind eine starke Gemeinschaft von Entwicklern und Unternehmern, die durch die Überzeugung vereint sind, dass jeder in der Lage sein sollte, Technologien zu entwickeln.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.