Jaka jest przyszłość przed nocode?

Ostatnio odbyłem parę rozmów w których opisywałem moją wizję przyszłości związanej z nocode. Miałem wrażenie, że nie zawsze są to konstatacje popularne więc może warto je utrwalić i zaprezentować szerzej?

Jaka jest przyszłość przed nocode?
Photo by Javier Allegue Barros / Unsplash

Nie planowałem pisać tego tekstu.

Ostatnio odbyłem parę rozmów w których opisywałem moją wizję przyszłości związanej z nocode. Miałem wrażenie, że nie zawsze są to konstatacje popularne więc może warto je utrwalić i zaprezentować szerzej?

Z dużą pokorą podchodzę do opisywania przyszłości dlatego już na wstępnie postanowiłem przygotować krótkie streszczenie o czym jest dzisiejszy tekst - jeśli Cię zaciekawi - zapraszam do dalszej lektury. Dodam, że nie są to przewidywania na przyszły rok, raczej długoterminowa wizja tego co nas czeka.

  • Konwergencja narzędzi - uważam, że długoterminowo będzie następowała konsolidacja narzędzi nocode i pozostanie parę dominujących platform
  • Role twórców nocode - nastąpi rozwarstwienie na role eksperckie np. backendowcy, frontendowcy, automatyzacje
  • Eksperckość nocode - produkcyjne rozwiązania będą utrzymywane przez osoby full-time zajmujące się daną dziedziną nocode
  • Visual nocode i AI nocode - powstaną dwa obozy nocode - jeden skupiony wokół tworzenia z pomocą graficznego interfejsu, drugi w którym AI będzie motorem przyspieszającym tworzenie.
  • Przyszłość AI nocode - jeszcze długo nas nie zastąpi - tworzenie z pomocą AI będzie kolejnym narzędziem w zasobniku twórcy.

Konwergencja narzędzi

Jesteśmy na wczesnym etapie adopcji technologii, myślę, że następne dwa lata w nocode to będzie przechodzenie z fazy Early Adopters do Early Majority.

Obrazek pobrany z tego tekstu

Wydaje się, że co miesiąc powstają nowe narzędzia nocode. Trend jest coraz bardziej popularny. Myślę, że etap dynamicznego począkowania rozwiązań potrwa jeszcze rok, dwa lata. Jednak finał  będzie analogiczny jak silniki gier komputerowych - początkowo każde studio produkujące grę starało się budować własny "engine" by dziś stwierdzać, że to się nie opłaca i lepiej wybrać gotowe rozwiązanie które jest state of the art. To też bardzo typowa charakterystyka produktów platformowych charakteryzujących się ogromnym efektem skali.

Uważam, że podobnie będzie z narzędziami nocode - zostanie parę, specjalizujących się na konkretnych obszarach - troche będzie to oddawało "stos technologiczny" obecnie znany z programowania. Będzie narzędzie dominujące w budowaniu frotnendu, backendu, mobile native etc.

Role twórców nocode

Za tym pójdzie specjalizacja osób które zajmują się nocode. Przejdzie to podobną ścieżkę jak na początku internetu "webmaster" który zajmował się wszystkim po trochu. Osoby parające się nocode też podzielą się na specjalizację. Myślę, że ze względu na obniżoną barierę wejścia będą to role bardziej T-shaped

Obrazek pobrany z https://samsienaucz.pl/osoba-t-shaped/

To model w którym linia pionowa oznacza głęboką ekspertyzę w danym temacie lub narzędziu a linia pozioma rozumienie i umiejętność komunikacji z innymi obszarami techniczno-biznesowymi. Przykładowo - ekspert Bubble pobieżnie znający z jednej strony bazy danych jak Xano, Airtable czy Supabase, z drugiej frontendy: Bravo, Framer czy Softr.io;

Eksperckość nocode

Nocode lansuje tezę, że nie trzeba mieć doświadczenia technicznego by tworzyć techniczne rozwiązania. To prawda - drastycznie zmniejszona jest bariera wejścia dla osoby mające inne doświadczenia i wiedzę.

