Jak szybko zrozumieć Laravel? Tydzień pierwszy z programowaniem wspieranym AI #buildinpublic

Dziś będzie jak na kolejce górskiej – optymizm, kompletna porażka i szczęśliwy finał. Przy okazji zdradzę jak i dlaczego poznałem podstawy Laravel w 3-4 wieczory.

Wpis publikuję w ramach serii pisanej w duchu #buildinpublic, w której ukazały się do tej pory następujące wpisy:

Może zastanawiasz się, na ile realne jest tworzenie aplikacji z pomocą edytorów AI takich jak Windsurf czy Cursor – bez umiejętności programowania? Poniżej opiszę Ci moje doświadczenia w tym temacie, po pierwszym tygodniu pracy.

Co ważne – mówimy pracy nad o realnym, nietrywialnym projekcie. Nie jest to kolejna lista to-do czy saper tylko pełnoprawny system dla klienta.

TL;DR; (spoiler!)

Na dziś (a jestem po 3 tygodniach pracy) nie bardzo wyobrażam sobie napisać z AI tego typu systemu nie mając podstawowej wiedzy technicznej i o stosie technologicznym w jakim budujemy.

Kontekst biznesowy i aplikacja do napisania

W sumie to jest najmniej ważne. Twój przypadek będzie zupełnie inny, dlatego znajdziesz te informacje w zupełnie innym wpisie (link wkrótce). Na teraz wystarczy wiedzieć, że system ten:

  • będzie dostępny z internetu,
  • będzie przechowywał dane w bazie,
  • będzie dostępny dla pracowników klienta, więc ma logowanie,
  • każdy pracownik będzie miał określoną role i wynikające z niej uprawnienia
  • po zalogowaniu użytkownicy będą pracować z dość rozbudowanymi tabelami i formularzami, reprezentującymi obiekty w systemie,
  • system będzie generował dość zaawansowane dokumenty Word i PDF.

Moje doświadczenie w budowaniu aplikacji (czyli – czy ten wpis jest dla Ciebie?)

Czy umiem programować? Na podstawowym poziomie – tak. Znam koncepcje używane w programowaniu – takie jak struktury danych, pętle, warunki, funkcje czy obiekty. Zdarzało mi się poprawiać kod w PHP, pisać proste narzędzia konsolowe w Java czy dłubać coś w Bashu. Rok temu, wspierając się ChatGPT, przygotowałem też spory migrator danych z json do PostgreSQL w Pythonie.

Czy budowałem już takie systemy? Tak, ale nie jako programista. Dla tego konkretnego klienta zbudowałem bardzo podobny system za pomocą Retool, o czym zresztą też będzie wpis. W pracy, przez ostatnie 15 lat robię w pracy za analityka, projektanta, wdrożeniowca, szkoleniowca i wszystko-inne-owca. Jedyne czego nie robię to programowanie, ale od zawsze chciałem posiąść tę umiejętność.

Zakasałem więc rękawy i pełen (nie)uzasadnionego optymizmu (polegającego na obejrzeniu wielu filmów na kanale AICodeKing oraz wybraniu Laravel jako mojego frameworka) zakasałem rękawy zabrałem się do „pisania” systemu od zera.

Nie mając pojęcia na co się porywam.

Część 1 – zderzenie ze ścianą

Pierwsze dwa-trzy wieczory pracy zakończyły się totalną porażką.

Zacząłem od razu z grubej rury. Wpakowałem do AI kilkustronicowy dokument opisujący system jaki chciałem zbudować. Spisany może trochę na kolanie, zawierał jednak wszystkie podstawowe informacje o aktorach systemu, ich rolach, obiektach jakimi system ma zarzadzać, relacjach między nimi i tak dalej. Dodałem nawet przykładowe dokumenty, które system ma generować. Napisałem, że chcę abyśmy budowali w oparciu o Laravel.

Naiwnie myślałem, że AI w minutę wygeneruje może nie gotową aplikację ale chociaż coś co mogłoby stanowić jej zaczyn. Jak bardzo się myliłem.

