<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Software Development on Spaghetti Code 🍝</title>
    <link>https://spaghetti-code.net/pl/tags/software-development/</link>
    <description>Recent content in Software Development on Spaghetti Code 🍝</description>
    <image>
      <title>Spaghetti Code 🍝</title>
      <url>https://spaghetti-code.net/images/og-default.png</url>
      <link>https://spaghetti-code.net/images/og-default.png</link>
    </image>
    <generator>Hugo -- 0.160.0</generator>
    <language>pl</language>
    <lastBuildDate>Wed, 04 Nov 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://spaghetti-code.net/pl/tags/software-development/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Co To Jest Tabela Haszująca? Haszowanie I Kolizje Wyjaśnione</title>
      <link>https://spaghetti-code.net/pl/posts/fundamentals/co-to-jest-tabela-haszujaca/</link>
      <pubDate>Wed, 04 Nov 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/fundamentals/co-to-jest-tabela-haszujaca/</guid>
      <description>Tabela haszująca zmienia klucz w indeks tablicy w czasie stałym, aż dwa klucze się zderzą. Jak działają haszowanie, chaining, open addressing i load factor.</description>
    </item>
    <item>
      <title>Ownership i Borrowing w Rust: Jak To Działa</title>
      <link>https://spaghetti-code.net/pl/posts/rust/ownership-i-borrowing-w-rust/</link>
      <pubDate>Tue, 03 Nov 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/rust/ownership-i-borrowing-w-rust/</guid>
      <description>Zasady ownership i borrowing w Rust wyłapują use-after-free i data race już na etapie kompilacji. Jak działają move, trait Copy, referencje i lifetime.</description>
    </item>
    <item>
      <title>Mock, Stub, Fake i Spy: Test Doubles Wyjaśnione</title>
      <link>https://spaghetti-code.net/pl/posts/testing/czym-sa-test-doubles/</link>
      <pubDate>Mon, 02 Nov 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/testing/czym-sa-test-doubles/</guid>
      <description>Dummy, stub, spy, fake i mock sprawdzają różne rzeczy. Jedna klasa w Pythonie, testowana wszystkimi pięcioma sposobami, pokazuje, który test double wybrać.</description>
    </item>
    <item>
      <title>ESLint vs Prettier: Różnice i Jak je Połączyć</title>
      <link>https://spaghetti-code.net/pl/posts/javascript/eslint-vs-prettier-roznice/</link>
      <pubDate>Sun, 01 Nov 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/javascript/eslint-vs-prettier-roznice/</guid>
      <description>ESLint wyłapuje bugi i złe wzorce w kodzie, Prettier tylko go formatuje. Dlaczego używanie obu razem powoduje konflikty i jaka konfiguracja tego unika.</description>
    </item>
    <item>
      <title>Wyrażenia Regularne Wyjaśnione: Jak Naprawdę Działa Regex</title>
      <link>https://spaghetti-code.net/pl/posts/fundamentals/wyrazenia-regularne-wyjasnione/</link>
      <pubDate>Wed, 28 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/fundamentals/wyrazenia-regularne-wyjasnione/</guid>
      <description>Silnik regex nie skanuje ciągu na raz, tylko wzorzec token po tokenie i wraca się (backtracking) po niepowodzeniu. Jak to działa i czemu czasem się zawiesza.</description>
    </item>
    <item>
      <title>Generics w TypeScript Wyjaśnione z Przykładami</title>
      <link>https://spaghetti-code.net/pl/posts/typescript/generics-typescript-wyjasnione/</link>
      <pubDate>Tue, 27 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/typescript/generics-typescript-wyjasnione/</guid>
      <description>Generics w TypeScript zachowują typ, który przekazujesz, zamiast zwijać go do any. Jak działają inferencja, extends, keyof i wartości domyślne w praktyce.</description>
    </item>
    <item>
      <title>Exceptions vs Wartości Błędów: Jak Wybrać Strategię</title>
      <link>https://spaghetti-code.net/pl/posts/clean-code/exceptions-vs-wartosci-bledow/</link>
      <pubDate>Mon, 26 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/clean-code/exceptions-vs-wartosci-bledow/</guid>
      <description>Exceptions i wartości błędów rozwiązują ten sam problem inaczej. Kompromisy pokazane w Python, Go i Rust, i jak wybrać podejście dla własnego kodu.</description>
    </item>
    <item>
      <title>Rate Limiting API: Algorytmy i Jak Zbudować Własny</title>
      <link>https://spaghetti-code.net/pl/posts/backend/rate-limiting-api/</link>
      <pubDate>Fri, 23 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/backend/rate-limiting-api/</guid>
      <description>Jak działa rate limiting API: fixed window, sliding window, token bucket i leaky bucket w porównaniu, z implementacją w Redis i nagłówkami 429 dla klienta.</description>
    </item>
    <item>
      <title>Intersection Observer: Lazy Loading i Infinite Scroll</title>
      <link>https://spaghetti-code.net/pl/posts/javascript/intersection-observer-lazy-loading/</link>
      <pubDate>Wed, 21 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/javascript/intersection-observer-lazy-loading/</guid>
      <description>Jak Intersection Observer API zastępuje scroll z debounce w lazy loading obrazów i infinite scroll, z wyjaśnieniem rootMargin, threshold i częstych pułapek.</description>
    </item>
    <item>
      <title>Co To Jest Unicode i Jak Działa Kodowanie UTF-8</title>
      <link>https://spaghetti-code.net/pl/posts/fundamentals/co-to-jest-unicode-i-utf-8/</link>
      <pubDate>Tue, 20 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/fundamentals/co-to-jest-unicode-i-utf-8/</guid>
      <description>Unicode przypisuje każdemu znakowi numer; UTF-8 zamienia ten numer na 1-4 bajty. Czemu string.length kłamie i skąd naprawdę biorą się błędy kodowania.</description>
    </item>
    <item>
      <title>Closure w JavaScript Wyjaśnione z Przykładami</title>
      <link>https://spaghetti-code.net/pl/posts/javascript/closure-javascript-wyjasnione/</link>
      <pubDate>Mon, 19 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/javascript/closure-javascript-wyjasnione/</guid>
      <description>Closure w JavaScript wiąże funkcję ze zmiennymi z kontekstu, w którym powstała, nawet po zakończeniu tego kodu. Jak działają i gdzie się psują, z przykładami.</description>
    </item>
    <item>
      <title>Czym Jest TDD i Jak Działa Cykl Red-Green-Refactor</title>
      <link>https://spaghetti-code.net/pl/posts/testing/czym-jest-tdd/</link>
      <pubDate>Sun, 18 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/testing/czym-jest-tdd/</guid>
      <description>Programowanie sterowane testami pisze najpierw niedziałający test, potem kod, który go przechodzi, i porządkuje: cykl red-green-refactor z katą w Pythonie.</description>
    </item>
    <item>
      <title>JWT vs Sesja: Którą Autentykację Wybrać</title>
      <link>https://spaghetti-code.net/pl/posts/backend/roznice-jwt-sesja/</link>
      <pubDate>Fri, 16 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/backend/roznice-jwt-sesja/</guid>
      <description>Sesje przechowują stan logowania na serwerze, JWT podpisuje go w tokenie. Jak działa każde z nich w Node i kiedy wybrać jedno albo drugie w swojej aplikacji.</description>
    </item>
    <item>
      <title>Obsługa Błędów Fetch API w JavaScript</title>
      <link>https://spaghetti-code.net/pl/posts/javascript/obsluga-bledow-fetch-api-javascript/</link>
      <pubDate>Wed, 14 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/javascript/obsluga-bledow-fetch-api-javascript/</guid>
      <description>fetch() nie rzuca wyjątku przy 404 czy 500: promise się rozwiązuje, a try/catch nic nie wyłapie. Jak sprawdzić response.ok i dodać timeout do fetch().</description>
    </item>
    <item>
      <title>Rekurencja Wyjaśniona: Kiedy ją Stosować, a Kiedy Nie</title>
      <link>https://spaghetti-code.net/pl/posts/fundamentals/rekurencja-wyjasniona/</link>
      <pubDate>Tue, 13 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/fundamentals/rekurencja-wyjasniona/</guid>
      <description>Rekurencja wyjaśniona na realnym kodzie: jak działa stos wywołań i przypadek bazowy, kiedy wygrywa z pętlą, czemu Python i JS się wysypują, i memoization.</description>
    </item>
    <item>
      <title>CSS Grid czy Flexbox: Kiedy Użyć Którego</title>
      <link>https://spaghetti-code.net/pl/posts/css/css-grid-czy-flexbox-kiedy-ktorego-uzyc/</link>
      <pubDate>Mon, 12 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/css/css-grid-czy-flexbox-kiedy-ktorego-uzyc/</guid>
      <description>Flexbox rozkłada elementy w jednym wierszu lub kolumnie, Grid układa wiersze i kolumny razem. Reguła wyboru z kodem dla navbarów, dashboardów i siatek kart.</description>
    </item>
    <item>
      <title>Goroutines i Channels w Go: Przewodnik z Przykładami</title>
      <link>https://spaghetti-code.net/pl/posts/go/goroutines-i-channels-w-go/</link>
      <pubDate>Sun, 11 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/go/goroutines-i-channels-w-go/</guid>
      <description>Jak działają goroutines i channels w Go: uruchamianie współbieżnej pracy przez go, channel z buforem i bez bufora, select, worker pool oraz leaks i deadlocks.</description>
    </item>
    <item>
      <title>Zasady SOLID Wyjaśnione na Przykładach w Pythonie</title>
      <link>https://spaghetti-code.net/pl/posts/clean-code/zasady-solid/</link>
      <pubDate>Sat, 10 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/clean-code/zasady-solid/</guid>
      <description>Zasady SOLID to pięć reguł, dzięki którym zmiana w jednej klasie nie rozlewa się po całym kodzie. Każda z nich pokazana na kodzie w Pythonie, przed i po.</description>
    </item>
    <item>
      <title>Co To Jest Race Condition i Jak Ją Naprawić</title>
      <link>https://spaghetti-code.net/pl/posts/fundamentals/co-to-jest-race-condition/</link>
      <pubDate>Fri, 09 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/fundamentals/co-to-jest-race-condition/</guid>
      <description>Race condition pojawia się, gdy wynik kodu zależy od timingu, którego nie kontrolujesz. Gdzie się kryje w threadach, async i bazach danych — i jak to naprawić.</description>
    </item>
    <item>
      <title>Debounce vs Throttle w JavaScript: Kiedy Używać Którego</title>
      <link>https://spaghetti-code.net/pl/posts/javascript/roznica-debounce-throttle-javascript/</link>
      <pubDate>Thu, 08 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/javascript/roznica-debounce-throttle-javascript/</guid>
      <description>Debounce vs throttle w JavaScript: debounce czeka, aż zdarzenia przestaną się powtarzać, throttle odpala je w stałym tempie. Jak działają i kiedy który wybrać.</description>
    </item>
    <item>
      <title>Dekoratory w Pythonie Wyjaśnione z Przykładami</title>
      <link>https://spaghetti-code.net/pl/posts/python/dekoratory-python-wyjasnione/</link>
      <pubDate>Wed, 07 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/python/dekoratory-python-wyjasnione/</guid>
      <description>Jak działają dekoratory w Pythonie: składnia @, functools.wraps, dekoratory z argumentami, dekoratory oparte na klasach i lru_cache, z prawdziwymi przykładami.</description>
    </item>
    <item>
      <title>Czemu 0.1 &#43; 0.2 Nie Daje 0.3: Liczby Zmiennoprzecinkowe</title>
      <link>https://spaghetti-code.net/pl/posts/fundamentals/czemu-0-1-plus-0-2-nie-daje-0-3/</link>
      <pubDate>Tue, 06 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/fundamentals/czemu-0-1-plus-0-2-nie-daje-0-3/</guid>
      <description>Liczby zmiennoprzecinkowe rzadko zapisują dziesiętne wartości dokładnie: 0.1 &#43; 0.2 daje 0.30000000000000004, nie 0.3. Jak bezpiecznie porównywać floaty.</description>
    </item>
    <item>
      <title>Notacja Big O Wyjaśniona na Przykładach Kodu</title>
      <link>https://spaghetti-code.net/pl/posts/fundamentals/notacja-big-o/</link>
      <pubDate>Sun, 04 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/fundamentals/notacja-big-o/</guid>
      <description>Notacja Big O na prawdziwym kodzie: funkcje mierzone przy rosnących danych, czego notacja nie mówi i jak wyłapać ukryte O(n^2), zanim trafi na produkcję.</description>
    </item>
    <item>
      <title>Git Reset vs Revert vs Restore: Jak Cofnąć Zmiany</title>
      <link>https://spaghetti-code.net/pl/posts/git/jak-cofnac-zmiany-w-git/</link>
      <pubDate>Sat, 03 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/git/jak-cofnac-zmiany-w-git/</guid>
      <description>Git reset, revert i restore cofają zmiany, ale każde działa na innym etapie: working tree, staging area, lokalny commit, wypchnięty commit. Kiedy użyć którego.</description>
    </item>
    <item>
      <title>Czym Jest Dependency Injection? (Z Przykładami)</title>
      <link>https://spaghetti-code.net/pl/posts/clean-code/czym-jest-dependency-injection/</link>
      <pubDate>Thu, 01 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/clean-code/czym-jest-dependency-injection/</guid>
      <description>Dependency injection to przekazanie klasie jej zależności zamiast budowania ich wewnątrz. Constructor injection, cykle życia ASP.NET Core i co je psuje.</description>
    </item>
    <item>
      <title>Testy Jednostkowe vs Integracyjne vs End-to-End</title>
      <link>https://spaghetti-code.net/pl/posts/testing/testy-jednostkowe-vs-integracyjne-vs-end-to-end/</link>
      <pubDate>Tue, 29 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/testing/testy-jednostkowe-vs-integracyjne-vs-end-to-end/</guid>
      <description>Testy jednostkowe, integracyjne i end-to-end wyłapują różne błędy: rejestracja we Flasku testowana na trzech poziomach, mocki vs fake&amp;#39;i i niestabilne e2e.</description>
    </item>
    <item>
      <title>Async/Await i Event Loop w JavaScript Wyjaśnione</title>
      <link>https://spaghetti-code.net/pl/posts/javascript/async-await-i-event-loop-javascript/</link>
      <pubDate>Mon, 28 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/javascript/async-await-i-event-loop-javascript/</guid>
      <description>Jak async/await działa na event loopie w JavaScript, czemu callback promise wygrywa z setTimeout(0) i jak naprawić brakujące await, wolne pętle i async forEach.</description>
    </item>
    <item>
      <title>Czym Jest CORS i Jak Naprawić Błędy CORS</title>
      <link>https://spaghetti-code.net/pl/posts/web/czym-jest-cors-jak-naprawic-bledy-cors/</link>
      <pubDate>Sat, 26 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/web/czym-jest-cors-jak-naprawic-bledy-cors/</guid>
      <description>Dlaczego przeglądarka blokuje twoje zapytanie fetch błędem CORS, co ogranicza same-origin policy i jak naprawić to po stronie serwera w Express i ASP.NET Core.</description>
    </item>
    <item>
      <title>Jak Skonfigurować Debugowanie Zdalne w Visual Studio</title>
      <link>https://spaghetti-code.net/pl/posts/debugging/debugowanie-zdalne-w-visual-studio/</link>
      <pubDate>Wed, 23 Sep 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/pl/posts/debugging/debugowanie-zdalne-w-visual-studio/</guid>
      <description>Debugowanie zdalne w Visual Studio przez msvsmon: instalacja remote tools, otwarcie portu, dopasowanie symboli i podpięcie się pod proces na innej maszynie.</description>
    </item>
  </channel>
</rss>