Nie wierzę jednak by w przyszłości osoba która kompletnie nie interesuje się danym tematem czy narzędziem skutecznie potrafiła dostarczać efekty najwyższej jakości. Przechodziliśmy przez to z Wordpressem - teoretycznie prosta platforma w której można wszystko wyklikać, ale w praktyce w większości organizacji i tak zajmował się nią dedykowany specjalista. Nie zawsze musiał mieć programistyczne wykształcenie, ale nie był to też specjalista od marketingu. Te demokratyzacja będzie postępowała, ale w podstawowym nurcie, zwłaszcza korporacyjnym, pojawią się regularne role eksperckie które po prostu będą lewarowały się nocode jak narzędziami zwiększając efektywność pracy. Co za tym idzie...

Enterprise zaczną przyjmować rozwiązania no-code

Będą je nazywać low-code by zmniejszyć napięcie które zawsze odczuwam gdy rozmawiam z osobami technicznymi :)

Dwa nurty: AI Nocode i Visual Nocode

Ostatnie miesiące to szarża rozwiązań związanych ze sztuczną inteligencją. Widzimy jak ludzie wykorzystują ChatGPT do zwiększania swojej produktywności. Wielu programistów opisuje swoje wrażenia, że gdy rozpoczęli korzystanie z ChatGPT ich produktywność się podwoiła. Tradycyjny development dostał więc mocne wsparcie efektywnościowe w sporze z Visual Nocode o palmę pierwszeństwa w obszarze szybkości dostarczania wartości.

Od dawna mówiłem, że nocode jest pewną warstwą abstrakcji która nakładamy na technologię. Nikt poważny nie pisze dziś w Asemblerze (niskopoziomowy praojcieć innych języków programowania) choć może tak stworzony kod byłby najbardziej wydajny. Gdy pojawiały się IDE (edytory pomagające programować, podpowiadające i kolorujące składnie etc) podnosiły się głosy, że to już nie jest prawdziwe programowanie. Visual Nocode jest kolejną warstwą ułatwiającą tworzenie kodu, niekiedy zmieniającą mocno paradygmat. Na przykład w Bubble ciężko mówić o tworzeniu kodu, tworzymy oprogramowanie, aplikację ale kodu nigdy nie widzimy i nie możemy pobrać - we Flutterflow już mamy do niego dostęp i możemy dopisać lub poprawić efekt pracy edytora tradycyjnie kodując.

Przyszłość AI Nocode

Mam pewną rezerwę do wizji tworzenia kompletnych aplikacji za pomocą tekstowych (czy głosowych) komend. Uznaję AI za narzędzie - podobne do Photoshopa - z którego ciągle trzeba umieć korzystać. Tworzenie aplikacji to nie tylko znajomość narzędzia - to umiejętność wyobrażenia sobie tego co i jak ma się wydarzyć. Prawdopodobnie AI do pewnego stopnia może antycypować nasze niezwerbalizowane oczekiwania wobec aplikacji marketplace ale zawsze skazuje nas na kompromisy. Myślę, że bardzo długo AI Nocode będzie produkowało bardzo zaawansowane szablony / boilerplate'y aplikacji. Niby to co chcemy, ale okazuje się, że jest sto drobnych kroków które trzeba zmienić.

Wspierającym argumentem jest fakt, że często sam proces tworzenia jest odkrywczy i pozwala na podjęcie decyzji projektowej. Więc gdy przekażemy ten proces sztucznej inteligencji możemy otrzymać coś, z czego nie jesteśmy w pełni zadowoleni.

Ostatecznie myśląc o AI Nocode mam w głowie analogię tłumaczenia dziecku by przyniosło jakiś przedmiot z innego pokoju, opisujemy przedmiot, opisujemy lokalizacje, dziecko idzie, szuka, krzyczy, że nie ma, my krzyczymy, że jest, uzupełniamy polecenie, wraca zadowolone z innym przedmiotem. I to wcale nie musi być wina dziecka...

Wrap up

Dziękuję za lekturę. Bardzo chętnie poznam Twoją opinię na ten temat!