Sztuczna inteligencjaBranża ITProgramowanieRynekPolecane tematy
Low Code czy AI – jakie rozwiązania wspierające programistów mają większy potencjał biznesowy?
ITWIZ TREND NAWIGATOR
Platformy Low Code/No Code oraz rozwiązania generatywnej sztucznej inteligencji zmieniają sposób w jaki firmy tworzą obecnie nowoczesne aplikacje. Obie technologie wspierają i przyspieszają prace programistów m.in. automatyzując pewne proste działania czy zwiększając produktywność. Narzędzia te rozwijają się równolegle, mając zarówno swoich zagorzałych zwolenników, jak i przeciwników. Postanowiliśmy zapytać praktyków i przedstawicieli branży IT, które z nich – włączają w to także tradycyjne programowanie wysokokodowe – mają większy potencjał biznesowy.
Narzędzia AI
Nikt chyba nie zaprzeczy, że mijający 2023 rok był rokiem generatywnej sztucznej inteligencji. W przygotowanym przez Forrester badaniu “AI Pulse Survey” z lipca 2023 roku, nawet 67% przedsiębiorstw wskazało, że włącza Generatywną AI do swojej ogólnej strategii sztucznej inteligencji. Ta sama firma prognozuje, że już w 2024 roku 60% pracowników będzie używać własnej sztucznej inteligencji do wykonywania codziennej pracy.
Także rodzime przedsiębiorstwa z dużą otwartością podchodzą do wprowadzenia narzędzi opartych o sztuczną inteligencję – jak wynika z badania EY “Jak polskie firmy wdrażają AI” – o którym szerzej piszemy na łamach ITwiz – proces ten zakończyło już 20% organizacji, a kolejne 42% jest w jego trakcie. Z kolei 63% firm w Polsce w najbliższych 18 miesiącach planuje zwiększyć swoje wydatki na narzędzia oparte o sztuczną inteligencję – w znaczącym stopniu zrobić to ma 22% ankietowanych firm, a w nieznacznym – 41%.
Szybki rozwój narzędzi AI doprowadził również do ogromnego zainteresowania ze strony funduszy Venture Capital. 74% z nich zainwestowało w ciągu ostatnich 18 miesięcy przynajmniej w jeden startup z tego obszaru [1]. Środki na narzędzia AI płyną gęstym strumieniem, bo spadają koszty technologii opartych o uczenie maszynowe (nawet 70% rok do roku) [2], a niektóre modele językowe wychodzą z „piwnicy” i stają się dostępne publicznie.
A jak wygląda wykorzystanie rozwiązań sztucznej inteligencji przez programistów? Już nawet 92% deweloperów z USA korzysta z narzędzi do kodowania AI zarówno w pracy, jak i poza nią [3]. Spośród korzyści płynących ze sztucznej inteligencji, programiści najczęściej wymieniają: zwiększoną produktywność (32,81), szybszą naukę kodowania (25,17%) oraz większą skuteczność (24,96%) [4].
Potwierdza to również wewnętrzne badanie, które przeprowadziła firma SoftServe z udziałem ponad 1000 swoich pracowników z siedmiu krajów, a o którym więcej możecie przeczytać pod poniższym linkiem. Wynika z niego, że generatywna sztuczna inteligencja ma realny wpływ na pracę działów programistycznych – może skrócić czas potrzebny całemu zespołowi na wykonanie zadań średnio o 31% i zwiększyć ogólną wydajność średnio o 45%. Ponadto wykazano, że GenAI może zwiększyć produktywność procesu tworzenia wymagań o 44%, a projektowania architektonicznego o 39%. W przypadku inżynierów ds. rozwoju jest to 48%, a inżynierów ds. kontroli jakości nawet 62%.
Jak wynika z kolei z raportu „AI na rynku pracy w IT”, przygotowanego przez No Fluff Jobs, w zestawieniu najpowszechniejszych narzędzi AI, które już dziś są wykorzystywane w pracy, dominuje ChatGPT. Używa go aż 80% specjalistów IT w Polsce. Oprócz tego sporym zainteresowaniem cieszą się GitHub Copilot (37%), GPT-3/4 (27%) oraz AutoGPT (24%).
Rozwiązania Low Code/No Code
Rozwiązania Low Code i No Code umożliwiają, zwłaszcza osobom nie posiadającym zaawansowanych umiejętności programistycznych, tworzenie aplikacji i rozwiązań IT za pomocą łatwych w użyciu narzędzi. Przy ich pomocy, programowanie staje się bardziej intuicyjne i szybsze, dzięki wyeliminowaniu konieczności budowania dużego kodu. Przy czym warto tu nadmienić, że platformy Low Code pozwalają na tworzenie własnego kodu, a te No Code bazują wyłącznie na warstwie wizualnej, nie zapewniając możliwość dodawania lub zmiany kodu źródłowego tworzonego oprogramowania, ani nawet wglądu w tenże kod. Czym jeszcze różnią się obie platformy tłumaczymy w tym artykule.
Skupiając się natomiast na rozwiązaniach Low Code – wykorzystywanych przy bardziej złożonych projektach – warto zaznaczyć, że według Gartnera, organizacje coraz częściej sięgają po platformy programistyczne tego typu, aby sprostać rosnącym wymaganiom w zakresie szybkości dostarczania aplikacji. Ba, analitycy tej firmy badawczej uważają, że do 2024 roku nawet 65% rozwoju aplikacji będzie powstawać właśnie przy użyciu technologii niskokodowych. Zresztą według najnowszego badania Gartnera, 66% organizacji już korzysta lub zamierza korzystać z platform tego typu w ciągu następnych 18 miesięcy.
Zapewne związane jest to z tym, iż według badania przeprowadzonego z kolei przez Forrester, wykorzystanie platform Low Code może skrócić średni czas wprowadzenia produktu na rynek o 30-40%, a rozwoju aplikacji korporacyjnych nawet o 60%.
Nie dziwi więc, że według prognoz GlobeNewswire, globalny rynek platform Low Code, który w 2021 roku wart był 16,3 mld USD, do roku 2030 powinien osiągnąć wartość 148,5 mld USD.
Istotny jest również fakt, iż jednym z najważniejszych trendów związanych z wykorzystaniem oraz rozwojem platform Low Code jest ich integracja z algorytmami AI i Machine Learning. Sztuczna inteligencja może pomóc wzmocnić możliwości tych platform na wiele sposobów, zapewniając zaawansowane możliwości automatyzacji tworzenia kodu źródłowego, a tym samym pozwalając programistom na tworzenie bardziej złożonych aplikacji biznesowych. I tak, algorytmy AI/ML mogą być wykorzystywane do ułatwienia tworzenia kodu, np. poprzez inteligentne jego uzupełnianie, prowadzenie zautomatyzowanych testów czy zastosowanie innych narzędzi, które przyspieszają rozwój i poprawiają jakość aplikacji Low Code. Ponadto platformy niskokodowe mogą też pomóc programistom w tworzeniu inteligentnych aplikacji z zaawansowanymi funkcjami, takimi jak np. przetwarzanie języka naturalnego.
Więcej praktycznych informacji o tym jak można wykorzystywać platformy Low Code, znajdziecie pod poniższym linkiem.
Zatem AI czy Low Code?
Menedżerowie IT dostrzegają więc zalety płynące z użytkowania jednych i drugich opisywanych rozwiązań wspierających pracę programistów i prężnie je wykorzystują. “W Endavie aktywnie monitorujemy trendy w rozwoju low code i generatywnej sztucznej inteligencji. Prowadzimy projekty wykorzystujące te technologie. Badamy także dostępne już produkty, takie jak GitHub Copilot, AWS Code Whisperer czy Tabnine. Aktywnie je analizujemy, aby sprawdzić, jak dobrze sprawują się dla naszych programistów i jak są skuteczne. Prowadzimy też pilotaż naszego własnego asystenta kodowania AI, opartego na OpenAI, hostowanego na naszej infrastrukturze, aby uniknąć obaw związanych z bezpieczeństwem informacji, które przekazują nam klienci” – mówiła w wywiadzie udzielonym ITwiz, Chris Cooper-Bland, Group Head of Architecture w Endava, brytyjskiej firmy konsultingowej działającej w 27 krajach.
Nie zapominajmy jednak o tradycyjnym, wysokokodowym programowaniu – Chris Cooper-Bland, stwierdziła wprost: “Low code raczej nie zastąpi obecnego oprogramowania, przynajmniej w najbliższej przyszłości. Narzędzia te są wartościowe i sprawdzają się naprawdę dobrze w przypadku standardowych lub prostych systemów. Ale tam, gdzie trzeba wziąć pod uwagę atrybuty jakości, takie jak wydajność, bezpieczeństwo i skalowalność lub złożoną funkcjonalność, nie dają rady”.
Jakie zatem rozwiązania wspierające tworzenie oprogramowania – platformy Low Code, No Code, narzędzia wykorzystujące algorytmy AI, a może jednak tradycyjne programowanie wysokokodowe – mają większy potencjał biznesowy? Na tak postawione pytanie na platformie LinkedIn, aż 75% ankietowanych przez ITwiz przedstawicieli branży IT i nowych technologii wskazało, że platformy Low Code. Na narzędzia wykorzystujące AI głosowało jedynie 25% z nich. Nikt natomiast nie wskazał zarówno na platformy No Code, jak i na programowanie wysokokodowe.
Jednocześnie sondowaliśmy rynek w zakresie korzystania z platform Low Code/No Code. Ankietowani specjaliści IT wskazali, że: 56% nie korzysta z nich w ogóle, 33% używa wyłącznie platform Low Code, a 11% wykorzystuje obie platformy tego rodzaju.
Aby zgłębić ten temat, o komentarz dotyczący tego jakie rozwiązania wspierające programistów mają większy potencjał biznesowy, poprosiliśmy praktyków z trzech firm reprezentujących różne sektory rynku. Poniżej zamieszczamy ich wypowiedzi:
Grupa PZU
Ze względu na mnogość potrzeb, w PZU znajdują zastosowanie praktycznie wszystkie dostępne na rynku klasy rozwiązań. Dla procesów niskowolumenowych, w których potencjalne opóźnienia w działaniu mają niski wpływ na nasze wyniki, domyślnie staramy się przekazać realizację zadania w technologiach low-code. Pozwala to na szybkie stworzenie aplikacji o wysokim poziomie zabezpieczeń, pełną persystencję danych razem z danymi audytowymi oraz umożliwienie, w uzasadnionych przypadkach, zmigrowania procesu do bardziej wydajnych rozwiązań.
Z kolei dla procesów wysokowolumenowych, niewymagających dużego wkładu merytorycznego operatora, sięgamy po narzędzia klasy RPA, których zastosowanie jest często szybsze niż dokonanie modyfikacji w systemach źródłowych na których pracują operatorzy. Powyższe drogi wybieramy już na tyle często, że utworzyliśmy dedykowany zespół do rozwoju oprogramowania w oparciu o PowerPlatform oraz inne narzędzia RPA.
W przypadku procesów wymagających topowej wydajności, kontroli nad przepływem danych i dostępności na poziomie bliskim 100%, wybieramy natomiast klasyczny model rozwoju oprogramowania. W jego ramach nasi inżynierowie projektują wszystkie warstwy aplikacji – dzięki temu mamy możliwość prowadzenia optymalizacji na każdej z nich, a reakcja na błędy zależy tylko od naszej wiedzy i dostępności. Ważną kwestią są tutaj coraz intensywniej wchodzące technologie usprawniające generowanie kodu aplikacji przez narzędzia klasy AI. Dla młodych programistów są one często „nauczycielem”, pokazującym jak można pisać wydajny kod. Z kolei doświadczeni deweloperzy oszczędzają dzięki nim czas przy pisaniu prostego i powtarzającego się kodu. Użycie narzędzi typu Copilot, zmniejsza więc przewagę narzędzi low-code w kontekście szybkości tworzenia aplikacji, niosąc jednak ze sobą inne niebezpieczeństwa, głównie związane z prawnymi aspektami właścicielstwa kodu, które nie są jeszcze dobrze uregulowane prawnie.
Jednak przy wyborze metody realizacji danego procesu, istotny jest jeszcze jeden czynnik – możliwość przetwarzania danych w chmurze obliczeniowej. Dla Grupy PZU podlegającej regulacjom KNF oraz przetwarzającej duże wolumeny danych chronionych, użycie narzędzi low-code, które najczęściej oferowane są jako subskrypcje chmurowe, często wymaga przeskoczenia kolejnej przeszkody – zgłoszenia do organów regulacyjnych. Wymaga to jednak czasu i nakładu pracy, który często powoduje, że użycie bardziej tradycyjnego podejścia jest bardziej opłacalne.
Paweł Kosmólski, Dyrektor ds. Dostarczania Rozwiązań IT, PZU
Aleksandra Kozacka, Dyrektor ds. Dostarczania Rozwiązań IT, PZU
Bakels Group
Rozwiązania Low Code/No code to obecnie marketingowo modne hasła, ale trzeba pamiętać, że narzędzia tego typu istnieją już od kilkudziesięciu lat – czego przykładem jest choćby stosowany w latach 90-tych Informix New Era. Mamy więc do czynienia z kolejnym etapem rozwoju narzędzi, które mają wspierać programistów. Z kolei co do narzędzi AI to warto na wstępie podkreślić – a nie jest to tylko moje osobne zdanie – że nie ma czegoś takiego jak sztuczna inteligencja, mamy natomiast kolejny etap rozwoju Machine Learningu.
Zarówno narzędzia ML, jak i Low Code/No code mają jedną ważną, wspólną cechę – nie stworzą same aplikacji, która mogłaby być skomercjalizowana, i która dałaby wartość biznesową firmie. Tego rodzaju narzędzia są wyłącznie po to, aby wspierać człowieka w podejmowaniu decyzji. I bardzo ważną rzeczą jest, aby człowiek podejmujący taką czy inną decyzję, wiedział, dlaczego dane narzędzie Machine Learning taką, a nie inną decyzję właśnie mu podsuwa. Kluczową kwestią jest więc edukacja oraz znajomość narzędzi, którym się posługujemy.
Wynik ankiety ITwiz, a więc te 75% głosów oddanych na rozwiązania Low code/No code tłumaczyłbym tym, że są one dobrze znane od kilkudziesięciu już lat, a machine learning jest świadomie obecny na rynku od powiedzmy 10 lat. Dojrzałość narzędzi Low code/No code jest zatem dużo większa. Natomiast istotne jest to, że narzędzia ML czy technologie wykorzystujące NLP, a ułatwiające np. analizę tekstów, rozwijają się dużo szybciej niż rozwiązania Low code/No code. Owszem, są one stale unowocześniane, ale też szybko osiągają swoje nasycenie. Krzywa wzrostu możliwości narzędzi ML jest natomiast bardzo stroma i bardzo szybko rośnie. Również znajomość tych narzędzi zaczyna być dużo bardziej szeroka niż rozwiązań Low code/No code.
Uważam ponadto, że w niedalekiej przyszłości – nie dalej niż za 5 lat – obszar Machine Learning zostanie zaimplementowany w narzędziach Low Code. Powstanie swego rodzaju hybryda – a zatem z tych dwóch rozwiązań powstanie jeden rodzaj narzędzi. Ale nadal będą one jedynie wspierały pracę programistów. Rola człowieka przy tworzeniu kodu czy aplikacji pozostanie dominująca.
Bogusław Święcicki, ICT Manager w Bakels Group
AXA IT Solutions
Postęp wspomnianych narzędzi jest bardzo widoczny. Wiele firm zachłysnęło się możliwościami oferowanymi przez Low i No Code. Traktowały je jako remedium na długi „tradycyjny” proces wytwórczy systemów. Wydaje się, że organizacje dojrzewają do tego, iż te metody też potrzebują zorganizowania pełnego cyklu życia oprogramowania, bo wytworzone w ten sposób rozwiązania trzeba w produkcji zintegrować i utrzymać.
Z drugiej strony „kodowanie” zmierza do coraz wyższego poziomu abstrakcji. Powszechne jest wykorzystanie gotowych modułów czy frameworków i pozostawienie szczegółów niskopoziomowej implementacji ich twórcom. Jednocześnie do środowisk programistów wkroczył dodatkowy pomocnik w postaci sztucznej inteligencji, podpowiadającej jak napisać kod lub przeprowadzić refaktoring. Z dnia na dzień potrafi on coraz więcej i wygląda na to, że duża część programistów będzie mogła w przyszłości mówić „co” ma być zrobione, a tym „jak” to ma się stać – zajmie się za nich AI. Dzięki temu, skrócić się powinien czas potrzebny na dostarczanie rozwiązań, co odbierze silny argument narzędziom Low i No Code. Dzięki szybkiemu rozwojowi „pomocników AI” idziemy w kierunku, w którym granica pomiędzy Low Code a programowaniem praktycznie się zatrze.
Oczywiście ostatecznie wybór konkretnego rozwiązania zależy od wymagań projektu i zdolności firmy do jego realizacji. Jednak chęć wyróżnienia się na rynku i bardzo silna rywalizacja powoduje, że dla wielu przedsiębiorstw, możliwość niczym nieograniczonego kształtowania każdej części swojego procesu, systemu czy aplikacji, jest traktowana jako przewaga konkurencyjna. Co za tym idzie, dużo firm nie będzie się chciała całkowicie przenieść na platformy Low i No Code, których elastyczność jest jednak ograniczona. Dlatego myślę, że ostatecznie Low i No Code pozostanie w obszarze standardowych, małych i szybkich projektów, a większa część potrzeb będzie realizowana dzięki programowaniu z coraz bardziej znaczącym wsparciem przez sztuczną inteligencję.
Kamil Komański, IT Manager & Head of Automation w AXA IT Solutions
[1] https://www.prnewswire.com/news-releases/new-pitchbook-survey-finds-majority-of-venture-capitalists-have-invested-in-ai-301865448.html?utm_source=nofluffjobs&utm_medium=article&utm_campaign=raport_AI [2] Ark’s Big Ideas 2023 [3] https://github.blog/2023-06-13-survey-reveals-ais-impact-on-the-developer-experience/ [4] https://survey.stackoverflow.co/2023/