Poniższy fragment książki jest brutalną prawdą, esencją strasznej zarazy panującej w firmach, która z zimną krwią wyniszcza wszystko, co jej stanie na drodze.
Systematyczne lekceważenie planowania i projektowania prowadzi do rozwoju w cyklu „szybciej, wolniej, wolniej”.
Wygląda to mniej więcej tak:
- Błyskawicznie dostarczasz wersję 1.0, pisząc cały kod na kolanie.
- Budujesz wersję 2.0, na bieżąco rozwiązując problemy stwarzane przez uciążliwy bałagan w kodzie.
- Wraz z kolejnymi wersjami rozwiązywanie problemów ze starym kodem „na bieżąco” sprawia, że bałaganu przybywa, a praca staje się coraz wolniejsza. Wyrzyscy stopniowo tracą wiarę w system, programistów i całą sytuację, w której się znaleźli.
- Gdzieś w okolicach wersji 4.0 zdajesz sobie sprawę, że nie wygrasz. Zaczynasz rozważać opcję przepisania systemu od podstaw.
„Refaktoryzacja do wzorców projektowych” Joshua Kerievsky
Miałem okazję przyjrzeć się tej sytuacji z bardzo bliska. Cieszę się, że jestem już dożywotnio zaszczepiony na wypadek tego wirusa.
Co to znaczy – dobry programista
Po tym doświadczeniu, zdefiniowałem, na nowo, co to znaczy dobry programista. Warunkiem niewystarczającym, ale koniecznym, jaki musi spełnić dobry programista to: nie pozwolić nigdy na realizację scenariusza „szybciej, wolniej, wolniej.” Dobry programista to taki, który się nie ugnie pod rzeszą managerów, szefów i innych takich. Dobry programista nie weźmie udziału w scenariuszu „szybciej, wolniej, wolniej” mając na względzie troskę o dobro projektu, firmy i swoich szefów, chcąc uchronić ich przed długą i wyniszczającą wszystkich, powolną klęską.