CZY KOD TO JUŻ COMMODITY?
PDD #001 — Czy kod to już commodity?
Czas całkowity: 31:51 · Dźwięk masterowany: 128 kbps
Zastanówmy się, czy doba AI zmienia dużo w podejściu do wytwarzania oprogramowania i postrzegania samego kodu. Przyjrzymy się kontekstowi historycznemu, bo kto nie zna historii, skazany jest na jej ponowne przeżycie.
Dla wielu inżynierów „kod to towar” brzmi jak ujma na honorze. Pokazujemy, że kod był towarem od dawna: outsourcing, package managery, open source, komponenty kupowane w paczkach, low-code i SaaS. Każdy z tych skoków przyspieszał pracę i jednocześnie podnosił złożoność systemów. Rozmawiamy o różnicy między kodowaniem a programowaniem, o tym, czy wpuszczać agenta AI do domeny core, i dlaczego Martin Fowler porównuje LLM-y do pierwszego kompilatora Fortrana. Są liczby: Windows urósł z 4-5 mln linii kodu w 1993 roku do prawie 30 mln w XP, Debian 4.0 miał 300 mln linii, a według badań Hattona kod w systemie podwaja się średnio co 42 miesiące. Do tego prawa Lehmana, shift-left i definicja architektury jako decyzji trudnych do cofnięcia. Wniosek jest jeden: myślenia nie da się zdelegować do modelu.
checklistCzego dowiesz się z tej rozmowy:
- 01Kod był towarem na długo przed LLM-amiOutsourcing, package managery, open source, low-code i SaaS to kolejne fale tego samego zjawiska. AI tylko skraca pętlę zwrotną z tygodni do godzin.
- 02Kodowanie to nie programowanieAgent może klepać kod w domenach generycznych i wspierających. W domenie core nadal liczy się zrozumienie problemu, nie szybkość pisania.
- 03Każde przyspieszenie podnosi złożonośćWindows, Debian i badania Hattona pokazują to samo: liczba linii kodu podwaja się co kilka lat, a bez pracy nad złożonością entropia rośnie (prawa Lehmana).
- 04Architektura to decyzje trudne do cofnięciaWedług Brooksa to właśnie one odróżniają architekturę od implementacji. LLM nie podejmie ich za Ciebie, a myślenia nie da się zdelegować.
Kliknij na znacznik czasowy, aby natychmiast przeskoczyć do wybranego wątku w odtwarzaczu.
MATERIAŁY, ŹRÓDŁA I PLIKI DO POBRANIA
Wszystkie schematy, tablice i dokumenty ADR omówione podczas odcinka. Bez paywalli, w otwartych formatach.
Fred Brooks, „No Silver Bullet”
Złożoność esencjonalna i przypadkowa. Punkt wyjścia do rozmowy o tym, co AI naprawdę może przyspieszyć.
Fred Brooks, „The Mythical Man-Month”
Stąd definicja architektury jako decyzji trudnych do cofnięcia i rozdział między architekturą a implementacją.
David Parnas, „On the Criteria To Be Used in Decomposing Systems into Modules”
Ukrywanie informacji i podział na moduły. Pierwszy krok do traktowania kodu jak wymiennych komponentów.
Martin Fowler, „LLMs bring new nature of abstraction”
Porównanie LLM-ów do przejścia z asemblera na języki wysokiego poziomu, czyli do pierwszego kompilatora Fortrana.
Hatton, Spinellis, van Genuchten, „The long-term growth rate of evolving software”
404 mln linii kodu z systemów otwartych i zamkniętych. Wniosek: kod podwaja się średnio co 42 miesiące.
Gonzalez-Barahona i in., „Macro-level software evolution”: Debian 2.2 → 4.0
Skąd 300 mln linii i dziesięciokrotny wzrost liczby pakietów. Debian podwajał rozmiar co dwa lata.
Prawa Lehmana ewolucji oprogramowania
Rosnąca złożoność, ciągła zmiana, samoregulacja. Osiem praw, do których wracamy przy każdym starym systemie.
„Why does entropy kill my software?”
Wpis Artura o tym, dlaczego architektura dąży do chaosu i jak trzymać entropię w ryzach. Parafraza Lehmana w praktyce.
POZNAJMY SIĘ!
Tu Artur Wojnar i Kamil Kiełbasa! Witamy w Paper-Driven Design! :)
PRACUJEMY NAD NASTĘPNĄ ROZMOWĄ
Zapisz się do Paper Notes, a dostaniesz powiadomienie o premierze.
NIE PRZEGAP NOTATEK WIZUALNYCH DO NASTĘPNYCH ODCINKÓW
Co dwa tygodnie wysyłamy jeden zwięzły e-mail z ręcznie rysowanymi schematami architektonicznymi, wyciągiem z decyzji technicznych oraz linkiem do odsłuchu przed oficjalną premierą. Zero spamu.
Zapisując się, zgadzasz się na otrzymywanie newslettera na podany adres. Wypiszesz się jednym kliknięciem w każdej wiadomości. Jak chronimy Twoje dane, opisuje polityka prywatności.