„Po co dokumentować zmiany? Przecież pamiętam” – Dokumentacja techniczna strony: Dlaczego brak notatek to sabotaż własnej pracy

dokumentacja techniczna

Co znajdziesz w tym artykule?

Jesteś zajęty innym projektem, ale dzwoni klient z prośbą o drobną, bardzo pilną poprawkę na działającej witrynie. Odrywasz się od bieżącej pracy, logujesz się szybko na serwer, dopisujesz z palca kilka linijek kodu w pliku konfiguracyjnym i zamykasz laptopa, będąc święcie przekonanym, że tak oczywistego rozwiązania po prostu nie da się zapomnieć. W praktyce wygląda to tak, że pół roku później wracasz do tego samego projektu, patrzysz w pozostawiony kod z kompletnym niezrozumieniem i gorączkowo zastanawiasz się, kto zepsuł tak piękną architekturę. Kiedy w końcu dociera do Ciebie, że autorem tego technologicznego absurdu jesteś Ty sam, dokumentacja techniczna strony WWW nagle przestaje brzmieć jak nudny wymysł wielkich korporacji. Brak notatek z roboczych wdrożeń to nie jest sprytna oszczędność czasu, tylko celowy sabotaż własnej pracy, który uderzy w Ciebie w najgorszym z możliwych momentów.

Szybka poprawka na produkcji, czyli jak zaciągnąć techniczny dług

Każda nieudokumentowana zmiana wdrożona bezpośrednio na żywym organizmie to klasyczny dług technologiczny, który zaciągasz u samego siebie z gigantycznym oprocentowaniem. Kiedy pod presją dzwoniącego telefonu dopisujesz specyficzne reguły przekierowań w pliku konfiguracyjnym serwera albo wyłączasz niewygodną funkcję w motywie bez pozostawienia żadnego śladu, tworzysz najprawdziwszą bombę zegarową. Oszukujesz się oczywiście, że jutro rano na spokojnie wszystko rozpiszesz, ale następnego dnia wpada kolejny, równie pilny projekt i zapominasz o wczorajszej rzeźbie szybciej, niż klient opłaca wystawioną fakturę. Sytuacja robi się naprawdę dramatyczna, gdy po kilku miesiącach wychodzi potężna aktualizacja głównego silnika strony, a Twoja mała, dawno zapomniana modyfikacja wchodzi z nią w otwarty konflikt, bezlitośnie kładąc cały funkcjonujący sklep internetowy.

Praca pod ciągłą presją sprawia, że jako twórcy stron zaczynamy traktować swoje projekty jak jednorazowe zlecenia, całkowicie ignorując fakt, że oprogramowanie żyje i nieustannie ewoluuje. Po kilku miesiącach jednoczesnego obsługiwania kilkunastu różnych klientów ludzka pamięć staje się całkowicie bezużyteczna, a diagnozowanie banalnego błędu zaczyna przypominać śledztwo w sprawie, w której sam jesteś głównym podejrzanym. Zamiast po prostu sprawdzić historię wprowadzanych zmian, tracisz długie godziny na badanie, czy winna jest nowa wtyczka, zaktualizowana wersja środowiska PHP, czy może to Twój własny autorski skrypt właśnie postanowił przestać współpracować z bazą danych. Trzymanie wszystkich technicznych niuansów w głowie sprawdza się świetnie, dopóki masz na utrzymaniu jedną prostą wizytówkę, ale przy większej skali działalności staje się najkrótszą drogą do zawodowego wypalenia i zrujnowanych weekendów.

Co i jak powinieneś notować, żeby oszczędzić sobie nerwów

Wielu webmasterów wręcz instynktownie unika tworzenia jakichkolwiek notatek, bo kojarzą im się one z wielostronicowymi raportami pisanymi sztywnym, urzędowym językiem, których nikt nigdy w całości nie czyta. Tymczasem największą, realną wartością dla przeciętnego freelancera czy małej agencji jest najzwyklejszy, płaski plik tekstowy, w którym na szybko wrzucasz datę, ścieżkę do modyfikowanego pliku i jedno konkretne zdanie o tym, po co w ogóle tam grzebałeś. Zapisanie prostej informacji, że wymusiłeś użycie starszej wersji biblioteki do obsługi płatności, ponieważ nowa gryzła się z niestandardowym koszykiem klienta, autentycznie ratuje Ci skórę podczas każdej rutynowej aktualizacji. Taki minimalistyczny, ale prowadzony z żelazną konsekwencją dziennik pozwala w ułamku sekundy zidentyfikować obszary podwyższonego ryzyka i zaplanować niezbędne prace utrzymaniowe bez stresu, że przypadkowo nadpiszesz własne, działające od miesięcy poprawki.

