Mówienie z twoją nowoczesną technologią nigdy nie było łatwiejsze, teraz, gdy możesz dosłownie mówić do Alexy lub Google Home i mieć program oparty na chmurze rozpoznający twoją mowę. Ale przez długi czas „rozmowa” z komputerem wymagała nauczenia się jego języka – języka programowania. Większość języków programowania jest oparta na tekście, umożliwiając koderom wpisywanie poleceń, wyciąganie informacji i dzielenie się tymi informacjami ze swoimi komputerami.
Gdy opisujemy „programowanie wizualne”, odnosimy się szeroko do sposobów „rozmawiania” z naszymi nowoczesnymi komputerami za pomocą grafiki i obrazów, a nie wyłącznie tekstu. Programowanie wizualne istnieje od dziesięcioleci i stanowi kolejną warstwę abstrakcji od języka maszynowego, którego nasze komputery używają, gdy komunikują się ze sobą.
Głównym celem wczesnego programowania wizualnego było ułatwienie interakcji z komputerem. W końcu pierwsze graficzne interfejsy użytkownika (GUI) oferowały znacznie łatwiejsze doświadczenie niż wpisywanie linii do okna terminala, do tego stopnia, że większość ludzi kupuje dziś „Maca” lub „PC” i nawet nie myśli o swoich komputerach jako odrębnych od ich wizualnych systemów operacyjnych.
Wcześniej programowanie wizualne do budowania interfejsów użytkownika było łatwym wyborem. W dzisiejszych czasach istnieje wiele wyrafinowanych wizualnych narzędzi do tworzenia stron internetowych, takich jak Wix czy Squarespace, oraz narzędzi projektowych, takich jak Figma i Sketch, do tworzenia prototypów.
Ale do budowania logiki obliczeniowej, takiej jak ta, którą można znaleźć w złożonych aplikacjach internetowych, wartość programowania wizualnego jest kontrowersyjna. Sceptycy będą twierdzić, że jest prawie niemożliwe, aby logika programowania wizualnego rywalizowała z mocą języka opartego na skryptach. Języki programowania wizualnego nie zbliżyły się do popularności języków skryptowych do budowania logiki back-end… być może aż do dzisiaj.
Enter: Bubble. Bubble to platforma do tworzenia aplikacji internetowych „bez kodu”, która rozpoczęła działalność w 2012 roku. Na pierwszy rzut oka, Bubble dzieli wiele podobieństw z wizualnymi narzędziami do budowania UI dla stron internetowych i prototypów wymienionych powyżej. Ale Bubble jest, w swoim rdzeniu, prawdziwym wizualnym językiem programowania – z całą mocą do tworzenia logiki dla wyrafinowanych narzędzi internetowych jako tekstowych frameworków programistycznych, takich jak React lub Flask.
Aby zrozumieć, jak powstały wizualne platformy do tworzenia stron internetowych, takie jak Bubble, zaglądamy do historii programowania opartego na wizualizacji – i jak następną fazą w ewolucji kodu może być w rzeczywistości „brak kodu.”
Wczesne programowanie „wizualne”: języki graficzne z lat 70. i Basic
W latach 60. i 70. ludzie eksperymentowali już z graficznymi reprezentacjami logiki w postaci systemów opartych na diagramach przepływowych, takich jak Pygmalion i GRaIL (Graphical Input Language). Te wczesne języki wizualne próbowały podjąć ważny wysiłek polegający na tym, by działania maszyny odwzorować na zestaw powiązanych ze sobą obrazów. Ale dopiero we wczesnych latach dziewięćdziesiątych, kiedy komputery miały już przyzwoite interfejsy graficzne, programowanie wizualne zaczęło się rozwijać.
Kiedy myślisz o koncepcji „programowania wizualnego”, pierwszą rzeczą, która może Ci przyjść do głowy, jest Visual Basic, produkt firmy Microsoft, który po raz pierwszy pojawił się w 1991 roku. Visual Basic pozwala ludziom budować nowe aplikacje poprzez poruszanie się po blokach kodu i tworzenie diagramów przepływu lub diagramów, a także zawiera narzędzia takie jak debugger i edytor kodu źródłowego. Jednak Visual Basic jest bardziej znany jako zintegrowane środowisko programistyczne (IDE), w którym tekstowy język programowania (Basic) jest połączony z innymi narzędziami wizualnymi, aby ułatwić pracę z kodem. Visual C i Visual Java są podobnymi wizualnymi środowiskami programistycznymi dla swoich języków programowania.
IDE są ważnym krokiem do zrozumienia, jak programowanie może stać się czysto wizualne. Jeden z założycieli Bubble, Josh Haas, czerpał inspirację z Visual Basic, kiedy zaczął tworzyć Bubble w 2012 roku. Opisuje on wczesny rozwój Bubble jako rezultat „gdybyś zaczął od IDE przed zbudowaniem języka programowania pod nim.”
Choć w swoim rdzeniu, IDE takie jak Visual Basic wciąż działają w oparciu o języki tekstowe, narzędzia, których używały, aby uczynić kodowanie mniej bolesnym, są ogromnie ważne dla współczesnego wizualnego doświadczenia programistycznego.
Wizualne programowanie jako narzędzie edukacyjne
Wizualne języki programowania zabłysły jako narzędzia edukacyjne do nauczania nowych koderów, jak myśleć logicznie. Scratch, opracowany przez MIT Media Laboratory w 2002 roku, jest prawdopodobnie najlepszym przykładem wizualnego języka programowania z
składnią opartą na „blokach”. Scratch stał się dość popularny, z ponad 57 milionami użytkowników i aplikacji. Niektóre nowoczesne programy do tworzenia aplikacji bez kodu, takie jak Thunkable, czerpią inspirację ze Scratcha i innych projektów opartych na blokach.
Scratch jest przeznaczony przede wszystkim dla dzieci uczących się programowania, z jego uroczym tygryskiem i kolorowymi blokami, które łączą się ze sobą, tworząc logiczne zdania wykonujące działania. Ale gdyby zanurkować głębiej, systemy oparte na blokach mają pewne oczywiste wady, gdy reprezentują złożoną logikę; często kończą się niechlujnymi diagramami, które są jeszcze trudniejsze do zrozumienia niż kod oparty na tekście.
A systemy logiczne oparte na schematach blokowych, takie jak wczesne wizualne języki programowania, nie radzą sobie dużo lepiej, z rekurencyjnymi strzałkami i liniami przecinającymi stronę, które okazują się być bardziej bolesne do oglądania niż schludne linie skryptu.
Nie zamierzamy zbyt głęboko zagłębiać się w psychologiczną debatę na temat tego, czy tekst lub grafika są bardziej zrozumiałe dla ludzkiego mózgu; jest to w dużej mierze sprawa subiektywna i osobista. Ale można wysunąć argument, że popularność tekstowych języków programowania jest w dużej mierze wynikiem tradycji (Unix i Linux jako podstawowe paradygmaty tekstowe) i wygody twórcy języka, a nie jego użytkowników. W końcu większość języków programowania jest oparta na języku angielskim, a na świecie są miliardy ludzi, którzy w ogóle nie mówią ani nie piszą po angielsku. A jednak oczekujemy od nich, że będą to robić dla celów tworzenia technologii.
Tutaj, programowanie wizualne ma szansę wypełnić luki i pomóc ludziom nauczyć się języka technologii w inny sposób. Scratch, na przykład, został przetłumaczony na ponad 70 języków, dzięki czemu młodzi ludzie mogą programować w swoich ojczystych językach.
Jednakże względny sukces Scratcha mógł również sprawić, że programowanie wizualne zyskało reputację narzędzia dla początkujących, wstępu do świata „prawdziwego programowania”, w którym pozbywasz się uroczych obrazków i spędzasz czas na męczeniu się z nawiasami i przecinkami.
Ale uczynienie czegoś „prostszym” nie musi czynić tego mniej potężnym. Dlaczego inwestujemy w to, żeby nasze dzieci uczyły się wizualnie, tylko po to, żeby z wiekiem nalegać na to, żeby priorytetowo traktowały świat języka werbalnego? Co by było, gdyby istniał wizualny język programowania, który starał się być na tyle prosty, by być zrozumiałym, ale na tyle potężny, by być użytecznym poza klasą?
The Rise of Bubble & Platformy „No Code”: Visual Programming for Web Apps
Bubble jest naszą odpowiedzią na pytanie, w jaki sposób nowoczesny wizualny język programowania może spełnić obietnicę ułatwienia tworzenia i budowania zaawansowanych technologii. Bubble pozwala ludziom budować aplikacje internetowe, od rynków takich jak Airbnb po sieci społecznościowe takie jak Twitter, bez konieczności pisania kodu. W rezultacie ludzie są w stanie budować prawdziwe pomysły biznesowe online w ułamku czasu i kosztów rozwoju.
RELATED: Zobacz aplikacje, które użytkownicy zbudowali w Bubble bez kodu.
Edytor wizualny Bubble czerpie inspirację z projektowania UI i narzędzi programistycznych, z podejściem „to, co widzisz, jest tym, co dostajesz” do tworzenia stron internetowych. Ale prawdziwa wartość Bubble tkwi w jego podejściu do logiki, którego brakuje wielu innym platformom. Kiedy Josh rozpoczął pracę nad systemem przepływu pracy w Bubble, nalegał na „agresywną prostotę”, aby uniknąć skomplikowanych pułapek starszych języków flowchart i bałaganu języków opartych na blokach.
Projekt przepływu pracy w Bąbelku ma na celu pomóc w budowaniu logiki przy użyciu prostych zdań (na przykład: „Kiedy użytkownik zrobi x, wyślij użytkownikowi wiadomość e-mail”). I chociaż można uzyskać dość skomplikowane stwierdzenia i warunki w zaawansowanych technikach bąbelkowych, język czyni pewne założenia dotyczące podstawowych rzeczy, które będą potrzebne w aplikacji internetowej (jak: użytkownicy, klikanie, logowanie, podpisywanie się), aby uprościć większość podstawowych działań.
Języki komputerowe zaprojektowane do konkretnego zastosowania, w przeciwieństwie do ogólnego celu, są znane jako języki dziedzinowe. Bubble może być opisany jako język dziedzinowy do projektowania stron internetowych, na odpowiednim poziomie abstrakcji, aby ułatwić projektowanie interfejsu aplikacji i budowanie jej logiki za kulisami. Bubble daje ludziom narzędzia w projektowaniu stron internetowych, aby wyjaśnić koncepcje, które chcesz zbudować – przycisk, wejście, pasek wyszukiwania – na odpowiednim poziomie słownictwa dla twojej wiedzy. Jeśli budujesz aplikację dla restauracji, tworzysz typy danych dla swojej restauracji, menu, artykułów spożywczych i / lub klientów. Jeśli chcesz, aby przycisk coś robił, po prostu tworzysz element przycisku i określasz, co on robi.
„Bubble umożliwia ludziom tworzenie technologii przy użyciu ich słownictwa, a nie odwrotnie”, wyjaśnia Josh.
Narzędzia takie jak Bubble zostały sklasyfikowane pod terminem „no code” lub „low code”, reprezentując ruch odchodzenia od opartych na tekście ram projektowania stron internetowych. Wczesne programy dla przedsiębiorstw często odnosiły się do tej koncepcji jako „szybkiego rozwoju aplikacji”.
Ale nie wszystkie z tych narzędzi są równe. Niektóre narzędzia no-code są lepsze dla natywnych aplikacji mobilnych, niektóre są najlepsze dla stron docelowych i prostych stron internetowych, niektóre są dostosowane specjalnie dla rynków z gotowymi szablonami lub modelami uczenia maszynowego. Bubble, ze swoimi korzeniami jako wszechstronny wizualny język programowania, jest bardziej otwartą i potężną platformą do tworzenia aplikacji internetowych, z możliwością integracji z tysiącami innych platform poprzez nasz API Connector.
Ludzie używają Bubble do rozwiązywania problemów swoich startupów i budowania idealnej wersji swoich cyfrowych biznesów. Niektórzy z nich zdobyli miliony dolarów w funduszach venture capital, a inni stworzyli własne kariery, budując szablony dla Bubble lub ucząc innych, jak korzystać z narzędzi bez kodu. Bubblers z technicznym wykształceniem przyczyniają się do rozwoju naszego rynku wtyczek, a firmy programistyczne poszukujące większej liczby użytkowników pomagają nam tworzyć nowe, niestandardowe integracje, które ułatwiają pracę użytkownikom już korzystającym z innych narzędzi.
Bubble and the Future of Visual Programming
Misją Bubble jest ułatwienie ludziom tworzenia cyfrowych biznesów szybko i tanio, bez potrzeby kodowania. W naszej historii pochodzenia mówimy o tym, jak zajmujemy się bardzo starym problemem w technologii, problemem, który wczesne programowanie wizualne próbowało rozwiązać i nie udało się: jak sprawić, by logika była wizualna i zatrzeć granicę między używaniem technologii a tworzeniem technologii.
Podejście Bubble do programowania wizualnego nie jest obecnie przeznaczone do robienia wszystkiego, co technologia może zrobić teraz lub będzie mogła zrobić w przyszłości. Bubble jest zbudowany dla aplikacji internetowych. Podczas gdy odkryliśmy, że rzeczy takie jak projektowanie gier są coraz bardziej możliwe w Bubble dzięki naszym niesamowicie utalentowanym użytkownikom, wiemy, że istnieją inne programy specjalnie stworzone i lepiej wyposażone do zadań takich jak transmisje na żywo i przetwarzanie dźwięku (ale z którymi będziemy entuzjastycznie integrować się w przyszłości).
To co mamy jest podstawą możliwości. Mamy społeczność z dużą dozą kreatywności, determinacji i ciekawości, która odkrywa nowe sposoby budowania bez kodu. Mamy wizję przyszłości, w której platformy „bezkodowe” nie będą oddzielną kategorią narzędzi. Zamiast tego programowanie wizualne będzie sposobem, w jaki tworzone są aplikacje internetowe i inne technologie, ponieważ robienie ich w ten sposób ma największy sens.
About Bubble
Bubble jest liderem w ruchu bez kodu. Bubble oferuje potężny edytor stron internetowych typu „wskaż i kliknij” oraz platformę hostingową w chmurze, która umożliwia użytkownikom tworzenie w pełni konfigurowalnych aplikacji internetowych i przepływów pracy, począwszy od prostych prototypów po złożone rynki, produkty SaaS i wiele innych. Ponad 500 000 użytkowników buduje i uruchamia firmy na Bubble – wielu z nich uczestniczyło w najlepszych programach akceleracyjnych, takich jak Y Combinator, a nawet pozyskało 365 milionów dolarów w funduszach venture. Bubble to coś więcej niż tylko produkt. Jesteśmy silną społecznością twórców i przedsiębiorców, których łączy przekonanie, że każdy powinien mieć możliwość tworzenia technologii.