"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膰."
馃悕Kamil Naja
Blog na temat programowania. Wszystkie materia艂y do nauki znajdziesz pod tagiem "materia艂y". Autor - Kamil Naja
poniedzia艂ek, 20 pa藕dziernika 2025
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.
poniedzia艂ek, 22 wrze艣nia 2025
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.
niedziela, 31 sierpnia 2025
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
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膮.
niedziela, 1 czerwca 2025
Arrazzo Specification
Ostatnio wpad艂em na https://spec.openapis.org/arazzo/latest.html. Jest to powstaj膮cy projekt, maj膮cy na celu stworzenie specyfikacji do jeszcze lepszego opisywania endpoint贸w. Opr贸cz swaggera, oferuje ona bardziej szczeg贸艂owy opis, na przyk艂ad opisuj膮cy kolejno艣膰 pobierania danych. Ciekawa inicjatywa, czekam kiedy pojawi si臋 w szerszym u偶yciu :)
sobota, 24 maja 2025
Przeuczenie (nadmierne dopasowanie) w rzeczywisto艣ci
Przeuczenie to negatywna sytuacja, kiedy zbytnio dopasowujemy si臋 do czego艣. Niesie to za sob膮 konsekwencje. Kilka przyk艂ad贸w:
- Osoba, kt贸ra nigdy nie opu艣ci艂a rodzinnego miasta i stara si臋 szpanowa膰 tuningowanym samochodem
- Pracownik robi膮cy w tej samej firmie przez 20 lat w ten sam spos贸b, kt贸ry zostaje zwolniony i ma pretensje do wszystkich o to, 偶e 艣wiat poszed艂 do przodu
- Hejter, kt贸ry siedzi na politycznym forum / Linkedinie i robi sobie hobby z komentowania rzeczywisto艣ci w coraz bardziej z艂o艣liwy spos贸b. W mniej bolesnej formie, s膮 to osoby kt贸re 偶yj膮 w jakiej艣 internetowej spo艂eczno艣ci, kt贸ra nie ma realnego znaczenia.
- Rodzina, kt贸ra zaczyna m贸wi膰 j臋zykiem coraz mniej zrozumia艂ym dla wszystkich wok贸艂
niedziela, 11 maja 2025
Sposoby jak realnie poprawi膰 jako艣膰 kodu
U偶ywaj ESLint
ESLint to narz臋dzie do analizy statycznej kodu JavaScript, kt贸re pomaga wykrywa膰 i naprawia膰 problemy w kodzie. Dzi臋ki niemu mo偶na zautomatyzowa膰 proces sprawdzania zgodno艣ci kodu z okre艣lonymi standardami, co znacznie poprawia jego jako艣膰. Konfiguruj膮c ESLint, warto dostosowa膰 regu艂y do specyficznych potrzeb projektu, aby maksymalnie wykorzysta膰 jego mo偶liwo艣ci.
poniedzia艂ek, 5 maja 2025
Pracuj jak tatua偶ysta albo chirurg, czyli znowu o skupieniu
Je艣li masz trudno艣ci ze skupieniem si臋 na 25 minut, pami臋taj, 偶e tatuator podczas sesji skupia si臋 na 6 do 10 godzin :)
Podobnie chirurg operuj膮cy pacjenta. Nie chc臋 nawet my艣le膰, jak bardzo musi si臋 skupia膰 wspinacz zdobywaj膮cy jak膮艣 trudn膮 g贸r臋.
Ze swojego do艣wiadczenia przytocz臋 nieco mniej spektakularne przyk艂ady. Kiedy艣 napisa艂em jednego dnia jakie艣 30 tysi臋cy znak贸w, pracuj膮c jak szalony z technik膮 Pomodoro i s艂uchaj膮c Shakiry, kt贸ra lecia艂a w galerii w kt贸rej wtedy urz臋dowa艂em. Raz uda艂o mi si臋 te偶 zrobi膰 jednego dnia 22 leki recepturowe.
Co mo偶na zrobi膰 by si臋 lepiej skupi膰?
M贸j autorski spos贸b:
- Odstaw zb臋dn膮 elektronik臋, by nie widzie膰 powiadomie艅. Ustal sobie, o kt贸rej godzinie sprawdzisz telefon.
- W艂膮cz sobie jak膮艣 playlist臋 z muzyk膮 do skupienia. Mo偶e to by膰 na przyk艂ad muzyka z Sim City, jakie艣 low fi albo https://www.flowtunes.app/. Je艣li zamulasz, wybierz co艣 bardziej energetycznego. Staraj si臋 nie s艂ucha膰 niczego mocno anga偶uj膮cego. Przyk艂adem jest dla mnie s艂uchanie nowej muzyki - nie mog臋 si臋 cz臋sto powstrzyma膰, by nie sprawdzi膰, co aktualnie leci i poczyta膰 co艣 wi臋cej na temat autora. Czasem jednak s艂ucham Radio Swiss Classic.
- Zadbaj o dobre samopoczucie. Zjedz co艣 lekkiego, naszykuj swoje ulubione picie. Zawsze mam przy sobie wod臋 w butelce wielorazowego u偶ytku i kaw臋 / herbat臋.
- Zapisuj sobie zadania w formie list todo i aktywnie dodawaj do nich nowe rzeczy.
- Side note - wydaje mi si臋 偶e chirurg czy tatua偶ysta tak nie pracuje, anyway
- Pracuj :)
- Je艣li robisz np. co艣 dla klienta albo dla innej osoby z zespo艂u (ach ta praca w korpo), to pytaj o feedback. Niepok贸j cz臋sto powoduje prokrastynacj臋.
- Z czasem nawyk pracy wejdzie Ci w krew i b臋dziesz czu艂 si臋 niekomfortowo, gdy nie b臋dziesz tego robi艂.
Inspiracje
