Czy warto uczyć się programowania w erze AI? Tak, ale inaczej niż kiedyś
Skoro AI pisze kod, tłumaczy błędy i podpowiada rozwiązania, to czy nauka programowania ma jeszcze sens?

Moim zdaniem tak. Zmieniłbym jednak sposób nauki i to, na co przeznaczamy najwięcej czasu. Wkuwanie składni, przerabianie każdego rozdziału kursu do perfekcji i odkładanie własnych projektów na „kiedy już będę gotowy” to droga, którą sam przeszedłem. Dzisiaj podszedłbym do tego inaczej.
Kalkulatory są, a 2 + 2 nadal się uczymy
Mamy kalkulatory, ale nadal uczymy się dodawania. Trzeba przecież rozumieć, co liczymy, jakie działanie wybrać i czy wynik w ogóle ma sens.
Z programowaniem jest podobnie. Możesz poprosić AI o kod koszyka zakupowego. Nadal jednak ktoś musi ustalić, co się stanie, gdy klient dwa razy kliknie „Zapłać” albo dwie osoby spróbują kupić ostatnią sztukę.
Model może pomóc wymyślić i wdrożyć rozwiązanie. Żeby ocenić jego propozycję, potrzebujesz podstaw. Tym bardziej że AI potrafi przekonująco wyjaśnić kod, który zwyczajnie ma błąd.
Nie musisz sam wykonywać każdego kroku. Musisz rozumieć, dokąd te kroki prowadzą.
Nie musisz masterować wszystkiego
Sam kiedyś wpadłem w pułapkę uczenia się wszystkiego po kolei. Przygodę z frontendem i JavaScriptem zacząłem od kursu Samuraja Programowania. Miał świetne opinie i był często polecany. Bartek szeroko podchodził do tematu, pokazując też starsze sposoby pisania JavaScriptu, sprzed ES6, oraz dawne techniki budowania układów w CSS.
Z mojej perspektywy za dużo czasu poświęcałem właśnie tym rzeczom. Jako początkujący nie wiedziałem, co powinienem porządnie przećwiczyć, a co wystarczy kojarzyć. Skoro coś było w kursie, uznawałem, że trzeba to opanować. Siedziałem więc nad układami opartymi na float, choć Flexbox znacznie ułatwiał już taką pracę.
Podobnie było z JavaScriptem. Odkładałem Reacta, bo słyszałem, że najpierw trzeba dobrze poznać czysty JS. Tyle że „dobrze” zamieniło się u mnie w niekończące się „jeszcze nie jestem gotowy”. Podstaw potrzebowałem. Znajomości każdego zakamarka języka przed ruszeniem dalej – już nie.
Dzisiaj jeszcze mniej sensu widzę w masterowaniu wszystkiego na zapas. Szczególnie HTML-a i CSS-a. LLM-y potrafią tu zrobić kawał roboty: przygotować strukturę, rozpisać style, zaproponować układ i pomóc go poprawić. Nie poświęcałbym dziś miesięcy na zapamiętywanie właściwości i zbieranie kolejnych sztuczek z CSS-a.
Warto rozumieć, jak działa strona, umieć przeczytać kod i sprawdzić efekt. Ale perfekcyjne opanowanie HTML-a i CSS-a nie powinno być bramką, przez którą musisz przejść, zanim zaczniesz własny projekt.
To nie znaczy, że aplikacje robią się same
Wygenerowanie komponentu czy pierwszego widoku potrafi pójść szybko. Potem zaczyna się praca nad całością: przepływem danych, uprawnieniami, błędami, integracjami i przypadkami, o których na początku nikt nie pomyślał.
Sam fakt, że coś wygląda dobrze w przeglądarce, niewiele mówi o tym, czy działa poprawnie.
Przy większym projekcie bez zrozumienia kodu łatwo wpaść w pętlę: wklejasz błąd, dostajesz poprawkę, poprawka psuje coś innego, prosisz o następną. Kod przyrasta, a ty masz coraz mniejsze pojęcie, co się w nim dzieje.
Dlatego nauka programowania nadal ma sens. Pozwala panować nad projektem również wtedy, gdy kolejne „napraw to” już nie pomaga.
Na co więc poświęcić czas?
Najwięcej uwagi poświęciłbym temu, co pomaga rozumieć i rozwiązywać problemy:
- Rozbijaniu zadań na mniejsze części. Zanim poprosisz AI o rozwiązanie, musisz wiedzieć, co właściwie chcesz zrobić.
- Rozumieniu kodu i danych. Skąd dane przychodzą, co się z nimi dzieje i kto może je zmieniać.
- Debugowaniu. Jak znaleźć przyczynę błędu, zamiast dokładać kolejne poprawki na ślepo.
- Testowaniu i bezpieczeństwu. Jak sprawdzić, czy aplikacja działa także wtedy, gdy ktoś zrobi coś niezgodnego z planem.
Składni ucz się przy okazji. Buduj coś, na czym ci zależy, i uzupełniaj wiedzę, kiedy trafisz na konkretny problem. Łatwiej zrozumieć, po co dana rzecz istnieje, gdy właśnie jej potrzebujesz.
Korzystaj z AI od początku, ale ruszaj też głową
Czytaj proponowany kod. Pytaj, dlaczego model wybrał takie rozwiązanie. Zmień wymaganie i spróbuj przewidzieć, co trzeba będzie poprawić. Sprawdź, co się stanie, gdy zabraknie danych albo serwer nie odpowie.
Od czasu do czasu napisz też mały fragment samodzielnie. To dobry sposób, żeby zobaczyć, co naprawdę rozumiesz, a co tylko wydawało się jasne podczas czytania odpowiedzi.
Nie musisz odkładać AI do momentu, aż „nauczysz się programować”. Korzystaj z niego podczas nauki. Pilnuj tylko, żeby wraz z projektem rosło twoje zrozumienie.
Gdybym zaczynał dzisiaj, szybciej zabrałbym się za własne projekty, częściej korzystał z pomocy AI i mniej czasu spędzał na przygotowywaniu się do przygotowań.
Warto uczyć się programowania. Nie musisz umieć wszystkiego z pamięci. Musisz wiedzieć, co robisz – i potrafić dojść do tego, czego jeszcze nie wiesz.
Nie musisz od razu robić z tego zawodu
Programowanie może dawać masę frajdy, nawet jeśli nigdy nie będziesz robić tego zawodowo. Piszesz mały skrypt, który ogarnia nudną robotę, tworzysz własną stronę albo prostą grę – i masz satysfakcję, że twój pomysł naprawdę działa. Przy okazji ćwiczysz logiczne myślenie, rozkładanie problemów na części i cierpliwość, kiedy coś po raz piąty nie wychodzi. W czasach, gdy łatwo wejść w tryb „AI zombie” i z każdym drobiazgiem od razu biec do LLM-a, warto zostawić sobie przestrzeń na samodzielne kombinowanie. Korzystaj z AI, ale daj też własnej głowie coś do roboty. Dojście do rozwiązania bywa najfajniejszą częścią całej zabawy.