Czy programista powinien pracować po godzinach?
1. Dlaczego w ogóle zadaję sobie to pytanie?
Początku tego pytania trzeba szukać w pewnej mojej rozmowie z osobą, która nie jest programistą. W pewnym momencie rzucił taką uwagę: "Słuchaj, a jak ty nadążasz za tymi wszystkimi nowymi technologiami? Przecież one się zmieniają co chwilę, a w pracy musisz pracować, więc kiedy się uczysz?". I wtedy coś we mnie kliknęło. Nie tyle jego pytanie mnie zaskoczyło, co moja własna reakcja na nie.
Jako ktoś, kto uwielbia analizować ludzką naturę - może to brzmi pretensjonalnie, ale naprawdę fascynuje mnie to, jak działamy - zacząłem przyglądać się samemu sobie. Kiedy programuję? Dlaczego programuję? I czy rzeczywiście muszę siedzieć przed komputerem każdej wolnej chwili, żeby być dobrym programistą? Po prostu Quo Vadis.
2. Mit programisty-eremity
Istnieje takie powszechne przekonanie, że programista to ktoś, kto żyje przed komputerem. Że siedzi w piwnicy, pije litrami kawę i koduje 16 godzin dziennie. To chyba jeden z najbardziej szkodliwych mitów naszej branży. Sam będąc jeszcze w szkole średniej tak wyobrażałem sobie pracę programisty. A nawet był taki okres, że rzeczywiście tak wyglądało w czasie pisania pracy dyplomowej na studiach inżynierskich. Drugi taki okres był przy wydaniu gry w Unity przeznaczonej do edukacji dzieci. Rozpoczęła się pandemia, a czas na napisanie był na wczoraj.
Pamiętam czasy, gdy pracowałem jako trener programowania i programista aplikacji dla dzieci. To była praca, która wymagała nie tylko pisania kodu, ale też ciągłego uczenia się nowych rzeczy - dzieci są bezlitosne, jeśli nie nadążasz za ich ciekawością. Wychodziłem z pracy regularnie o 20:00, ale nie dlatego, że musiałem. Brałem na siebie dużo - poprawki po projektach uczniów, choć nie było to obowiązkowe, wymyślanie nowych zagadek programistycznych, przygotowywanie materiałów. Dużo od siebie oczekiwałem i czułem, że każda chwila, którą nie poświęcam na naukę czy doskonalenie, to stracona szansa.
Takie podejście prowadzi prosto do wypalenia zawodowego. I to nie jest pusta fraza - widziałem ludzi, którzy po kilku latach takiego trybu życia tracili całą motywację. Ze mną na pewnym etapie było podobnie. Nagle praca, która kiedyś sprawiała im radość, stawała się udręką. To jak z jedzeniem: jeśli będziesz jadł tylko pizzę przez miesiąc, w końcu sama myśl o niej zacznie cię obrzydzać. W pewnym momencie postawiłem na zmianę, całkowite wyciszenie, odpoczynek i powrót na rynek zawodowy w nowym miejscu, co dało mi ogromnego kopa motywacyjnego, radość każdego dnia pracy, która trwa nadal.
3. Wewnętrzna presja - najgorsza z wszystkich
Czy kiedykolwiek czułem presję, żeby programować po godzinach? Zewnętrznej presji raczej nie doświadczyłem - miałem szczęście pracować w miejscach, gdzie szanowano work-life balance. Ale presja wewnętrzna? O, to była inna historia.
Ta presja to taki dziwny koktajl z głodu wiedzy, dopaminy i strachu przed zastaniem w tyle. Pamiętam wieczory, kiedy wracałem do domu po całym dniu i pierwszą rzeczą, którą robiłem, było... włączanie laptopa i otwieranie IDE. Nie dlatego, że musiałem, ale dlatego, że chciałem poznać ten nowy język, który widziałem w ofercie pracy, albo zrozumieć, jak działa ten framework, o którym wszyscy rozmawiali na Twitterze.
To był rodzaj narkotyku. System nagrody w mózgu działał pełną parą - każdy rozwiązany problem dawał ten zastrzyk satysfakcji. "Aha! Teraz rozumiem, jak działa „dekorator” w Python Django!" - i już można było siedzieć nad kodem do pierwszej w nocy.
Ale z czasem zacząłem się zastanawiać: czy to zdrowe? Czy rzeczywiście muszę poświęcać każdy wolny moment na naukę, żeby być dobrym programistą?
4. Oczekiwania kontra rzeczywistość w firmach
Sprawa jest skomplikowana, jeśli chodzi o to, czego oczekują od nas firmy. Z jednej strony, każda szanująca się firma mówi o work-life balance i o tym, że nie oczekuje od pracowników nadgodzin. Z drugiej strony, branża IT jest tak dynamiczna, że ciągły rozwój to nie opcja, ale konieczność.
Problem w tym, że nie zawsze ten rozwój musi oznaczać dodatkowe godziny przed komputerem w domu. W dobrych firmach część czasu pracy jest przeznaczona na naukę, eksperymenty, czytanie dokumentacji. Ale serio - czy ktoś z nas nie chodził na szkolenia czy konferencje w weekend? Czy nie czytał artykułów wieczorem? Dojście do profesjonalizmu w naszej branży rzadko ogranicza się tylko do godzin biurowych.
Tutaj pojawia się jednak bardzo ważna kwestia: pilnowania własnego zdrowia i wypoczynku. Miałem kiedyś kolegę na studiach, który tak się zapatrzył na naukę nowych technologii, że przestał dostrzegać wszystko inne. Jego świat skurczył się do rozmiaru monitora. W końcu wylądował u psychologa, bo jak sam mówił, "przestałem widzieć las za drzewami". Gdy myśli się tylko o nauce, patrzy się za wąsko - na siebie, na świat, na życie.
5. Kodowanie po godzinach - za i przeciw
5.1. Zalety są oczywiste... ale czy na pewno?
Szybszy rozwój zawodowy to oczywiście główna zaleta dodatkowego kodowania. Kto więcej ćwiczy, ten lepiej gra - to działa w sporcie, muzyce i programowaniu. Twoja wartość na rynku pracy rośnie, portfolio się rozbudowuje, a możliwości kariery się powiększają.
Pamiętam, jak cztery lata temu myślałem swoim mini projekcie - aplikacji do zarządzania finansami domowymi. Zacząłem ją robić wieczorami, bo frustrowany byłem tym, jak działają dostępne na rynku rozwiązania. Po sześciu miesiącach nie tylko miał świetny projekt, który pozwolił mi odpowiedzieć na wiele pytań, ale co więcej ogromne doświadczenia, które dziś procentuje przy innych pisanych rozwiązaniach.
To też może być sposób na realizację pasji. Nie każdy ma szczęście pracować nad projektami, które go kręcą. Czasem trzeba rano debugować legacy kod, a wieczorem można pobawić się najnowszym Vue. Ta wolność wyboru technologii i projektów to coś bezcennego. U mnie na szczęście już sama praca dostarcza mnóstwo wyzwań i ciekawych projektów.
5.2. Ale pułapki czają się na każdym kroku
Wypalenie zawodowe to pierwszy i najpoważniejszy problem. To nie jest tak, że pojawia się nagle - to proces. Zaczyna się od "jeszcze tylko skończę ten tutorial", przez "jeszcze tylko refaktoryzacja tego komponentu", aż do momentu, gdy patrzysz na kod i nic już nie czujesz. Ani radości, ani satysfakcji, ani nawet frustracji. Pustka.
Ale najważniejszy punkt, o którym muszę napisać, to problemy z relacjami i życiem prywatnym. Zdrowe podejście do programowania - i do życia w ogóle - powinno opierać się na odpowiednim balansie. Nic, nawet najlepszy projekt na świecie, nie zastąpi spotkania z drugim człowiekiem, spaceru po lesie, czy zwykłej rozmowy przy kawie.
To, jak postrzegamy świat, wynika właśnie z naszego otoczenia. Jeśli całe twoje otoczenie to monitor, klawiatura i Stack Overflow, to twój sposób myślenia stanie się równie ograniczony. Miałem znajomego, który tak się zagłębił w świat kodu, że przestał rozumieć żarty, które nie były związane z programowaniem. Brzmi śmiesznie, ale to była smutna prawda.
6. Kiedy warto, a kiedy lepiej dać sobie spokój?
6.1. Przebranżowienie - tutaj jest sens
Jeśli chcesz się przebranżowić, kodowanie po godzinach to nie wybór, to konieczność. Sam przechodziłem przez ten proces kilka lat temu. Pracowałem wtedy jako trener programowa i po części programista gier dla dzieci, ale ciągnęło mnie do prawdziwego programowania. Pamiętam te wieczory - wracałem z pracy po godzinie 20:00, jadłem kolację i siadałem do nauki SQL, PHP, JavaScript.
Początkowo to była mordęga. Po wielu godzinach w poprzedniej pracy, w której często były stresujące sytuacje, trudno było się motywować do kolejnych godzin przed komputerem. Ale wiedziałem, że to jedyna droga. Przez kilka miesięcy praktycznie każdy wieczór spędzałem na nauce poprzez kursy online, po własne małe projekty. W końcu wypalenie we wcześniejszej pracy, przerwa na kilka miesięcy, nowe podejście i zadziałało wszystko.
Z perspektywy czasu to był strzał w dziesiątkę. Bez tego dodatkowego wysiłku nigdy nie zmieniłbym branży. Ale ważne jest to, że miałem konkretny cel i określony czas - wiedziałem, że to nie będzie trwało wiecznie.
6.2. Kiedy powiedzieć "stop"
Nie należy kodować, gdy czujesz się słabo, jesteś zmęczony albo masz na głowie coś, co zawraca ci głowę. Kod napisany w takim stanie to zwykle kod do wyrzucenia. A poza tym, czasem mózg potrzebuje odpoczynku, żeby przetworzyć informacje.
Pamiętam sytuację sprzed roku - miałem problem z jednym algorytmem w projekcie dla samego siebie. Siedziałem nad nim całe popołudnie, potem cały wieczór. O północy wciąż nie działało. Następnego dnia rano, przy kawie, rozwiązanie przyszło samo. Czasem najlepszą rzeczą, którą możesz zrobić dla swojego kodu, jest odejście od komputera.
Programowanie po godzinach to też dobry sposób na walkę z nudą czy prokrastynacją. Jeśli siedzisz i scrollujesz bezmyślnie social media, lepiej otwórz IDE. Ale ważne, żeby wyznaczyć sobie mierzalny cel - konkretną umiejętność, która chcesz opanować, albo projekt, który chcesz skończyć. Programowanie bez celu to tylko marnowanie czasu.
7. Moje podejście - higiena snu i 3 popołudnia w tygodniu
Sam uważam, że kodowanie po godzinach jest konieczne, ale z ludzkim podejściem do swoich umiejętności i dyspozycji danego dnia. Kluczowa jest tutaj higiena snu. Jeśli nie śpisz dostatecznie, to każda nauka, każdy kod będzie gorszy. Mózg bez odpoczynku to jak komputer bez restartu - wszystko działa wolniej i mniej niezawodnie.
Wypracowałem sobie system: maksymalnie 3 popołudnia w tygodniu po 2-3 godziny na swobodne programowanie. To pozwala mi się rozwijać, ale nie niszczy życia prywatnego. Natomiast nie wyobrażam sobie rzeczywistości bez codziennego spaceru - dotlenienie głowy, naturalna dopamina ze spaceru czy sportu to coś nieocenionego.
Równie ważne są rozmowy z ludźmi, żeby mieć poczucie przynależności, wyjścia na rozrywkę - kręgle, bilard, dobre jedzenie w miłym towarzystwie. To wszystko składa się na balans, bez którego nawet najlepsze umiejętności programistyczne nic nie znaczą.
8. Moje projekty - od listy marzeń do rzeczywistości
Przeważnie wymyślam sobie projekty. Mam długą listę tego, co chcę zrobić - czasem schodzą one z listy, gdy przyjdzie jakiś nowy pomysł lub potrzeba. Niedawno postanowiłem połączyć dwie rzeczy: chęć stworzenia czegoś związanego ze zwierzętami żyjącymi w ZOO oraz poznanie Vue.js, z którym wcześniej nie miałem do czynienia.
Powstała aplikacja, która prezentuje informacje o zwierzętach w ogrodach zoologicznych - ich historie, ciekawostki, zdjęcia. Mogłem przy okazji pobawić się komponentami Vue, systemem reaktywności i innymi ficzerami tego frameworka. Projekt ten można znaleźć w moich projektach pokazowych i był idealnym przykładem tego, jak można uczyć się nowych technologii przez praktyczne zastosowanie.
9. Balans - klucz do wszystkiego
Znalazłem idealny balans między pracą, życiem a pasją i dodatkowym programowaniem. W pewnym momencie mówię sobie po prostu: dość, teraz czas na osoby mi bliskie. Kluczowe są wypracowane nawyki - te moje maksymalnie 3 popołudnia po 2-3 godziny to nie jest żelazna reguła, ale raczej wytyczna.
W ostatnim czasie miałem ten czas wypchany pod korek - remont mieszkania, organizacja projektu mebli, zajęcie się zdrowiem poprzez regularne treningi, spotkania towarzyskie. Ale udało mi się wygospodarować czas na programowanie, który nie niszczy mnie ani fizycznie, ani psychicznie. To kwestia priorytetów i świadomego planowania.
10. Rady dla tych, którzy czują presję
Work-life balance to nie slogan marketingowy, to musi być styl życia. W nim samym trzeba znaleźć czas na rodzinę, przyjaciół, na samego siebie - żeby w ciszy coś zrozumieć, wyjść na spacer, przejażdżkę rowerem, odnaleźć samego siebie.
Jeśli czujesz presję, żeby kodować po pracy, zastanów się: skąd ona się bierze? Czy to zewnętrzne oczekiwania, czy twoja wewnętrzna potrzeba? Czy masz konkretny cel, czy tylko siedzisz przed komputerem, bo "tak trzeba"?
Pamiętaj też, że są inne sposoby dbania o karierę - można prowadzić bloga, nagrywać podcasty, tworzyć poradniki, uczestniczyć w społeczności programistów. Nie każdy rozwój musi oznaczać pisanie kodu.
11. Końcowe przemyślenia
Myślę, że programowanie po godzinach to konieczność, ale powinna to być pasja skierowana do samego siebie, chęć rozwoju tego, czego chcę się nauczyć. Nie można opierać się na presji zewnętrznej - trzeba postawić na motywację wewnętrzną.
Najważniejsze jest indywidualne zbadanie tego, co dla mnie jest ważne. Oczywiście każdy z nas ma jakieś zobowiązania - rodzinę, ludzi, którzy są obok nas, przyjaciół, zwierzęta. Programowanie nie może stać się całym życiem. Życie to nie programowanie - programowanie powinno być jego pięknym elementem, talentem, który można szlifować.
Ale na końcu dnia, gdy zamykam laptopa i patrzę przez okno, wiem jedno: kod to tylko narzędzie. Ważne jest to, co z tym narzędziem robimy i jak wpływa to na nasze życie i życie innych. A jeśli programowanie po godzinach sprawia, że to życie staje się bogatsze i bardziej satysfakcjonujące - to znak, że robimy to dobrze.
1. Dlaczego w ogóle zadaję sobie to pytanie?
Początku tego pytania trzeba szukać w pewnej mojej rozmowie z osobą, która nie jest programistą. W pewnym momencie rzucił taką uwagę: "Słuchaj, a jak ty nadążasz za tymi wszystkimi nowymi technologiami? Przecież one się zmieniają co chwilę, a w pracy musisz pracować, więc kiedy się uczysz?". I wtedy coś we mnie kliknęło. Nie tyle jego pytanie mnie zaskoczyło, co moja własna reakcja na nie.
Jako ktoś, kto uwielbia analizować ludzką naturę - może to brzmi pretensjonalnie, ale naprawdę fascynuje mnie to, jak działamy - zacząłem przyglądać się samemu sobie. Kiedy programuję? Dlaczego programuję? I czy rzeczywiście muszę siedzieć przed komputerem każdej wolnej chwili, żeby być dobrym programistą? Po prostu Quo Vadis.
2. Mit programisty-eremity
Istnieje takie powszechne przekonanie, że programista to ktoś, kto żyje przed komputerem. Że siedzi w piwnicy, pije litrami kawę i koduje 16 godzin dziennie. To chyba jeden z najbardziej szkodliwych mitów naszej branży. Sam będąc jeszcze w szkole średniej tak wyobrażałem sobie pracę programisty. A nawet był taki okres, że rzeczywiście tak wyglądało w czasie pisania pracy dyplomowej na studiach inżynierskich. Drugi taki okres był przy wydaniu gry w Unity przeznaczonej do edukacji dzieci. Rozpoczęła się pandemia, a czas na napisanie był na wczoraj.
Pamiętam czasy, gdy pracowałem jako trener programowania i programista aplikacji dla dzieci. To była praca, która wymagała nie tylko pisania kodu, ale też ciągłego uczenia się nowych rzeczy - dzieci są bezlitosne, jeśli nie nadążasz za ich ciekawością. Wychodziłem z pracy regularnie o 20:00, ale nie dlatego, że musiałem. Brałem na siebie dużo - poprawki po projektach uczniów, choć nie było to obowiązkowe, wymyślanie nowych zagadek programistycznych, przygotowywanie materiałów. Dużo od siebie oczekiwałem i czułem, że każda chwila, którą nie poświęcam na naukę czy doskonalenie, to stracona szansa.
Takie podejście prowadzi prosto do wypalenia zawodowego. I to nie jest pusta fraza - widziałem ludzi, którzy po kilku latach takiego trybu życia tracili całą motywację. Ze mną na pewnym etapie było podobnie. Nagle praca, która kiedyś sprawiała im radość, stawała się udręką. To jak z jedzeniem: jeśli będziesz jadł tylko pizzę przez miesiąc, w końcu sama myśl o niej zacznie cię obrzydzać. W pewnym momencie postawiłem na zmianę, całkowite wyciszenie, odpoczynek i powrót na rynek zawodowy w nowym miejscu, co dało mi ogromnego kopa motywacyjnego, radość każdego dnia pracy, która trwa nadal.
3. Wewnętrzna presja - najgorsza z wszystkich
Czy kiedykolwiek czułem presję, żeby programować po godzinach? Zewnętrznej presji raczej nie doświadczyłem - miałem szczęście pracować w miejscach, gdzie szanowano work-life balance. Ale presja wewnętrzna? O, to była inna historia.
Ta presja to taki dziwny koktajl z głodu wiedzy, dopaminy i strachu przed zastaniem w tyle. Pamiętam wieczory, kiedy wracałem do domu po całym dniu i pierwszą rzeczą, którą robiłem, było... włączanie laptopa i otwieranie IDE. Nie dlatego, że musiałem, ale dlatego, że chciałem poznać ten nowy język, który widziałem w ofercie pracy, albo zrozumieć, jak działa ten framework, o którym wszyscy rozmawiali na Twitterze.
To był rodzaj narkotyku. System nagrody w mózgu działał pełną parą - każdy rozwiązany problem dawał ten zastrzyk satysfakcji. "Aha! Teraz rozumiem, jak działa „dekorator” w Python Django!" - i już można było siedzieć nad kodem do pierwszej w nocy.
Ale z czasem zacząłem się zastanawiać: czy to zdrowe? Czy rzeczywiście muszę poświęcać każdy wolny moment na naukę, żeby być dobrym programistą?
4. Oczekiwania kontra rzeczywistość w firmach
Sprawa jest skomplikowana, jeśli chodzi o to, czego oczekują od nas firmy. Z jednej strony, każda szanująca się firma mówi o work-life balance i o tym, że nie oczekuje od pracowników nadgodzin. Z drugiej strony, branża IT jest tak dynamiczna, że ciągły rozwój to nie opcja, ale konieczność.
Problem w tym, że nie zawsze ten rozwój musi oznaczać dodatkowe godziny przed komputerem w domu. W dobrych firmach część czasu pracy jest przeznaczona na naukę, eksperymenty, czytanie dokumentacji. Ale serio - czy ktoś z nas nie chodził na szkolenia czy konferencje w weekend? Czy nie czytał artykułów wieczorem? Dojście do profesjonalizmu w naszej branży rzadko ogranicza się tylko do godzin biurowych.
Tutaj pojawia się jednak bardzo ważna kwestia: pilnowania własnego zdrowia i wypoczynku. Miałem kiedyś kolegę na studiach, który tak się zapatrzył na naukę nowych technologii, że przestał dostrzegać wszystko inne. Jego świat skurczył się do rozmiaru monitora. W końcu wylądował u psychologa, bo jak sam mówił, "przestałem widzieć las za drzewami". Gdy myśli się tylko o nauce, patrzy się za wąsko - na siebie, na świat, na życie.
5. Kodowanie po godzinach - za i przeciw
5.1. Zalety są oczywiste... ale czy na pewno?
Szybszy rozwój zawodowy to oczywiście główna zaleta dodatkowego kodowania. Kto więcej ćwiczy, ten lepiej gra - to działa w sporcie, muzyce i programowaniu. Twoja wartość na rynku pracy rośnie, portfolio się rozbudowuje, a możliwości kariery się powiększają.
Pamiętam, jak cztery lata temu myślałem swoim mini projekcie - aplikacji do zarządzania finansami domowymi. Zacząłem ją robić wieczorami, bo frustrowany byłem tym, jak działają dostępne na rynku rozwiązania. Po sześciu miesiącach nie tylko miał świetny projekt, który pozwolił mi odpowiedzieć na wiele pytań, ale co więcej ogromne doświadczenia, które dziś procentuje przy innych pisanych rozwiązaniach.
To też może być sposób na realizację pasji. Nie każdy ma szczęście pracować nad projektami, które go kręcą. Czasem trzeba rano debugować legacy kod, a wieczorem można pobawić się najnowszym Vue. Ta wolność wyboru technologii i projektów to coś bezcennego. U mnie na szczęście już sama praca dostarcza mnóstwo wyzwań i ciekawych projektów.
5.2. Ale pułapki czają się na każdym kroku
Wypalenie zawodowe to pierwszy i najpoważniejszy problem. To nie jest tak, że pojawia się nagle - to proces. Zaczyna się od "jeszcze tylko skończę ten tutorial", przez "jeszcze tylko refaktoryzacja tego komponentu", aż do momentu, gdy patrzysz na kod i nic już nie czujesz. Ani radości, ani satysfakcji, ani nawet frustracji. Pustka.
Ale najważniejszy punkt, o którym muszę napisać, to problemy z relacjami i życiem prywatnym. Zdrowe podejście do programowania - i do życia w ogóle - powinno opierać się na odpowiednim balansie. Nic, nawet najlepszy projekt na świecie, nie zastąpi spotkania z drugim człowiekiem, spaceru po lesie, czy zwykłej rozmowy przy kawie.
To, jak postrzegamy świat, wynika właśnie z naszego otoczenia. Jeśli całe twoje otoczenie to monitor, klawiatura i Stack Overflow, to twój sposób myślenia stanie się równie ograniczony. Miałem znajomego, który tak się zagłębił w świat kodu, że przestał rozumieć żarty, które nie były związane z programowaniem. Brzmi śmiesznie, ale to była smutna prawda.
6. Kiedy warto, a kiedy lepiej dać sobie spokój?
6.1. Przebranżowienie - tutaj jest sens
Jeśli chcesz się przebranżowić, kodowanie po godzinach to nie wybór, to konieczność. Sam przechodziłem przez ten proces kilka lat temu. Pracowałem wtedy jako trener programowa i po części programista gier dla dzieci, ale ciągnęło mnie do prawdziwego programowania. Pamiętam te wieczory - wracałem z pracy po godzinie 20:00, jadłem kolację i siadałem do nauki SQL, PHP, JavaScript.
Początkowo to była mordęga. Po wielu godzinach w poprzedniej pracy, w której często były stresujące sytuacje, trudno było się motywować do kolejnych godzin przed komputerem. Ale wiedziałem, że to jedyna droga. Przez kilka miesięcy praktycznie każdy wieczór spędzałem na nauce poprzez kursy online, po własne małe projekty. W końcu wypalenie we wcześniejszej pracy, przerwa na kilka miesięcy, nowe podejście i zadziałało wszystko.
Z perspektywy czasu to był strzał w dziesiątkę. Bez tego dodatkowego wysiłku nigdy nie zmieniłbym branży. Ale ważne jest to, że miałem konkretny cel i określony czas - wiedziałem, że to nie będzie trwało wiecznie.
6.2. Kiedy powiedzieć "stop"
Nie należy kodować, gdy czujesz się słabo, jesteś zmęczony albo masz na głowie coś, co zawraca ci głowę. Kod napisany w takim stanie to zwykle kod do wyrzucenia. A poza tym, czasem mózg potrzebuje odpoczynku, żeby przetworzyć informacje.
Pamiętam sytuację sprzed roku - miałem problem z jednym algorytmem w projekcie dla samego siebie. Siedziałem nad nim całe popołudnie, potem cały wieczór. O północy wciąż nie działało. Następnego dnia rano, przy kawie, rozwiązanie przyszło samo. Czasem najlepszą rzeczą, którą możesz zrobić dla swojego kodu, jest odejście od komputera.
Programowanie po godzinach to też dobry sposób na walkę z nudą czy prokrastynacją. Jeśli siedzisz i scrollujesz bezmyślnie social media, lepiej otwórz IDE. Ale ważne, żeby wyznaczyć sobie mierzalny cel - konkretną umiejętność, która chcesz opanować, albo projekt, który chcesz skończyć. Programowanie bez celu to tylko marnowanie czasu.
7. Moje podejście - higiena snu i 3 popołudnia w tygodniu
Sam uważam, że kodowanie po godzinach jest konieczne, ale z ludzkim podejściem do swoich umiejętności i dyspozycji danego dnia. Kluczowa jest tutaj higiena snu. Jeśli nie śpisz dostatecznie, to każda nauka, każdy kod będzie gorszy. Mózg bez odpoczynku to jak komputer bez restartu - wszystko działa wolniej i mniej niezawodnie.
Wypracowałem sobie system: maksymalnie 3 popołudnia w tygodniu po 2-3 godziny na swobodne programowanie. To pozwala mi się rozwijać, ale nie niszczy życia prywatnego. Natomiast nie wyobrażam sobie rzeczywistości bez codziennego spaceru - dotlenienie głowy, naturalna dopamina ze spaceru czy sportu to coś nieocenionego.
Równie ważne są rozmowy z ludźmi, żeby mieć poczucie przynależności, wyjścia na rozrywkę - kręgle, bilard, dobre jedzenie w miłym towarzystwie. To wszystko składa się na balans, bez którego nawet najlepsze umiejętności programistyczne nic nie znaczą.
8. Moje projekty - od listy marzeń do rzeczywistości
Przeważnie wymyślam sobie projekty. Mam długą listę tego, co chcę zrobić - czasem schodzą one z listy, gdy przyjdzie jakiś nowy pomysł lub potrzeba. Niedawno postanowiłem połączyć dwie rzeczy: chęć stworzenia czegoś związanego ze zwierzętami żyjącymi w ZOO oraz poznanie Vue.js, z którym wcześniej nie miałem do czynienia.
Powstała aplikacja, która prezentuje informacje o zwierzętach w ogrodach zoologicznych - ich historie, ciekawostki, zdjęcia. Mogłem przy okazji pobawić się komponentami Vue, systemem reaktywności i innymi ficzerami tego frameworka. Projekt ten można znaleźć w moich projektach pokazowych i był idealnym przykładem tego, jak można uczyć się nowych technologii przez praktyczne zastosowanie.
9. Balans - klucz do wszystkiego
Znalazłem idealny balans między pracą, życiem a pasją i dodatkowym programowaniem. W pewnym momencie mówię sobie po prostu: dość, teraz czas na osoby mi bliskie. Kluczowe są wypracowane nawyki - te moje maksymalnie 3 popołudnia po 2-3 godziny to nie jest żelazna reguła, ale raczej wytyczna.
W ostatnim czasie miałem ten czas wypchany pod korek - remont mieszkania, organizacja projektu mebli, zajęcie się zdrowiem poprzez regularne treningi, spotkania towarzyskie. Ale udało mi się wygospodarować czas na programowanie, który nie niszczy mnie ani fizycznie, ani psychicznie. To kwestia priorytetów i świadomego planowania.
10. Rady dla tych, którzy czują presję
Work-life balance to nie slogan marketingowy, to musi być styl życia. W nim samym trzeba znaleźć czas na rodzinę, przyjaciół, na samego siebie - żeby w ciszy coś zrozumieć, wyjść na spacer, przejażdżkę rowerem, odnaleźć samego siebie.
Jeśli czujesz presję, żeby kodować po pracy, zastanów się: skąd ona się bierze? Czy to zewnętrzne oczekiwania, czy twoja wewnętrzna potrzeba? Czy masz konkretny cel, czy tylko siedzisz przed komputerem, bo "tak trzeba"?
Pamiętaj też, że są inne sposoby dbania o karierę - można prowadzić bloga, nagrywać podcasty, tworzyć poradniki, uczestniczyć w społeczności programistów. Nie każdy rozwój musi oznaczać pisanie kodu.
11. Końcowe przemyślenia
Myślę, że programowanie po godzinach to konieczność, ale powinna to być pasja skierowana do samego siebie, chęć rozwoju tego, czego chcę się nauczyć. Nie można opierać się na presji zewnętrznej - trzeba postawić na motywację wewnętrzną.
Najważniejsze jest indywidualne zbadanie tego, co dla mnie jest ważne. Oczywiście każdy z nas ma jakieś zobowiązania - rodzinę, ludzi, którzy są obok nas, przyjaciół, zwierzęta. Programowanie nie może stać się całym życiem. Życie to nie programowanie - programowanie powinno być jego pięknym elementem, talentem, który można szlifować.
Ale na końcu dnia, gdy zamykam laptopa i patrzę przez okno, wiem jedno: kod to tylko narzędzie. Ważne jest to, co z tym narzędziem robimy i jak wpływa to na nasze życie i życie innych. A jeśli programowanie po godzinach sprawia, że to życie staje się bogatsze i bardziej satysfakcjonujące - to znak, że robimy to dobrze.