czwartek, 29 stycznia 2026

🎻⚓Kotwiczenie cząstek wiedzy⚓🎻

Załóżmy, że słuchasz sobie radia z muzyką poważną. Może być to https://www.radioswissclassic.ch/en

Radio ma w repertuarze ponad 7500 utworów, po każdym utworze można usłyszeć, kto był wykonawcą, kompozytorem i jaki utwór grano. Utwory też można sobie podejrzeć. Alternatywą może być słuchanie bardzo długiej playlisty muzyki na Spotify. Po jakim czasie będziesz w stanie regularnie wiedzieć, kto jest kompozytorem i jaki grano utwór na podstawie losowych nagrań?

Prawdopodobnie nigdy, nawet jakbyś słuchał tego radia 24/7. To nie popularna stacja radiowa, w której hity katowane są przez cały dzień i zaraz masz ich dość. 

Jest jednak tak, że niektóre utwory udaje nam się zgadnąć, pytanie, dlaczego. 

😵‍💫Dezinformacja😵‍💫 na YT i nie tylko

 Każdy post lub film zaczynający się od:

  • Przestań używać x
  • Rzeczy które chciałbym wiedzieć zanim zacząłem x
  • Nie rób x póki nie poznasz y
  • Zacznij robić x by osiągać efekty tak szybko, że będzie się to wydawało nielegalne 
  • Musisz zacząć używać x w bieżącym roku!!! 

jest jedynie próbą złapania twojej uwagi. Ciągłe oglądanie takich materiałów sprawia, że odddajesz kontrolę w ręce innych osób, nie używasz swojego doświadczenia, tylko łykasz jak pelikan.

Osoby dociekliwe, powinny od razu poblokować kanały proponujące tego typu treści.  

 

wtorek, 27 stycznia 2026

🚀Systemy typu Fire & Forget 🚀

Moim ulubionym rodzajem systemów są systemy, w których podejmujesz akcję by załatwić ważną sprawę, i potem nigdy nie dostajesz odpowiedzi. Albo dostajesz ją po nieakceptowalnie długim czasie.

Potrzebujesz recepty - możesz pójść do lekarza, albo wypełnić wniosek o e-receptę. Niestety, wniosek o e-receptę nie ma żadnego terminu ani statusu, po prostu go wysyłasz i czekasz w nieskończoność. Na koniec i tak idziesz do lekarza.

niedziela, 4 stycznia 2026

Mendix - wstęp

Mendix to platforma low-code znajdująca się obecnie w posiadaniu firmy Siemens. 

O co chodzi z tym całym low-code (LC) i i czemu w 2026 roku nie lepiej jest zvibekodować backendu i frontendu aplikacji?

W większości projektów robimy te same rzeczy. Prawdopodobnie będziemy potrzebowali takich elementów aplikacji webowej, jak:

  • Łączenie się do zewnętrznych API
  • Tworzenia bazy danych i wystawiania jej w formie API (przydałby się też jakiś ORM)
  • Tworzenia logowania  
  • Zaawansowanych opcji security, między innymi RBAC
  • Tworzenia widoków dla encji i list, oraz operacji CRUD
  • Tworzenia nawigacji
  • Tłumaczenia

Dodatkowo, musimy w miarę dynamicznie reagować na zmiany modelu bazy, poprawiając wtedy jednocześnie backend i frontend.

sobota, 3 stycznia 2026

Mój obecny setup do programowania

Dzisiaj trochę luźniejszy post na tematy sprzętowe. Kilka lat temu zaczynałem programować z jednym laptopem 14 cali, jednak szybko przeniosłem się na nieco bardziej zaawansowany setup. Miałem też dużo wtop, głównie dotyczących monitorów. Obecnego ustawienia nie zmieniam od około 2 lat bo po prostu daje radę.

Komputer

  • Pracowy Dell Latitude 32 gb ram. 
  • Macbook Air M1 16 gb ram - do nauki jest ok, do większych projektów - w zasadzie dalej daje radę lepiej niż Dell. Bardzo polecam
  • MiniPC BlackView MP100 32 gb ram z Ryzen 5852 - malutki komputerek mający wszystko co mi potrzeba. Jest szybki, trochę hałasuje ale i tak zwykle słucham jakiegoś białego szumu. 

