10X Programmers – Flow programowania

Flow

Przeczytałem ostatnio ciekawy artykuł na temat mitycznych 10X programmers – The 10X Developer in You. Aurot poruszył w nim bardzo ważną rzecz, tak zwany flow programowania. Kiedy uczęszczałem jeszcze na kursy tańca mój instruktor cały czas przypominał o tym, żeby dążyć do tego właśnie super stanu jakim jest flow. Flow to jedność ducha i ciała, harmonia w każdym ruchu, spójność i wynikowość. Każdy ruch wynika z poprzedniego. Każda myśl jest wynikiem poprzedniej myśli. Tak samo jest w programowaniu, kiedy uzyskamy stan absolutnej koncentracji i osiągniemy właśnie ten flow programowania, możemy stać się 10X pragrammers. Przynajmniej na czas dopóki nic nas nie rozproszy.

Flow to pewnego rodzaju transformacja umysłu, to tak jakbyśmy zamienili się w super sajana. Właściwie dokładnie tak, nasza produktywność wzrasta 10-krotnie. Oczywiście taki boost focusa nie daje nam nagle niesamowitych, nadludzkich umiejętności kodowania, a jedynie rozbudza w nas to co już umiemy i podciąga nasze zdolności do maksimum. Aby ednak podtrzymać ten stan, potrzebujemy energi, chi, paliwa. Im dłużej trwa ten stan, tym więcej energi potrzebujemy.

Skąd czerpać energie?

Ile programistów tyle sposobów. Każdy lubi coś innego. Na pewno będzie to porządny sen, trochę ruchu i dobre jedzenie. To wszystko napełni nasze ciało, ale musimy też pamiętać o umyśle. Wkońcu flow łączy obie te rzeczy, więc jeżeli jedno będzie słabsze nie osiągniemy naszego maksimum. A pokarm dla ducha każdy ma swój. Ja mam muzykę, chillout, origami, spotkania ze znajomymi, rodziną. W każdym razie jak najdalej od programowania. Dużo ruchu, dla równowagi 8 godziń na krześle. Wszelaka rozrywka dla mózgu, który nie będzie musiał za dużo się namęczyć i mógł odpocząć. A gdy już się naładuje mogę wrócić do pracy.

Co przeszkadza w osiągnięciu Flow?

Gdybym miał wskazać najważniejszę przeszkody w uzyskaniu flowa, to byłoby to bez wątpienia atmosfera pracy. Ciężko jest czerpać przyjemność z programowania kiedy nie zostaje to przez nikogo docenione, kiedy jest się teoretycznie jednym z ważniejszych ogniw w firmie, a mimo to oglądamy ludzi którzy mają lepsze warunki i przywileje niż my. Ciężko pracować kiedy oczekują jedynie produktu w terminie a nie oferują nic w zamian. Koniec końców pracujemy by żyć, a nie żyjemy po to by pracować. Oczekujemy więc wynagrodzenia za pracę, ale samo to też nie daje nam satysfakcji. Daje nam ją skończenie produktu, który będzie solidny, dobrze zakodowany, elegancki. Gdy zostaniemy docenieni za to co zrobiliśmy, zobaczymy że ludzie czerpią korzyści z naszego dzieła. Kiedy ktoś poczuje przyjemność z korzystania z produktu jaki mu dostarczyliśmy. Niestety, programowanie to pewnego rodzaju sztuka, a nie mechaniczna powtarzalna praca jak np. na produkcji, gdzie im więcej tym lepiej. Tutaj liczy się raczej jakość niź ilość kodu, więc pracowanie bezsensownych godziń wcale nie daje lepszych efektów. Jeżeli ostatnie 3 godziny w pracy były poświęcone na to by „być” tam gdzie się jest, no bo przecież pracuje do n-tej godziny. Ważne jest aby potrafić stworzyć zespół, w którym obie strony, szefostwo i pracownicy, wymagają i dają a nie gdy tylko wymagają.

Co niszczy Flow?

Ważne jest, żeby być dobrze wypoczętym i zaspokojonym pod każdym wzgędem. Inaczej nasz mózg co chwile będzie się dopominał rozrywki:
„Hej popatrz na te śmieszne kotki!”
– mózgu pracuje
„No to popracowałeś…”
I koniec z planami na zrobienie czegoś fajnego.
Dalej mogą odezwać się nasze plecy, za mało ruchu, za dużo siedzenia, coś nas boli, coś nas gryzie. To rozprasza. No a tam jeszcze siedzi brzuch, który zjadłby coś dobrego. Ciężko nad tym wszystkim zapanować, ale ogarnięcie siebie to pierwszy krok to uzyskania flowa.
Jeżeli macie to szczęście i w pracy macie jakiś darmowy bufet, korzystajcie, owoce pozytywnie wpływają na samopoczucie i są zdrowe! Osobiscie szczęścia takiego nie mam, ale nikomu to nie przeszkadza, bo i po co dbać o to by pracownicy byli szczęśliwi.
W każdym razie, kiedy już zabierzemy się do pracy, każda utrata koncentracji jest utratą tego flow. Kiedy ktoś się pyta Ciebie, jak to zrobić? Przerywa. Gdy szef mówi Ci popraw to. Przerwya. To tak jakby za każdym razem dostawać cios w twarz który redukuje naszą tak cenną energie. Wejście w flow też pochłania energie więc im więcej razy ktoś nam przerwie, tym ciężej będzie nam odzyskać nasz flow.

Co pomaga się transformować?

Ważnym elementem pomagającym w uzyskaniu tego flow jest też całkowite zrozumienie problemu, owinięcie go swoim umysłem kompletnie oraz zaplanowanie sobie zadań na te powiedzmy 3-4h do przerwy. Zaplanowanie w taki sposób aby jedno wynikało z drugienio w sposób płynny. Następną rzeczą jest motywacja. Jeżeli jej nam brakuje to ciężko oczekiwać przejścia do stanu w którym możemy tworzyć absolutnie epicki kod.

Osobiście mam czasem takie przebłyski częściej w domu niż pracy ze względu na atmosferę. Jednak dla mnie są też dodatkowe kryteria. Żebym osiągnął taki stan, muszę być w pełni zaangażowany w projekt i być przekonanym, że to co robimy jest dobre. Czasami wpadam w taki stan kiedy zaczynamy pisać nową rzecz i widzę jej potencjał. Gdy wiem, że może z niej wyjśc coś fajnego. Wtedy odlatuje na chwile i wpadam w swoistą dla mnie nirvane.

Dni w których nie powinniśmy być w pracy…

Zastanawia mnie jeszcze, co z tymi dniami w których po prostu nie powinno być nas w pracy. Kiedy każdy problem zajmuje nam 10x więcej czasu niż w stanie „normalnym”. Czy siedzenie 8 godziń w pracy, po to by napisać coś co możemy zrobić w 1h? Bez sensu. Niestety, niektórzy dalej żyją w przekonaniu, że praca bez przerwy przez 8h jest bardziej wydajna. Osobiscie uważam, że w taki dzień lepiej jest wstawić się do naszej łądowarki i naładować do pełna:)

About the author

Logos

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Możesz użyć następujących tagów oraz atrybutów HTML-a: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>