Tuesday, February 19, 2013

Megasoftwarecraftsmanshipper

Pojawił się nowy rodzaj programisty:

megasoftwarecraftsmanshipper - podchodzi do odziedziczonego kodu z wyższością ocierającą się o pogardę; z kpiącym uśmiechem patrzy na nazwy zmiennych, design, stan testów; sam dla siebie jest największym autorytetem; podstawowymi narzędziami poprawy jakości czyjegoś kodu jest naprzemienne stosowanie wyśmiewania i poniżania; megasoftwarecraftsmanshipper to powiernik i głosiciel Prawdy objawionej przez Święte Community; według najnowszych badań postawa taka jest objawem choroby zwanej megasoftwarecraftsmanshippentem

A więc jest nadzieja! Można to leczyć! Zebrałem kilka receptur ozdrowieniowych, więc jeśli znasz jakiegoś megasoftwarecraftsmanshippera, to koniecznie poleć mu jedną z nich, bądź nawet wszystkie. Skutków ubocznych nie stwierdzono.

Receptura Szczepana i Bartka

Szczepan Faber i Bartosz Bieńkowski w swoim wystąpieniu nt. TDD dają następującą recepturę: "musicie pozbyć się swojego Ego". Dalej wyjaśniają, że chodzi to pozbycie się zdradliwej myśli, że "mój kod jest najlepszy". Zaleca się powtarzanie tego rozumowania na głos rano i wieczorem.

Receptura Lequiera

który rzekł: "Gdy się wierzy, że posiadło się prawdę, trzeba wiedzieć, że się w to wierzy, a nie, że się to wie". Na podstawie tej światłej myśli zaleca się rozważanie następującego zdania: "Konwencja kodowania, architektura, frameworki, język programowania to tylko moje przyzwyczajenia i moje ulubione podejścia. Sprawdzają się w bardzo określonych kontekstach, a poza nimi się nie sprawdzają. Wszystkie inne alternatywy mają tyle samo sensu co te, wyznawane przeze mnie". Oczywiście powtarzamy rano i wieczorem.

Receptura percepcji błędu

Jeśli coś nie działa, w pierwszej kolejności szukaj błędu we własnym kodzie. Zadawaj sobie pytanie: "Co mogłem zrobić albo czego nie zrobić, że to przestało działać?" Rano i wieczorem to dawka minimalna. Optymalna to: przy każdorazowym wystąpieniu błędu.

Receptura "To ma sens"

Megasoftwarecraftsmanshipper przede wszystkim powinien sobie tak głęboko, że aż do szpiku kości uświadomić, że ludzie którzy stworzyli kod odziedziczony naprawdę NIE byli kretynami. Dla wielu megasoftwarecraftsmanshipperów będzie to trudne do zaakceptowania, ale jeśli tylko założą, że "istniała racjonalna przyczyna, dla której ten kod wygląda tak a nie inaczej, że ci którzy go napisali zrobili wszystko, co mogli w sytuacji w jakiej musieli pracować", to być może zaczną zauważać, że: była jedna doświadczona osoba, która dostała "darmowych" (obecnie już chyba nie:)) studentów, kod został przeportowany 1:1 z jakiegoś egzotycznego języka, to jest poprawiona wersja, która wyglądała jeszcze gorzej, itd. Megasoftwarecraftsmanshipper może wtedy zacząć uświadamiać sobie, że "to naprawdę ma sens"!