Kiedyś używałem głównie poleasingowych laptopów Lenovo i mają one jeden problem - na starcie są już dość stare i służą krócej niż nowy laptop klasy biznes ze sklepu. Są jednak o wiele tańsze i można łatwo wyposażyć je w dodatkowy ram czy tani dock.

niedziela, 28 grudnia 2025

Programistyczne podsumowanie roku 2025

Tradycyjny post co tam się robiło przed tym komputerem...

Języki obce

Wbiłem na Duolingo około 1040 dni nauki bez przerwy i stwierdziłem, że zmiany na platformie idą tylko w złym kierunku. Aplikacja uniemożliwia efektywną naukę bez premium, a dodatkowo, na wersji mobilnej wprowadzają jakąś energię która jeszcze bardziej to utrudni. Zacząłem uczyć się niemieckiego z dużo lepszej aplikacji https://readlang.com, czytając sobie po trochę tekstu codziennie. Przypomniało mi się zresztą, że angielski poprawiłem w znacznym stopniu właśnie czytając książki na Kindle i sprawdzając nieznane wyrazy.

poniedziałek, 15 grudnia 2025

Kalendarium ostatnich katastrof internetowych

  • 05 grudnia 2025 - Znowu nie działa Cloudflare. Przyczyna - błąd w kodzie
  • 03 grudnia - Znaleziono krytyczne podatności w kodzie Reacta i Next. 11 grudnia opublikowano inforacje o kolejnych
  • 18 listopada 2025 - Nie działa Cloudflare . Przyczyna - błąd w kodzie
  • 20 października 2025 - Przestaje działać AWS
  • 19 lipca 2024 - awaria Microsoftu spowodowana przez CrowdStrike
Dziwnym trafem liczba wielkich katastrof internetowych zwiększyła się, od czasów rozpowszechnienia vibecodingu. Czyżby czekał nas scenariusz jak z filmu Idiokracja?

piątek, 28 listopada 2025

Citizen Developer

Proces wytwarzania oprogramowania jest skomplikowany. Dodanie jednego pola na widoku wiąże się, z koniecznością zmiany kilku warstw w aplikacji i wymaga pracy co najmniej jednego dewelopera. To jest jeden z najprostszych przykładów.

Z tego powodu, tworzy się duża przestrzeń między wymaganiami biznesu a szybkością implementacji zmian.

Z drugiej strony, w każdej firmie jest dużo osób mających świetne pomysły dotyczących oprogramowania. Taką osobą może być np. pracownik sklepu zielarskiego, który tworzy na kartce system do zamówień (to byłem kiedyś ja), albo użytkownik automatyzujący sobie jakieś rzeczy. Wielu użytkowników biznesowych wie, jak oprogramowanie ma działać, ale nie chce spędzać czasu na naukę języków programowania.  Osoby podejmujące się zadań związanych z oprogramowaniem, nie będące programistami, można sklasyfikować wspólną rolą - citizen deweloper. 

Osoby takie nie muszą podlegać pod dział IT, co może mieć ogromną zaletę w postaci możliwości bardzo szybkiego wytwarzania własnego oprogramowania, albo zmian obecnego.

Problemem może być natomiast tworzenie aplikacji spójnych, bezpiecznych i łatwych w rozwoju. Program napisany w Excell nie będzie skalować się dla całej organizacji. Co innego aplikacje LCNC (Low Code No Code).

Narzędzia Low Code i No Code umożliwiają takim osobom, bardzo szybkie tworzenie software z użyciem interface wizualnego. Przykładem może być Mendix, w którym utworzenie aplikacji łączącej się z bazą danych, zawierającej kilka endpointów, to kwestia minut, a nie dni.  

W przykładzie z początku tego wpisu, dodanie jednego pola w Mendix, to po prostu dodanie pola w encji i tyle. Nie trzeba robić zgłoszenia w Jirze, nie trzeba angażować kilku osób z działu IT. Często mam wrażenie, że do roku 2024 tworzenie oprogramowania w korporacjach zostało maksymalnie skomplikowane. CI/CD, Code Review, testy na wielu poziomach, to wszystko pomaga tworzyć bezpieczny software, ale znacznie opóźnia czas wdrożenia zmian.  

niedziela, 23 listopada 2025

Dwa sposoby nauki