Mimo kilkunastu prób nic co dostałem od AI nie nadawało się do pokazania klientowi. Większość wersji aplikacji nawet się poprawnie nie uruchamiała. Zmarnowałem trzy wieczory i miliony tokenów próbując różnych narzędzi i przeklinając swoją naiwność.

Cursor, Cline a potem Windsurf – wszystkie te narzędzia poległy nie tylko na zrozumieniu całościowo systemu, jaki dostały do zbudowania, ale na podstawach typu:

  • używanie komend w wierszu poleceń,
  • poprawna inicjalizacja repozytorium,
  • zorientowanie się w strukturze folderów,
  • dokonywanie prostych zmian w layoucie,
  • rozwalanie działających już rzeczy przez wprowadzanie nowych funkcji,
  • świadomość technologii w jakiej pracujemy – nagle w projekcie pojawiały się artefakty z zupełnie innego świata,

Szybko doszedłem do wniosku, że problemem nie są narzędzia a moja niewiedza jak z nich korzystać oraz jakie mają ograniczenia. Wiedziałem o ekosystemie Laravela tyle co nic. Popełniałem wszystkie możliwe błędy i nie potrafiłem korygować tego co robił mój sztucznie inteligentny pomocnik. Nie potrafiłem nawet fachowo nazwać tego czego od niego oczekuję.

Czyli – mimo posiadania dość rozległej wiedzy IT nie byłem w stanie nic sensownego napisać. Potrzebowałem przyspieszonego poszerzenia mojej wiedzy.

Część 2 – turboedukacja, czyli nie składamy broni!

Następne poranki i wieczory to wielogodzinne sesje nauki – czułem się jak Neo w filmie Matrix

Uznałem, że tak to się bawić nie będziemy i skupiłem się na zdobyciu wiedzy z podstaw Laravel. Pomogły mi trzy świetne materiały o Laravel, które bardzo polecam.

Po pierwsze – przeszedłem (robiąc jednocześnie wszystko razem z prowadzącym) genialnie dopasowany do mojego poziomu 3-godzinny kurs z podstaw Laravel, o którym już tu pisałem. W kilka godzin zrozumiałem:

  • jak skonfigurować sobie środowisko,
  • czym jest model, widok i kontroler,
  • czym są trasy,
  • jak budować strukturę bazy danych z użyciem migracji,
  • jak spinać to wszystko z HTML,
  • czym jest właściwie to całe Blade,
  • i wiele innych niuansów frameworka w którym zamierzałem pisać.

Ten kurs to naprawdę złoto. W jeden wieczór poznałem podstawy Laravel i miałem działającą aplikację, której kod w 100% rozumiałem! Wyglądała niespecjalnie imponująco, więc nie będę ranił Twoich oczu 🙂

Po drugie – głodny głębszej wiedzy dotarłem do mniej więcej 2/3 solidnego kursu Laravel from scratch, w którym budowałem typową tablicę ogłoszeń o pracę. Ten kurs nauczył mnie:

  • jak można używać fabryk i seederów do generowania sztucznych danych (co mega przyspiesza testowanie kolejnych wersji),
  • jak budować cały „zasób” (resorce) jednym poleceniem generującym wszystkie potrzebne pliki w projekcie,
  • jak używać komponentów, layoutów,
  • jak zadbać o walidację,
  • poznałem też podstawy Vite, Tailwind i Alpine.js,
  • i pewnie wiele innych, o których zapomniałem.

Aplikacja z tego kursu prezentowała się znacznie lepiej i kiedyś na pewno dokończę to szkolenie, jest naprawdę solidne oraz zawiera bardzo dobrą dokumentację w markdown, wraz z pełnym kodem źródłowym, co nie jest regułą na Udemy.

