/ We know how

AI w programowaniu – szansa czy zagrożenie?


W tym artykule dowiesz się:

  • Czy na obecnym etapie rozwoju AI jest w stanie samodzielnie tworzyć cały kod
  • Czy w przyszłości AI będzie w stanie stworzyć cały kod bez pomocy człowieka
  • Jak  korzystanie z pomocy AI wygląda w świetle praw autorskich
  • W czym na ten moment AI może pomóc programiście

Artificial Intelligence (AI) już na dobre zadomowiło się w naszym świecie. Nie ma miesiąca, w którym nie pokazywałyby się nowe wersje różnych chatbotów i generatorów AI. Sama technologia rozwija się niesamowicie szybko, otwierając coraz to nowsze możliwości w biznesie. Niektórzy nadal widzą w AI zagrożenie, ale czy to właściwe podejście do kwestii sztucznej inteligencji?

 

 

Jak sztuczna inteligencja wpływa na rozwój oprogramowania

 

Sztuczna inteligencja potrafi bardzo wiele. Możemy już z jej pomocą wygenerować sobie tekst, obrazy, video, a nawet działający kod programistyczny. Stąd właśnie biorą się obawy programistów, którzy nie wiedzą, jak poradzić sobie w świecie, gdy kod jest pisany automatycznie, i zadają sobie takie pytania, jak to w artykule „Ile czasu musi minąć, by AI zastąpiło programistów?”. W tym tekście zastanawialiśmy się, czy zastąpienie programistów jest nieuniknione, czy i kiedy nastąpi, i jak sobie poradzić jako programista w tym nowym świecie rządzonym przez AI.

 

Rozwój oprogramowania może w przyszłości bardzo skorzystać na wykorzystywaniu AI. Obecnie mamy już takie rozwiązania jak na przykład GitHub Copilot, który ogólnie potrafi przyspieszyć pracę programistów o ok. 30%, jednak możemy też zauważyć, że w myśl zasady „projekt projektowi nierówny” nie sprawdza się zawsze i wszędzie tak samo. Przed tym systemem jeszcze długa droga do tego, żeby usprawnić pracę programistyczną na co dzień i w każdym zadaniu – co tak naprawdę nie zastąpi pracy człowieka, ale ma na celu ją zoptymalizować i wspomóc.

 

W tej chwili najważniejsze jest to, że możemy zaoszczędzić sobie parę godzin wyszukiwania bugów, pisania prostych linijek kodu (które i tak trzeba przejrzeć ludzkim okiem), czy przepisywania aplikacji na inną technologię. Wszystkie te zadania potrafią być żmudne i powtarzalne, więc sztuczna inteligencja tak naprawdę uwalnia nasze zasoby do tego, żebyśmy mogli skupić się na poważniejszych i trudniejszych kwestiach.

 

 

Potencjał AI w automatyzacji i optymalizacji procesów programistycznych

 

Jak widać, AI już prężnie działa i automatyzuje oraz optymalizuje procesy programistyczne, skracając czas pracy i przyspieszając procesy nawet o kilkadziesiąt procent, jednak często próby nie wychodzą idealnie. Pamiętajmy, że AI generuje odpowiedzi z tego, co najpierw się do niego „wlało” – nie potrafi tworzyć samodzielnych idei i pomysłów, ale tylko odtwarza. Jednak im dłużej i bardziej świadomie używamy aplikacji AI, im więcej poprawnych danych wrzucimy sztucznej inteligencji do obrobienia, tym lepiej będzie nam służyć. W przyszłości prawdopodobnie to AI będzie tworzyć podwaliny kodu, o ile nie cały kod, do nowych systemów.

 

 

Etyczne i techniczne wyzwania związane z AI w programowaniu

 

