Piekło perfekcjonisty - okładka

Piekło perfekcjonisty

Zabierając się za pisanie tego artykułu chciałem, aby wstęp był jak sugeruje tytuł – perfekcyjny. Muszę niestety pogodzić się z faktem, że prawdopodobnie nigdy taki nie będzie. W naszym życiu tak naprawdę 99% tego co zrobisz nie będzie perfekcyjne. Zawsze znajdzie się ktoś, komu nie będzie się coś podobać.
Niestety dla pewnej grupy największym krytykiem ich pracy będą one same – te osoby to perfekcjoniści.

Definicja perfekcjonisty

Idąc za Wikipedią perfekcjonista to osoba, która jako priorytet stawia jakość wykonywanej pracy. W teorii brzmi to super – dostarczamy owoc naszej pracy najwyższej klasy. W praktyce jednak okazuje się, że czas i włożony wysiłek jest niewspółmierny do korzyści.

Mój blog jako przykład piekła perfekcjonisty

Jak zapewne się już domyśliłeś ja też jestem perfekcjonistą. Sztandarowym przykładem jaki zawsze przytaczam przy temacie perfekcjonizmu jest mój blog – devszczepaniak.pl – dokładnie ten, na którym teraz jesteś. Jeżeli jesteś czytelnikiem bloga od początku to zapewne widziałeś już przynajmniej 3 różne layouty.

Pierwszy z nich, który pojawił się wraz z początkiem bloga, wykorzystywał API WordPressa, zaś sam frontend powstał przy wykorzystaniu Vue.js. Nie było to rozwiązanie idealne. Przede wszystkim istniał problem w postaci braku Server Side Rendering. Konsekwencją tego był fatalny ruch organiczny (który obecnie jest jednym z głównych źródeł pozyskiwania czytelników na tym blogu). Oprócz tego skazałem się na brak możliwości korzystania z wielu użytecznych wtyczek.

W tym momencie zadziałał mój perfekcjonista. Powstała nowa wersja bloga – specjalnie przygotowana pod to, aby wreszcie pojawić się w wyszukiwarce Google i zdobyć nowych czytelników. Postanowiłem lekko zmodyfikować jeden z bazowych motywów WordPressa. W ten oto sposób powstała druga wersja mojego bloga. W tym momencie obiecałem sobie, że ten layout posłuży mi dłużej. Jak widzisz obietnica nie została dotrzymana…

Tak oto powstał obecny layout. Mam nadzieję, że chociaż on mi posłuży nieco dłuższy czas. Wiadomo – są pewne rzeczy, które chciałbym w nim poprawić, ale osiągnięty stan jest według mnie naprawdę blisko mojego wymarzonego stanu docelowego. Nie wspominam nawet o moim poprzednim blogu, który już obecnie nie istnieje – jego historia z layoutami była bardzo podobna.

Obecnym podejściem jakim się kierowałem jest podejście MVP, które opisałem na blogu w artykule Czym jest Minimum Viable Product? Podejście to znacznie bardziej wpasowuje się w moje obecne potrzeby i staram się je wprowadzać w każdy aspekt swojego życia i wypierać nim perfekcjonizm.

Zupełnie inna kwestią są artykuły, które publikuję. Jak pewnie widzisz moja aktywność na tym blogu nie jest powalająca. Tu również moje plany krzyżuje perfekcjonista. Pisząc artykuły chcę, aby dokładnie wyczerpywały temat, nie zawierały błędów merytorycznych, były obszerne, ale przede wszystkim wartościowe. Perfekcjonizm sprawia, że w mojej głowie pojawiają się myśli:

  • “Jeszcze nie wiesz dostatecznie dużo, by się wypowiedzieć na ten temat.”,
  • “A co jeśli o czymś zapomnisz?”,
  • “Czy ten przykład dobrze obrazuje to co chciałem?”,
  • “Może inne źródła będą lepsze?”,
  • “Inni wiedzą więcej na ten temat, zostaw to im.”.

Piekło perfekcjonisty - zalety i wady

Wady perfekcjonizmu

Przede wszystkim perfekcjonizm nas hamuje. Przez szukanie wad, których nie ma lub są nieznaczące marnujemy sporo czasu i energii. Często zdarza się też, że nawet nie podejmujemy się pewnych zadań wiedząc, że nie wykonamy ich idealnie.

Zalety perfekcjonizmu

Należy pamiętać że kij zawsze ma dwa końce. Perfekcjonizm pozwala na dopracowanie produktu finalnego w każdym calu. Szczególnie przydaje się to gdy nasz produkt musi cechować się nienaganną jakością i niezawodnością.  Idealnym przykładem gdzie taki perfekcjonista mógłby się poczuć spełniony jest kontroler jakości czy tester.  Podczas wykonywania takiej pracy pewna doza “czepialstwa” i nadmiernego “drążenia tematu” jest wręcz wskazana.

Dlaczego taki temat na blogu programistycznym?

Temat ten poruszyłem na tym blogu, ponieważ sam jestem programistą i temat piekła perfekcjonisty dotyka mnie prawie codziennie. Zawsze szukam czegoś, co można by poprawić, kolejnych metod refaktoryzacji kodu czy usprawnienia skryptów. Co ważne, wpis ten pisze z mojej perspektywy i nie poruszam aspektów perfekcjonizmu, które mnie nie dotyczą. Nie jestem też psychologiem ani terapeutą, więc nie podaję sposobów na radzenie sobie z perfekcjonizmem (nie chcę nikomu w ten sposób zaszkodzić). Jeśli jesteś perfekcjonistą i chcesz z tym walczyć, skonsultuj się w tej sprawie ze specjalistą.

Wracając do tematu – nawet nie wyobrażamy sobie jak wielka jest liczba projektów, które przez przesadną dbałość o szczegóły nigdy nie ujrzały światła dziennego. Spora część z nich zakończyła swój żywot przed napisaniem pierwszej linii kodu. Paradoksem perfekcjonizmu jest, że chcąc dostarczać produkt idealny marnujemy tak naprawdę swój potencjał.

Chociażby wystarczy spojrzeć na kod. Technik pisania kodu jest multum. Mamy różne konwencje, wzorce i praktyki. Które są właściwe? Tak naprawdę na to pytanie nie ma odpowiedzi – każdy ma swoje racje, poglądy i przyzwyczajenia.

W podsumowaniu, proszę każdego perfekcjonistę, który przeczytał ten artykuł o podzielenie się w komentarzu swoimi przemyśleniami. Oczywiście jeśli nim nie jesteś, to również zachęcam cię do pozostawienia komentarza oraz oceny.

Źródła i materiały dodatkowe

http://www.centrumdobrejterapii.pl/materialy/czym-jest-perfekcjonizm/
https://youtu.be/qKf37FnnCgY