Gdy chcemy poznać jakieś zagadnienie, możemy zrobić to na kilka sposobów:
  • Uczyć się o nim pobieżnie i wyrywkowo, gdy już naprawdę nie możemy zrobić postępu - tak działa większość ludzi
  • Przeczytać dokładnie dokumentację albo książkę i na tej podstawie mieć pojęcie na temat powierzchni tego, co mamy wiedzieć. Z czasem poznamy całe zagadnienie, ale możemy nie wytrwać do końca książki, bo się nam to znudzi. Na wykresie zależy nam, by zarysować całe pole.



  • Albo zacząć intensywnie uczyć się losowych rzeczy na temat tego zagadnienia. 

    Poznajemy wtedy dużo chunków wiedzy, które początkowo nie łączą się ze sobą, ale z czasem zauważamy ich połączenia. Z biegiem czasu wygląda to tak

    Różne odnogi danego tematu łączą się z innymi. Czasem mamy też momenty Aha, kiedy rozumiemy dlaczego coś kiedyś działało tak, a nie inaczej, albo znamy odpowiedzi na pytania, których się jeszcze nie uczyliśmy. 
Ten trzeci sposób może polegać na:
  • Uczeniu się pytań z aplikacją Anki
  • Regularnym czytaniu na jakiś temat w niesformalizowanej formie, na przykład zapisując się na newsletter albo oglądając o nim kanał z krótkimi materiałami
  • W przypadku egzaminów, przerabianiu arkuszy z pytaniami z poprzednich lat
Jego minusem jest to, że może utrudniać naukę zorganizowanych zagadnień. Dobrym przykładem jest Duolingo i nauka odmian słów. Ucząc się z Duolingo najpierw zgadujemy jak odmienić jakieś słowo, a potem zapamiętujemy tą odmianę w kontekście. Jeśli uczylibyśmy się po kolei, trafilibyśmy na tabelę odmiany:


niedziela, 16 listopada 2025

Na co Ci to potrzebne...

Kiedy chodziłem do szkoły policealnej, dużą część nauki stanowiły rzeczy związane z ziołami. Każdy mówił wtedy, że po co Ci to potrzebne, lepiej zrobić ściągę i nie uczyć się o tych ziołach. Mnie ten temat wciągnął, przeczytałem nawet kilka książek. 

2 lata później znalazłem pracę w sklepie zielarskim i założyłem bloga na temat ziół, który potem sprzedałem za równowartość kilku pensji.

 --

Potem wymyśliłem że będę pisał teksty. Ludzie mówili, po co Ci to pisanie, na tym nie da się zarobić. W swojej firmie copywriterskiej zarobiłem w 2 miesiącu prowadzenia 2 razy więcej niż na etacie. Gdy firma się ustabilizowała, zarabiałem około 4 razy więcej. 

 -- 

Poznałem paru programistów, wymyśliłem sobie, że zamknę tę firmę i będę koderem. Ludzie mówili, po co Ci to potrzebne, dla kogo będziesz robił te strony. Po trzech latach okazało się, że osiągnąłem najwyższe możliwe zarobki w mojej dziedzinie.

--

Potem wymyśliłem sobie że zacznę uczyć się chmury i zrobię certyfikaty z Azure. Prawie każdy znajomy programista powiedział - po co Ci ta chmura...

sobota, 15 listopada 2025

🎯Update do update AZ900🎯

Dzisiaj zdałem podstawowy egzamin z Azure czyli AZ900. Chciałem trochę przybliżyć, jak to wszystko wygląda z perspektywy przygotowania i samego egzaminu.

Tak jak pisałem w poprzednim wpisie, uczyłem się głównie z materiałów dostępnych na YT, sylabusa i materiałów Microsoftu. Podczas nauki wyszło, że najgorzej rozumiem kwestie bezpieczeństwa chmury i sieci, dlatego pod koniec uczyłem się wyłącznie tego. Fajnie by było napisać że egzamin jest bardzo prosty i można go zrobić z marszu, jednak moim zdaniem, jest dość wymagający. 

środa, 12 listopada 2025

Update - nauka do certyfikatu

Certyfikat AZ900 z Azure chodził za mną już jakiś czas. Ostatnio pociągnąłem za spust i zapisałem. Wygląda to tak, że najpierw wpłaca się opłatę (w Polsce 59 dolarów + podatek), i następnie egzamin jest za kilka dni. 

