Za skomplikowane to
W pracy zajmuję się mocno skomplikowanym i mocno zasobożernym systemem, który regularnie udowadnia mi, że nie mam zielonego pojęcia jak on działa. I coraz bardziej niewiarygodne wydaje mi się, że on w ogóle działa, biorąc pod uwagę ilość rzeczy, które działają/działały w nim "przez przypadek". Jest to niesamowite, że w czymś tak skomplikowanym coś może działać przez przypadek, tzn. autor zamierzał A, wyszło mu B, a w rzeczywistości całość działa na zasadzie C, acz to B jakimś cudem i tak przynajmniej częściowo spełnia swoje zadanie.
(Żeby jeszcze mi poprawić humor, ja sobie mogę poteoretyzować dlaczego B spełnia swoje zadania, acz tak szczerzę mówiąc, to już dawno przekroczyłem punkt w którym w jakimkolwiek stopniu ufałem swoim teoriom. Więc po prostu nie wiem.)
Irytuje mnie to. Sensem działania firmy oraz mojej w niej pracy jest osiągnięcie określonego celu. Kompletnie niedeterministyczny system w którym po prostu nie da się przewidzieć, czy coś będzie działało, czy nie będzie, to akurat przeciwieństwo moich życzeń. Nie cierpię R&D. A przynajmniej R&D na tym poziomie skomplikowania.

13 XI 2006 o 08:12:21
Jak popracowałem parę latek przy systemach "na tym poziomie skomplikowania", to się teraz dziwię jak w ogóle nasza skomputeryzowana cywilizacja uchroniła się od upadku.
13 XI 2006 o 08:53:25
Dotarłeś do momentu, w którym wszystko jest na tyle niejasne, skomplikowane i, przynajmniej pozornie, niedeterministycznie, że możesz już zbudować religię. Religie są wygodniejsze od rzetelnej wiedzy, bo prostsze. Tylko zorientuj się, czy aby nie musisz mu składać ofiar, żeby dobrze działał... ;)
13 XI 2006 o 09:05:40
Ja się na co dzień opiekuję systemem, przy którym kiedyś pracowałem z jednym znajomym, a teraz pracuję z innym.
Odkąd pierwszy kumpel się zwolnił, skróciliśmy system o jakieś 30 KLOC (ze 100), robi to samo i to przewidywalnie. Go figure ;]
13 XI 2006 o 09:16:31
Witaj w prawdziwym świecie ;>
14 XI 2006 o 09:02:33
Laws of Computer Programming:
(...)
5. Program complexity grows until it exceeds the capability of the programmer(s) who must maintain it.
Don't worry be happy :)