Po trzecie – w połowie drugiego (dość długiego) kursu trafiłem przypadkiem na świetny i zupełnie darmowy materiał. Półtoragodzinny kurs, o którym też już wspominałem, dał mi jeszcze lepsze zrozumienie kolejnych etapów budowania aplikacji, włączając w to:

  • model ról i uprawnień, jaki można zbudować z pomocą biblioteki spatie/laravel-permission,
  • używania uprawnień do „chronienia” tras lub ukrywania elementów interfejsu,
  • relacje między obiektami w systemie (np. każdy projekt ma wiele zadań, każde zadanie należy do jednego projektu itp)

W pewnym momencie poczułem, że mam już tej wiedzy aż za dużo i pora z niej skorzystać w praktyce.

Postanowiłem wrócić do pracy nad aplikacją dla klienta.

Część 3 – czy wiedza o programowaniu pomaga programować (ze wsparciem AI)?

Odpowiedź na to pytanie może Was zaskoczy, ale… zajebiście pomaga!

Aby jednak nie zdradzić wszystkiego od razu – po szczegóły zaproszę Was do kolejnego wpisu, który już wkrótce. Aby go nie przegapić – zapisz się na powiadomienia.

Nie przegap nowych wpisów

Zapisz się na powiadomienia. Otrzymasz 1 mail w miesiącu.

klikając "Zapisz mnie" potwierdzasz zapoznanie się z polityką prywatności tego bloga. Po zapisaniu się możesz zmienić obserwowane kategorie.

Nie przegap nowych wpisów

Zapisz się na powiadomienia. Otrzymasz 1 mail w miesiącu.

klikając "Zapisz mnie" potwierdzasz zapoznanie się z polityką prywatności tego bloga. Po zapisaniu się możesz zmienić obserwowane kategorie.