Równie ważna jak ewidencja samego kodu źródłowego jest rzetelna notatka dotycząca wszelkich niestandardowych ustawień środowiska serwerowego oraz infrastruktury pocztowej, która w relacjach z klientami potrafi wygenerować najwięcej nieporozumień. Jeżeli na prośbę klienta modyfikujesz autentykację domeny i dodajesz nowe, rygorystyczne rekordy DNS odpowiedzialne za dostarczalność firmowego newslettera, absolutnie musisz zostawić po tej operacji wyraźny ślad. I tu pojawia się problem, bo brak tej kluczowej informacji sprawi, że późniejsza, pozornie prosta migracja całego projektu na inny serwer całkowicie zniszczy wypracowaną reputację IP, wysyłając strategiczną komunikację firmy prosto do folderu ze spamem. Posiadanie transparentnego opisu wdrożonych zabezpieczeń staje się wręcz krytyczne, gdy w projektach integrujesz dedykowane narzędzia i polecasz sprawdzonych partnerów, takich jak niezawodne oprogramowanie AnoMail do profesjonalnej obsługi dużych baz kontaktów.

Kiedy serwer płonie, a Ty nie wiesz, co zepsułeś

Gdy strategiczna dla biznesu witryna niespodziewanie przestaje funkcjonować, Twój czas reakcji staje się jedyną walutą, która ma w tym kryzysowym momencie jakiekolwiek realne znaczenie dla zdenerwowanego klienta. Jeżeli historia modyfikacji w ogóle nie istnieje, to zamiast szybko naprawiać usterkę, musisz najpierw przeprowadzić mozolną inżynierię wsteczną swoich własnych, dawno zapomnianych działań, nerwowo przeszukując systemowe pliki w poszukiwaniu jakichkolwiek anomalii. Ta sama stresująca i obciążająca psychicznie naprawa potrwałaby zazwyczaj dosłownie kilka minut, gdybyś wcześniej poświęcił krótką chwilę na proste zanotowanie wprowadzanych wyjątków w głównej logice biznesowej aplikacji. Rzetelny rejestr wykonanych prac pozwala Ci błyskawicznie wykluczyć błędy własne, odrzucić fałszywe tropy z logów systemowych i skupić pełną uwagę na weryfikacji faktycznych problemów technicznych związanych z wykorzystywanym oprogramowaniem.

W takich wysoce napiętych sytuacjach na wagę złota okazuje się również jakość samej infrastruktury hostingowej oraz to, jak kompetentnego partnera technologicznego masz aktualnie po drugiej stronie przewodu. Wybór stabilnego hostingu zlokalizowanego w nowoczesnych, polskich centrach danych zapewnia Ci bardzo niskie opóźnienia w transmisji sieciowej. Posiadanie tak solidnego, lokalnego zaplecza daje Ci nieoceniony luksus natychmiastowej komunikacji z polskojęzycznym wsparciem technicznym, które w przypadku nagłej awarii zadziała znacznie sprawniej, jeśli na starcie podasz im precyzyjny kontekst sytuacji oparty na Twoich własnych, uporządkowanych notatkach. 

Podsumowanie

Utrzymywanie samego siebie w naiwnym przekonaniu, że zawsze i bezbłędnie zapamiętasz każdy technologiczny niuans w swoim autorskim kodzie, to absolutna gwarancja darmowej pracy po godzinach i regularnie rujnowanych planów urlopowych. Rzeczowe opisanie wdrażanej na szybko funkcji zajmuje dosłownie jedną minutę, podczas gdy późniejsze ratowanie całej platformy przed skutkami niedbale nadpisanych plików potrafi pochłonąć cenne dni i bezpowrotnie zniszczyć ciężko wypracowane zaufanie biznesowe klienta. Prawdziwy profesjonalizm to nie jest pisanie idealnego kodu za pierwszym razem, ale konsekwentne budowanie przewidywalnych rozwiązań, w których każda, nawet najmniejsza zmiana ma swój logiczny, niezwykle łatwy do namierzenia ślad w archiwum danego projektu. Zrób wielką przysługę swojemu przyszłemu ja, zacznij rzetelnie notować kluczowe modyfikacje już od dzisiaj, a techniczną obsługę serwerów i bezpieczeństwo trudnej infrastruktury powierz po prostu sprawdzonym specjalistom.