Przygotowania wyglądają tak:

  • Nauka z YouTube (John Savill, Adam Marczak)
  • Kursy utworzone za pomocą Gemini
  • Powtórki z Anki

Fingers crossed 

poniedziałek, 20 października 2025

Cytaty wielkich ludzi - edycja Allegro

"Sama byłam świadkiem, jak kiedyś pracownik pracując akurat zdalnie udostępnił wyszukiwarkę gdzie było otwarte okno z muzyką na Youtube. Tak dobrze czytacie, było to w godzinach pracy! A o skutkach spadku wydajności w takich warunkach chyba nie muszę mówić." 

poniedziałek, 6 października 2025

Doom Engine

Wyobraź sobie, że dostajesz w pracy zadanie skonstruowania czegoś zupełnie nowego. Czegoś, co jeszcze nie do końca wiadomo jak ma działać, ale musi być zrobione. Inżynier z mojej miejscowości Mieczysław Bekker pracował na przykład w latach 60tych nad łazikiem księżycowym dla Nasa. Co za zadanie.

sobota, 27 września 2025

Json Driven UI / Server driven UI

Co by się stało, gdyby kod frontendowy aplikacji można było by generować lub pisać w formie JSON?Przykładowo, każda podstrona aplikacji mogła by być pobierana jako osobny plik konfiguracyjny, który zostanie załadowany do kompilatora i z niego, odtworzone zostaną sekcje oraz logika. 

Obecnie widoki robimy tak, że pobieramy dane z serwera i czasem mapujemy je na widoki niemal 1:1, a czasem, po prostu wstawiamy je w już istniejące komponenty.  

Przykładem może być komponent tabelki. 

niedziela, 21 września 2025

Gromadzenie wiedzy w Google Keep

Najważniejszym ograniczeniem podczas nauki jest według mnie brak jasnej wizji. Ucząc się po trochę różnych tematów jako junior, prawdopodobnie nie nauczymy się żadnego z nich na tyle dobrze, by móc zrobić w nim coś konkretnego. 

Przykładowo, uczymy się na raz Pythona, PHP i JS, wszystko nam się miesza i nie wiemy, jakie akcje podjąć jako następne. Do tego dochodzą coraz to nowe tematy - może uczyć się sieci, a może ai.

Z czasem zmienia się to i gromadzimy kapitał wiedzy, który pozwala na w miarę łatwe zrobienie w technologiach X, Y i Z wszystkiego co wymyślimy sami, albo klient. Pozostaje jednak problem nauki nowych rzeczy. 

Ostatnio testuję nowy sposób na naukę. Zadeklarowałem sobie, że w Google Keep będę trzymał jedynie zadania, które nie są bazą wiedzy. Bazę wiedzy buduję w Obsidianie, chociaż zastanawiam się, czy nie lepiej robić to w Anki albo pytać na bieżąco LLM :)

 

 Następnie robię sobie karteczki dotyczące technologii, które chcę powtarzać lub się ich uczyć od zera. To jest mój punkt odniesienia. Zapisuję sobie w nich pytania, które nachodzą mnie podczas nauki lub w czasie wolnym ;) Jeśli wpada mi do głowy nowy temat, wrzucam kolejną zgrubną kartkę do Google keep. Śledzę w nim też progres nauki z materiałami. Dzięki temu, mogę łatwiej śledzić postęp i wiem, czego jeszcze chciałbym się nauczyć i jakie problemy rozwiązać.

Daj znać w komentarzu, co o tym sądzisz. 

sobota, 23 sierpnia 2025

Jak szybko znacząco poprawić swoją wiedzę w danym temacie?

Kilka lat temu dostałem nowy projekt w firmie. Sytuacja wyglądała tak, że frontend w Angularze robiło3 innych deweloperów, którzy mieli mniejsze doświadczenie. Projekt zawierał kilka technologii których jeszcze nie znałem, na przykład Spectatora, Ngrx i bardzo wymagające pokrycie testami.

Przed projektem poświęciłem kilka wieczorów na ogarnięcie tych strasznych technologii - no i co się okazało? Ano to, że...

  • Spectator to po prostu ułatwienie testowania w Jest
  • Ngrx to przeniesienie idei Reduxa którą znałem z Reacta, do Angulara
  • Pokrycie testami można łatwo sprawdzać w Intellij Idea (który to intensywnie wtedy używałem)