Podobne wpisy

  • Kurs Retool – aplikacje low code od podstaw

    Zapraszam na szkolenie wideo – Retool – aplikacje low code od podstaw. W trakcie trwającego 5 godzin kursu wspólnie stworzymy aplikację do zarządzania firmowym sprzętem i pracownikami. Poznasz wszystkie typowe elementy tego rodzaju aplikacji – dodawanie, edycja i usuwanie danych, wyświetlanie ich w tabelach i listach, obsługę przycisków, załączników i wiele więcej.

    Możesz zastosować wiedzę ze szkolenia budując własne rozwiązanie, gdzie zmienisz rodzaj przetwarzanych danych. Zamiast pracowników i sprzętu możesz potrzebować umów i klientów albo zleceń i faktur i tak dalej.

    Kurs Retool to sama praktyka, czyli budowa realnie działającej aplikacji

    Występują w niej elementy jakie znasz z dowolnej aplikacji, czyli:

    • formularze do wprowadzania i edycji danych,
    • listy prezentujące jakieś informacje,
    • tabele, które można filtrować, sortować, a nawet edytować w nich prezentowane dane,
    • integracje z usługami zewnętrznymi (wysyłanie i odbieranie danych),
    • przyciski wywołujące operacje (np. „Usuń pracownika”) oraz elementy interfejsu reagujące na zdarzenia (np. odświeżenie listy pracowników po usunięciu),
    • relacje między danymi (np. pracownik posiada jakieś firmowe sprzęty) i ich prezentacja (wybierasz pracownika i widzisz listę jego sprzętów, wybierasz sprzęt i widzisz listę załączników, np. zdjęć),

    Retool pozwoli Ci stworzyć dowolny system – do zarządzania umowami, zadaniami, klientami czy czymkolwiek zechcesz. Przykłady takich aplikacji masz w oficjalnej galerii szablonów. Poniżej znajdziesz też kilka ekranów wprost ze szkolenia:

    Czytaj Więcej „Kurs Retool – aplikacje low code od podstaw”
  • Kurs N8N – jak automatyzować procesy i integrować systemy

    Zapraszam na mój kurs n8n od podstaw – automatyzacja w praktyce. To popularne i lubiane wprowadzenie w świat automatyzacji – średnia z 37 ocen to 4.8/5 (dane z 2026-03-10)

    Image

    Do kogo kierowane jest to szkolenie?

    Kurs „N8N od podstaw – automatyzacja w praktyce” kierowany jest przede wszystkim do osób początkujących, które chcą wykorzystać możliwości łatwej automatyzacji procesów i integracji czy wymiany danych między aplikacjami i systemami. Jest to możliwe dzięki tak zwanym przepływom, które raz skonstruowane, mogą zakulisowo wykonywać za Ciebie pracę.

    Wdrażając wiedzę o N8N z kursu możesz zautomatyzować pewne żmudne obowiązki, zmniejszyć liczbę błędów i generalnie znacznie ułatwić sobie życie w codziennej pracy.

    Czytaj Więcej „Kurs N8N – jak automatyzować procesy i integrować systemy”
  • Kurs Airtable od podstaw – zarządzanie danymi i automatyzacja

    Jeśli chcesz nauczyć się Airtable i poznać tę platformę od absolutnych podstaw – zapraszam Cię do zakupu mojego kursu, który znajdziesz na platformie strefakursow.pl. Był to mój pierwszy kurs dla tego portalu i został nieźle przyjęty – średnia z 10 ocen to 4.6 (dane na 2026-03-10)

    Image

    Jeśli zastanawiasz się do czego możesz użyć Airtable to przeczytaj wpis w tym temacie, w którym prezentuję moje własne bazy:

    • Rejestr wszystkich własności cyfrowych – czyli nabytych licencji, kursów, usług, subskrypcji, kluczy licencyjnych itd,
    • Rejestr klientów, umów, świadczonych usług – swego rodzaju CRM,
    • Rejestr serwerów, hostingów, domen – wraz z przypominkami o konieczności odnowienia,
    • Rejestr książek, filmów, gier – z podziałem na rzeczy do sprawdzenia i sprawdzone/ocenione/wrzucone na bloga,
    • Rejestr materiałów wideo do nagrania/edycji/poprawek (np. do kursu o Airtable :)),
    • Baza danych komputerów, urządzeń, zasobów, kont, subskrypcji, dla firmy mojego znajomego,
    • i wiele wiele innych pomocniczych baz na różne okazje.
    Czytaj Więcej „Kurs Airtable od podstaw – zarządzanie danymi i automatyzacja”
  • Grupowa top-lista koncertów i odkrywanie zespołów w aplikacji FestPlanner

    W skrócie

    To apka, w której możesz przeglądać lineup, odsłuchiwać fragmenty piosenek i głosować na kapele, których nie chcesz przegapić na festiwalu. Zaprosisz też do głosowania osoby, z którymi jedziesz. Na koniec sprawdzisz grupowy ranking i zobaczysz kto na jakie występy głosował.

    Na ten moment apka jest w wersji beta i ma „wgrane” jedno wydarzenie – Rock For People 2026.

    Dlaczego Rock For People?

    Bo to świetny festiwal niedaleko mnie, na który mamy bilety :). Ale spokojnie, niedługo dodam kolejne (masz jakieś propozycje – pisz do mnie).

    Po co mi taka apka?

    Wyjazd na festiwal muzyczny to u nas niemal święto. Obserwujemy najnowsze doniesienia, a od momentu ogłoszenia listy wykonawców przesłuchujemy wszystkie nieznane (nam) kapele i notujemy które występy koniecznie musimy zobaczyć.

    I ten proces (przesłuchiwania i oceniania najlepszych kapel) postanowiłem zmienić w apkę. Stworzyć coś, co ułatwi nam:

    • odkrywanie nowych wykonawców (wbudowany player Spotify, bio)
    • zbudowania rankingu koncertów, od tych, które wszyscy chcą zobaczyć, do takich, które możemy odpuścić (każda osoba głosuje indywidualnie na występy a na koniec wszyscy widzą ranking i głosy)

    W tydzień wytężonej pracy powstał FestPlanner.

    Jak skorzystać (z wersji beta)?

    • wejdź na https://fest.elimu.pl
    • opcjonalnie zainstaluj apkę na telefonie (opcja dodaj do ekranu domowego czy jakoś tak)
    • zaloguj się swoim mailem
    • wejdź na wydarzenie Rock For People 2026 (póki co jest tylko to jedno, ale jeśli chcecie więcej to dodam – piszcie na kontakt)
    • utwórz swój Wyjazd
    • zaproś znajomych (dostaną maila z instrukcjami)
    • głosujcie 🙂
    • zgłaszajcie błędy i pomysły (apka jest w fazie beta)

    Jak ją budowałem?

    W zasadzie to Antigravity + Gemini 3 Pro (High) wykonał 95% roboty, dla mnie zostało konfigurowanie środowiska i wymyślanie funkcji plus kilka zadań pobocznych. Użyte technologie/usługi (wszystko na darmowych planach)

    • React+Tailwind+Vite+…
    • Supabase – tu leżą dane i użytkownicy
    • Neltify + Git – tędy się wdrażają nowe wersje
    • Resend – tędy wysyłane są maile
    • RapidAPI – a konkretnie to do Spotify
    • trochę scrapowania i generowania json przez Gemini 3 Pro (świetny model!)

    Z ciekawych opcji (niektóre są dostępne tylko dla admina) to:

    • zarzadzanie wydarzeniami, scenami, oznaczanie headlinerów, wskazywanie dat, godzin
    • Masowy import artystów i występów
    • tworzenie wyjazdów i zapraszanie do nich
    • głosowanie na występy
    • ranking grupowy (możliwy do wyłączenia na czas głosowania)
    • pobieranie danych o artystach (zdjęcia, bio) przez API Spotify
    • 3 wersje językowe
    • PWA (apkę można wyciągnąc na pulpit jako ikonkę)
    • Wbudowany player Spotify

    Co w niej dodać?

    Czekam na Twoje pomysły w dziale napisz do mnie lub na moich profilach społecznościowych. Zgłoś mi:

    • nowe funkcje jakich potrzebujesz
    • nowe festiwale i wydarzenia
    • pomysły na monetyzację
    • propozycje korupcyjne i współprace

    Chcesz nauczyć się budować takie aplikacje?

    Napisz do mnie – jeśli zbierze się grupa chętnych chętnie zorganizuję jakiś webinar i podzielę się wiedzą.

    Bezpiecznych koncertów!

    Na koniec kilka ekranów z apki:

  • Od zera do (pato)developera – #buildinpublic

    Witajcie w 2025 roku! Poniższy wpis jest z pierwszym z serii, w której chciałbym pokazać losy budowy mojego najnowszego projektu – aplikacji zaspokajającej realną potrzebę klienta i dającą wymierną biznesową wartość. Będę go (w miarę możliwości) opisywał z wielu różnych perspektyw, tak aby pokazać jak dziś wygląda mój proces budowy rozwiązań oraz jakich narzędzi i umiejętności używam w swojej codziennej pracy.

    Wpis publikuję w ramach serii pisanej w duchu #buildinpublic, w której ukazały się do tej pory następujące wpisy:

    Skąd ten tytuł?

    Bo chodzi o zlecenie, w którym absolutnie wszystko chcę zrobić samodzielnie, włącznie z programowaniem. Będzie to mój pierwszy tak zaawansowany projekt, do którego nie biorę developera i sam nim będę (albo umrę próbując).

    Czytaj Więcej „Od zera do (pato)developera – #buildinpublic”
  • Pułapki bezkrytycznego wdrażania rozwiązań

    Klient ma zawsze rację, prawda? A może wykonawca usług IT powinien kwestionować pomysły zamawiającego? Dla jego własnego dobra? Tak, ta dwuznaczność w poprzednim zdaniu była zamierzona.

    Problem pierwszy „narzędzia rozwiązują problemy”

    Typowy scenariusz wygląda następująco: klient jest pewny, że wdrożenie odpowiedniego narzędzia rozwiąże jakieś jego (widoczne gołym okiem) problemy. Zakłada, że zainwestowanie 5, 50 lub 500k w jakiś system, jego wdrożenie i konfigurację przyniesie mu mniej pracy i kłopotów a więcej czasu i pieniędzy.

    Czytaj Więcej „Pułapki bezkrytycznego wdrażania rozwiązań”

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *