O no zalezi, co je tvoj motor, ktory ta pohana.
Poznam dve zakladne skupiny.
Jedna skupina, ktora je hrda na svoj kod. Hrda na to, ze ako ovlada dany jazyk a na tvorbu samotneho kodu. Naplna ich to, ze pisu samotny kod, ake finesy poznaju, ... Tato skupina sedi na to, co pises ty.
Ti su skepticky voci buducnosti s AI.
Druha skupina je hrda na vysledok. Ide jej primarne o produkt ako o samotny kod. Primarne ju naplna to ako vymyslit fungovanei daneho programu, jendotlive funkcie a celu tu logiku. Samotny kod je len prostriedok k dosiahnutiu ich ciela. Ide im primarne o to aby ta appka fungovala, co najlepsie.
Podotykam, ze to neznamena, ze im o samotny kod, jeho pisanie a jeho kvalitu nejde. Len ich to nieje to top, co ich naplna. Ked im ho da napriklad AI, tak to ich hrdost nijako neznizi. Ti ludia sa vecsinou tesili na AI.
K tej prvej skupine. Tu vnimam postupne opustanie toho ich idealu a pobavila ma pred par tyzdnami debata vo firme, kde zarpurtili programtori, ktory sa hrdo pred casom hlasili k prvej skupine, s usmevom podotkli, ze za posledne obodobie nenapisali ani riadok kodu.
Nepride mi, ze ich to "programovanie" menej bavi. Vecsina pochopila, ze im to dava ine moznosti, ktore pred AI nemali.
Aby som to zhrnul. Nemyslim si, ze prichodom AI bude jedina motivacia peniaze. Suhlasim s decumanus, ze sa to viacej presunie na tu hrdost za vysledok ako to ma ta druha skupina.
Ja sa hrdo hlasim k tej druhej skupine.
Potesilo moje ego, ked som nasiel nejaku finesu v danom programovacom jazyku, ktora mi pomohla vyriesit elegantne nejaky problem/ulohu. Viac ma ale potesilo, ze ten program ako celok fungoval alebo nejaka jeho cast ako ten kusok kodu, ktory nemusel mat v konecnom dosledku ziaden vplyv na apppku a jej fungovanie..
Pokud mají lidi pocit, že správci open-source projektů dbají na podobu kódu kvůli tomu, že mají nějakou zálibu v perfektně napsaném kódu, tak si myslím, že je to velké nepochopení. Jim nejde o perfektně napsaný kód, ale o udržovatelný kód. To nemusí být něco brilantně napsaného, ale musí to být něco, co se jim za pár let nevymstí a nestane se jejich noční můrou. Přispěvatel pošle do projektu třeba tisíc řádků kódu a po review to pro něj končí, ale jsou to správci, kteří to budou mít celé ty roky na starost. U nás, když se něco dostane do RHELu, tak to znamená, že se o to budeme muset starat 10, 15... (ten čas se pořád natahuje) let. To už si rozmyslíte, co do projektu pustíte a co ne.
Hodně z těchto lidí se staví k AI rezervovaně i proto, že samotné psaní kódu nikdy úzké hrdlo nebylo. Úzké hrdlo byla kontrola a údržba. Když se zeptáte zkušeného správce open-source projektu, kolik tráví času psaním nového kódu a kolik údržbou, řekne vám, že je to klidně 20:80. A AI zatím pomáhá s tím prvním a spíš stěžuje to druhé.
Jinak nemyslím si, že ta dělící čára je mezi lidmi, kterým jde o kód, a mezi lidmi, kterým jde o výsledek. Podle mého názoru je dělící čára mezi lidmi, kteří jsou pro ten výsledek ochotní vynaložit vlastní úsilí, a mezi těmi, kteří si myslí, že těch výsledků dosáhnou bez úsilí. Ta první skupina dokáže v těch tradičních pravidlech fungovat i s AI. Jestli je samotná tvorba kódu pro ně nyní jednodušší, vrhnou to úsilí do toho zbytku, který spolutvoří pořádný výsledek. Tihle lidé dokážou vytvářet příspěvky, které jsou v pohodě akceptovatelné open-source projekty. Ta druhá skupina vytváří AI slop.
Ten perfektní kód je často hrozně subjektivní. Vyřešil jsem problém, který vlastně problémem nebyl pomocí elegantního template metaprogrammingu, a kód je tak skvělý, že ho moji kolegové slabší duchem nepochopí a neocení. Nakonec takový člověk z firmy (díky bohu) odejde, protože ho nikdo neocení, ukáže se, že kód lze zredukovat na třetinu délky, funguje rychleji a rozumí mu každý.