Programowanie ekstremalne
Szablon:Rozwiń Programowanie ekstremalne (ang. Extreme programming, XP) – doktryna religijna i metodyka programowania mająca na celu wydajne tworzenie małych, średnich i średnio dużych „projektów wysokiego ryzyka”, czyli takich, w których nie wiadomo do końca, co się tak naprawdę robi i jak to prawidłowo zrobić. Przyświeca temu koncepcja surrealistycznej, prymitywnej rozrywki, wywodząca się z obsesyjnej obserwacji innych programów, które odniosły sukces (albo i nie).
Podstawą ekstremalnego programowania są synergia, akomodacja i mahabharata, wynikające ze stosowania rozmaitych praktyk religijno-informatycznych, które same w sobie nie mają żadnego sensu, lecz łącznie użyte zapewniają zaniknięcie jakiegokolwiek sensu pisanego kodu, co z kolei umożliwia przejście na wyższy, bardzej uduchowiony poziom programowania, charakteryzujący się brakiem prostolinijnej logiki Arystotelesa. Dodatkową zaletą programowania ekstremalnego jest to, że z punktu widzenia klienta ono w ogóle nie działa, a jak nawet działa, to niezbyt dobrze (a klient zmuszony jest kupić nowe oprogramowanie). Jednym z bardziej znanych produktów, które powstały w ten sposób, są Windows i XP firmy M$.
Podstawowe założenia programowania ekstremalnego zostały sformułowane przez Aarnio Aulisa.
Zalecenia
Iteracyjność
Program tworzy się w iteracjach (pojedynczych ruchach programisty), i – co ważniejsze – planuje tylko następną literę kodu. Efektem każdej iteracji powinien być nielogiczny informatyczny bełkot, którego nijak nie będzie można później pogodzić z dalszymi iteracjami. Po zakończeniu jednej iteracji planuje się, co zrobić dalej.
Odpowiada to zasadzie Katona: Za dużo martwi się ten, kto martwi się za wcześnie.
Nie projektować z góry
Nie można projektować z góry, gdyż patrzenie z dużej wysokości zniekształca obraz, nie mówiąc już o tym, że rzeczy wydają się mniejsze. Dlatego należy ułożyć się wygodnie na słomianej macie na podłodze i przykryć się kocem. Słomiana mata i koc zabezpieczają programistę przed wpływem negatywnych energii astralnych.
Testy podzespołów
Za test podzespołu służy tutaj odpowiednio zaplanowana, obiektywna próba, której wyniki ujmowane są ilościowo, stosowana w celu uzyskania odpowiedzi na określone pytanie. W psychologii test polega na dawaniu badanej osobie do rozwiązania różnego rodzaju zadań, zdań, dań, ań lub ń, a także na zadawaniu (zdawaniu, dawaniu, aniu lub niu) pytań na ich temat dla określenia jej własności psychologicznych, zdolności itp. Jednak w programowaniu ekstremalnym za pomocą testu określa się poziom opanowania określonego zasobu, jak np. złota, węgla czy też drewna, które wykorzystuje się do budowy jednostek.
Programowanie parami
Programiści piszą w parach: podczas programowania jeden programista zostaje wprowadzony w stan głębokiej relaksacji, drugi zaś sugeruje mu kolejne tematy wyobrażeń (np. łąkę, strumień, górę, dom, brzeg las itp.). Następnie pierwszy opisuje swoje wizje, związane z nimi silne emocje oraz pracuje w wyobraźni nad poprawieniem jakości obrazów. Np. jeżeli programista w stanie relaksacji widzi, że jego wyobrażony strumień nie może wydostać się spod piasku, drugi programista sugeruje mu, jednakże bez wywierania jakiegokolwiek nacisku, aby sam rozwiązał ten problem – chociażby odkopał strumień łopatą. W ten sposób zostają przezwyciężone nieświadome blokady psychiczne; obydwaj programiści odczuwają przypływ energii bądź swobody. Często następuje silne odreagowanie emocjonalne, co wyraża się płaczem, smutkiem, poceniem się, zmianą oddechu, a także nietypowymi ruchami i gestami. Działa to jak oczyszczenie (katharsis), usuwające objawy nerwicowe, choroby psychosomatyczne, pomagające rozwiązywać konflikty wewnętrzne. Z tego powodu XP jest często polecane przez psychiatrów.
Stały kontakt z kontaktem
Baterie są prawie zawsze wieloznaczne, dziurawe i sprzeczne ze sobą. Tak więc należy mieć stały kontakt z kontaktem sieci elektrycznej (oczywiście chodzi o gniazdko, a nie o żaden kontakt, ale i tak każdy wie, ossochozzi, jak również gra słów jest zachowana), co da programiście więcej energii do pracy. Jeżeli kontakt jest dobry, można się nawet obyć bez baterii.