Aby móc sobie radzić produkcyjnie (i produktywnie) z tymi technologiami, nie trzeba było lat doświadczenia. Wystarczyło przeczytać dokumentację i ogarnąć jakiś projekt, który ich używał. Co więcej, wymagana była chęć nauki, a o to teraz najtrudniej.  

poniedziałek, 28 lipca 2025

Kompas, czyli rzeczy których nie potrzebujemy

Na początku filmu Lawrence z Arabii jest scena, kiedy główny bohater zostaje pozbawiony przewodnika. Gdy inny Beduin proponuje mu pomoc w drodze przez pustynię, Lawrence odmawia. Twierdzi, że poradzi sobie jedynie ze swoim kompasem.

Ta scena uderzyła mnie, ponieważ zauważyłem, że często zbyt bardzo polegamy na zewnętrznych pomocach, zamiast na naszym instynkcie. Arabowie podróżujący przez pustynię nie potrzebowali kompasu, ponieważ świetnie ją znali. Jeśli znasz się na tym co robisz, nie potrzebujesz zewnętrznych pomocy.

poniedziałek, 14 lipca 2025

Antynauka

Wiedzy w Internecie mamy dzisiaj więcej niż kiedykolwiek, a ciągle przybywa. Niestety, ale z jej jakością jest coraz gorzej ;) Antynauka to marnowanie czasu, które daje wrażenie że robimy coś przydatnego dla rozwoju umiejętności. Przykłady:

  • 90% filmów na YouTubie / 100% shortsów
  • Szukanie skrótów / najlepszych materiałów na jakiś temat 
  • Robienie tych samych, powtarzalnych rzeczy bez analizy / refleksji
  • Robienie rzeczy bez zrozumienia podstaw 
  • Czytanie newsów na jakiś temat 
Wydaje mi się, że obecnie najwięcej antynauki jest w dziedzinie biznesu. Każdy chce się dzielić:
  • 3 cudownymi sposobami na...
  • Informacjami co by robił, gdyby mógł zacząć od nowa 
  • Sposobami aby zarabiać pieniądze / uczyć się tak szybko, że wydaje się to nielegalne
  • Sposobami na zarobki od zera do miliona w kilka tygodni
  • Nawykami, które całkowicie zmieniły jego życie i biznes
  • Artykułami, bez których przeczytania nie zaczynaj rzeczy xy
  • Od lat powtarzanymi bzdurami, które już dawno zostały zweryfikowane przez specjalistów praktyków i są uznawane za nieprawdziwe.
Tymczasem rzetelna wiedza to nie dopaminowe informacje, tylko długie, często nudne nagrania, książki i artykuły blogowe. Aby nauczyć się czegoś, testujmy empirycznie, eksperymentujmy.

czwartek, 3 lipca 2025

Vscode Copilot - wsparcie dla plików z promptami

Customize AI responses in VS Code

Copilot dodaje wsparcie dla plików z promptami, dzięki czemu będzie łatwiej dodawać reużywalne instrukcje dla różnych zadań. 

wtorek, 17 czerwca 2025

Problem wielorękiego jednorękiego bandyty

 

Ciekawe zagadnienie, które pozwala lepiej zrozumieć reinforcement learning. Wyobraźmy sobie, że jesteśmy w kasynie i mamy przed sobą kilka automatów do gry. Pociągamy za kolejne dźwignie automatu i z czasem odkrywamy, że niektóre z nich dają lepszą wypłatę niż inne. Celem jest uzyskanie jak najwyższej nagrody.

Problem polega na tym, czy mamy skupić się na eksploracji, czy na eksploatacji. Eksploracja to odkrywanie nowych dźwigni, natomiast eksploatacja, pozostanie przy tych, które dają dobre wyniki teraz. 

Eksploracja może prowadzić do tymczasowego zmniejszenia wygranych, a eksploatacja, do zmniejszenia szans na nowe wygrane. 

Problem można zastosować w wielu dziedzinach życia. Przykładowo, możemy uczyć się nowego języka programowania, ale czy nie lepiej jest pozostać przy tym, który już dobrze znamy? Lekarz może zlecić dobrze znaną terapię, albo wysłać pacjenta na mniej znaną i bardziej ryzykowną.