Jak wspomnieliśmy wyżej, AI w programowaniu – i nie tylko – wykorzystuje wsad, który wcześniej został mu podany. Nie do końca więc tworzy, a raczej odtwarza i zmienia istniejące informacje i dane w sposób, który najbardziej odpowiada naszym zapytaniom. Jest to na pewno wyzwanie etyczne, mogą tu pojawić się kwestie sporne co do praw autorskich, ponieważ „zgodnie z polskim ustawodawstwem utwór stworzony przez sztuczną inteligencję nie podlega ochronie gwarantowanej przez prawo autorskie. Taka zasada obowiązuje w większości krajów na świecie. Z drugiej jednak strony proces tworzenia nowego dzieła przez AI może naruszać prawa istniejących już utworów.” (źródło: „Trening sztucznej inteligencji (AI) a prawa autorskie”).

 

Nawet jako programiści musimy więc uważać, co i w jaki sposób wykorzystujemy w naszej pracy, działając z AI.

 

Jeśli chodzi o techniczne wyzwania związane z AI – tak naprawdę bardzo wiele firm porywa się na tworzenie rozwiązań opartych o sztuczną inteligencję, ale prawie 90% z projektów się nie udaje. Zdecydowanie jednym z największych wyzwań jest uporządkowanie danych organizacji, które są często przechowywane w różnych formatach, nie są skonsolidowane, są trudno dostępne, albo firma nie posiada odpowiednio przemyślanej strategii na zarządzanie nimi.

 

Sztuczna inteligencja stoi na danych, a bez nich nawet najlepszy pomysł się nie powiedzie, ponieważ algorytmy nie poradzą sobie ze słabej jakości informacjami – a raczej wyniki przedstawiane przez rozwiązania AI nie będą prawidłowe i zdecydowanie nas nie zadowolą. Dlatego pierwszym krokiem w drodze do wykorzystania sztucznej inteligencji w biznesie powinno być zajęcie się danymi.

 

 

 

Przykłady udanego wykorzystania AI w tworzeniu oprogramowania

 

Oczywiście mamy już też przykłady udanego wykorzystania AI w tworzeniu oprogramowania. Wspomniany wcześniej GitHub Copilot to narzędzie, które z powodzeniem proponuje kod do wykorzystania przez programistę na podstawie podanych promptów. Jednocześnie Copilot sam ostrzega, że jest rozwiązaniem sztucznej inteligencji, i że zaleca się sprawdzenie tego, czym się z nami dzieli, ponieważ nie jest nieomylny i może popełniać błędy. W ten sam sposób możemy spróbować wykorzystać ChatGPT, jednak tu zalecamy jego najnowszą, dopracowaną wersję 4.0.

 

Copilot pozwala na zaoszczędzenie czasu, kiedy piszemy nowy, prosty kod, a także kiedy potrzebujemy przetestować istniejące linijki kodu. Pomoże też w szukaniu i naprawianiu błędów oraz bugów. Jednym z lepszych zastosowań jest wsparcie w migracji aplikacji do innej technologii – Copilot radzi sobie dobrze zwłaszcza w przypadku kodu boilerplate, czyli kodu szablonowego. Są to fragmenty kodu, które często się powtarzają w różnych projektach, więc AI ma tu również ułatwione zadanie.

 

 

Przyszłość zawodu programisty w erze AI

 

Pamiętajmy, że zawód programisty całkiem nie zniknie – musi się jednak dostosować do nowych warunków. Sztuczna inteligencja będzie się nadal rozwijać, dlatego najlepszym wyjściem jest ustawicznie się kształcić i być na bieżąco z nowinkami oraz optymalizacjami, żeby umieć je wykorzystać w codziennej pracy.

Wiele branż, nie tylko IT, będzie musiało dostosować się do tych zmian. Pracownicy, którzy pozostaną w miejscu, w którym są teraz, zupełnie nie przejmując się AI, mogą tego pożałować w przyszłości – dlatego kluczem do sukcesu jest świadome śledzenie rozwoju sztucznej inteligencji i dopasowanie się do zmieniającego się gwałtownie środowiska IT.

Porozmawiajmy!

    Wypełnij formularz,
    a my pomożemy Ci wdrożyć najnowsze rozwiązania!