Blog
8 Agile-owych lekcji ze “Skazanego na trening”
Jakiś czas temu, “Skazany na trening” Paula Wade’a cieszył się w naszym zespole wielką popularnością. Jest to książka o kalistenice (ćwiczeniach siłowych przy użyciu wyłącznie masy własnego ciała). Tak, my developerzy nie jesteśmy wbrew pozorom zasiedziali! Ale nie o to chodzi. To, co mnie uderzyło, to jak wiele podobieństw do Agile zawiera filozofia Paula. Posłuchajmy co “Trener” ma do powiedzenia, bo może nas, Agile-owców, paru rzeczy nauczyć:
1. Nie potrzebujesz wyszukanego sprzętu by osiągnąć konkretne wyniki.
Skazany na trening: Posiadasz już wszystkie narzędzia, jakich potrzebujesz: własne ciało. Budowanie siły to kwestia inteligentej techniki a nie skomplikowanego, drogiego sprzętu. Posuwasz się do przodu nie dlatego, że kupujesz coraz cięższe hantle, ale dlatego, że wykorzystujesz coraz większy odsetek masy Twojego ciała. Zaletą takiego podejścia, poza niskim kosztem, jest to, że pozwala Ci ono osiągać świetne wyniki nawet jeśli nie masz dostępu do sprzętu.
Metodyki Agile: Nie potrzebujesz wyszukanych narzędzi do zarządzania projektami by osiągnąć wyśmienite efekty. Osiągasz postęp nie poprzez stopniowe przechodzenie na coraz bardziej złożone narzędzia czy procesy, ale poprzez stopniowe polepszanie swoich podstawowych umiejętności, takich jak komunikacja, kolaboracja czy empiryzm. Te umiejętności pozwolą Ci osiągnąć sukces w każdym środowisku i z użyciem dowolnych narzędzi – nawet tych, które nie zostały zaprojektowane z myślą o Agile.
2. Skup się na osiągnięciu mistrzostwa w jedynie kilku całościowych technikach.
Skazany na trening: Izolowane ćwiczenia są dobre by wyrzeźbić konkretną grupę mięśni, są jednak bezużyteczne jeśli chodzi o budowanie siły. Siła jest umiejętnością, zdolnością do używania całego ciała jednocześnie. Doskonalenie kilku holistycznych, angażujących całe ciało ćwiczeń pozwoli Ci nie tylko zbudować główne grupy mięśniowe, ale też wzmocnić Twoje mięśnie rdzeniowe, poprawić postawę ciała i wyćwiczyć koordynację – elementy, które “sklejają” mięśnie ze sobą, pozwalając im współpracować nad osiągnięciem wspólnego celu.
Metodyki Agile: Myśl o swoim procesie w całościowy sposób. Skup się na końcowym rezultacie kompletnego workflow, nie na lokalnych optymalizacjach. To, co czyni Twój proces efektywnym, to jak jego poszczególne elementy współpracują i jak dobre są Twoje bazowe umiejętności, które je “sklejają”: komunikacja, cross-funkcyjna współpraca, empiryczny sposób myślenia, transparencja itd.
3. Celuj w prostotę (ale nie myl “prostego” z “łatwym”).
Skazany na trening: Nie ma sensu robienie pięciu różnych rodzajów pompek. Korzyści z przećwiczenia mięśni w bardziej zróżnicowany sposób są znacznie mniejsze niż korzyści z doprowadzenia Twojej techniki do perfekcji. Przerzucenie się od czasu do czasu na inne ćwiczenie by uniknąć zastoju jest OK, ale poza tym trzymaj się podstaw. Nie myśl jednak, że w ten sposób będzie Ci łatwiej. Celem jest doprowadzenie Twojej techniki do perfekcji a nie wyćwiczenie rutynowego wykonania wyuczonych ruchów aż staną się łatwe.
Metodyki Agile: Agile jest złudnie proste. Jest zbudowane jedynie wokół kilku podstawowych zasad, takich jak empiryzm, komunikacja czy transparencja. Te zasady są nieskomplikowane. Ale osiągnięcie w nich mistrzostwa jest trudne. Nie potrzebujesz bez przerwy zmieniać formuły swojego retro. Nie potrzebujesz wyszukanych elektronicznych narzędzi, by je poprowadzić. To, czego FAKTYCZNIE potrzebujesz, to skupienie się na tym, by robić je za każdym razem coraz lepiej, coraz bliżej jego zamierzonego celu.
4. Skup swoje wysiłki wokół ciągłej progresji.
Skazany na trening: Cały program “Skazanego na trening” został zaprojektowany wokół progresji. Trenowanie w obrębie Twojej strefy komfortu nie uczyni Cię silniejszym. Spraw, żeby za każdym razem ćwiczenie było dla Ciebie większym wyzwaniem: wykorzystaj więcej swojej masy ciała, trenuj z większym skupieniem, popraw odrobinę swoją postawę. Nie istnieje sztywny cel, który da się osiągnąć; jedynym celem jest stawać się cały czas coraz lepszym.
Metodyki Agile: Nie da się w pełni nauczyć Agile ani robić go we właściwy sposób. To proces ciągłego doskonalenia, nigdy niekończąca się pętla “inspekcji i adaptacji”. Iteracyjna optymalizacja sposobu w jaki pracujesz jest równie ważna jak iteracyjne budowanie właściwego produktu. Pamiętaj o tym podczas swojej najbliższej retrospektywy: Twoim nadrzędnym celem nie jest rozwiązanie bieżących problemów, ale progresywne stawanie się coraz lepszym.
5. Zadbaj, by progres był bezpieczny.
Skazany na trening: Ciągły postęp oznacza wyjście poza Twoją strefę komfortu, jednak nie powyżej poziomu Twoich możliwości. Trenuj ciężko, ale bezpiecznie, albo narazisz się na ryzyko kontuzji i konieczność całkowitego przerwania treningu. Pamiętaj też, że jesteś jedynie tak silny, jak Twoje najsłabsze ogniwo i że wykazujemy tendencję do znacznego przeceniania naszego poziomu sprawności. Zacznij od ćwiczeń, które wydają się wręcz za łatwe i buduj swoje umiejętności stopniowo, przeskakując na kolejny poziom trudności jedynie gdy w pełni wykorzystałeś obecny (robiąc ćwiczenia wolniej, z większym napięciem mięśni, poprawną postawą ciała itd.).
Metodyki Agile: Jest duża szansa, że zbyt drastyczne zmiany spotkają się z oporem i zakończą niepowodzeniem. Preferuj ewolucję niż rewolucję i unikaj pośpiechu. Za każdym razem gdy wprowadzasz nowy proces, daj sobie czas by poczuć się z nim komfortowo zanim sprubujesz kolejnego “level-upa”. A przede wszystkim, zanim wprowadzisz jakiekolwiek nowe ceremonie czy artefakty, staraj się w pierwszej kolejności szukać usprawnień w obrębie Twojego obecnego workflow.
6. Progresja jest trudna bez metryk.
Skazany na trening: Cały “Skazany na trening” jest zbudowany wokół świadomej progresji. A progres jest niemożliwy bez metryk. By nieustannie przekraczać swoje granice, jednak w bezpieczny, możliwy do uciągnięcia na dłuższą metę sposób, musisz dokładnie znać granice swoich możliwości. To niemożliwe bez mierników – nasza pamięć jest zbyt zawodna. Nie potrzebujesz wyszukanych narzędzi. Zwykły notes wystarczy. Utrzymuj jednak szczegółową historię Twoich treningów, byś mógł w inteligentny sposób sterować swoją progresją.
Metodyki Agile: Procesy Agile są nieformalne. Bazują głównie na “miękkich” umiejętnościach, takich jak komunikacja face-to-face. Nie sprawia to jednak wcale, że metryki są mniej przydatne. Velocity, lead time, ilość defektów, pokrycie testami mogą pomóc Ci stuningować Twój proces. Nie musisz używać ich wszystkich na raz, nie musisz także ich śledzić w nadmiernie skomplikowany sposób, ale bez conajmniej kilku podstawowych metryk nie będziesz w stanie przeprowadzać świadomej inspekcji i adaptacji – które są podstawową siłą Agile.
7. Spraw, by inspekcja i adaptacja stały się nawykiem.
Skazany na trening: Program treningowy jest przydatny jako zgrubny wskaźnik kierunku, nie jest jednak w stanie opisać każdej możliwej sytuacji. Możesz być zmęczony lub kontuzjowany, twój nastrój się waha, możesz mieć okres zastoju, różne Twoje grupy mięśniowe mogą zaliczać “level-up” w różnym tempie. Musisz nauczyć się jak zauważać i adaptować się do tego typu warunków. A im szybciej jesteś w stanie się adaptować, tym szybszy będzie Twój progres. Ostatecznym celem jest ćwiczenie samoświadomości dopóki nie przerodzi się ona w nawyk, dopóki nie będziesz się adaptował w sposób ciągły, bez świadomego wysiłku.
Metodyki Agile: Inspekcja i adaptacja są wbudowane w Agile. Iteracyjny development zapewnia, że dzieje się to w regularnych odstępach czasu. Ale nie musisz się ograniczać do z góry zdefiniowanych “checkpoint-ów”, takich jak retro, review sprintu czy daily scrum. W Twojej codziennej pracy istnieje znacznie więcej okazji do inspekcji. Rozglądaj się za nimi póki nie stanie się to nawykiem, póki inspekcja i adaptacja nie utrwalą Ci się w “pamięci mięśni” – dopiero wtedy nie tylko będziesz praktykować Agile, ale po prostu BĘDZIESZ Agile.
8. Filozofia jest ważniejsza niż konkretna metodyka.
Skazany na trening: “Skazany na trening” zawiera kilka prostych programów treningowych by obniżyć poziom wejścia dla początkujących, jednak poza tym książka koncentruje się wyłącznie na filozofii stopniowej progresji. By faktycznie iść do przodu, musisz zrozumieć jak progresja działa i dlaczego, oraz jak dopasować ją do Twoich konkretnych potrzeb. Podążanie za szczegółowym programem, nawet najlepszym, nie da Ci tego.
Metodyki Agile: W Agile istnieje wiele dojrzałych, solidnych frameworków takich jak Scrum. Nie możemy jednak zapominać, że są one wyłącznie frameworkami. Zestawami konkretnych praktyk. Możliwymi punktami startowymi naszej podróży. Jeśli traktujemy je jako recepturę, ślepo za nimi podążamy, często tracimy z oczu fakt, że Agile, u swego źródła, jest filozofią, zbiorem uniwersalnych zasad. Jedynie poprzez dogłębne zrozumienie jak te zasady działają i do rozwiązywania jakich problemów zostały wymyślone możemy w pełni zebrać korzyści jakie daje Agile.
Rewolucja Agile w treningu siłowym.
Kalistenika rozpowszechnia się ostatnio jak pożar. Ludzie odchodzą od nadmiernie skomplikowanych, drogich, wyspecjalizowanych maszyn treningowych. Skłaniają się na powrót ku podstawom, ku prostocie i podstawowym zasadom treningu siłowego. Widzę tu uderzające podobieństwo do wczesnych dni Agile: ludzi odchodzących od skomplikowanych metod kaskadowych i odkrywających na nowo potęgę bezpośredniej komunikacji i kolaboracji. To podobieństwo jest wyśmienitym dowodem wartości filozofii Agile, dowodem zaiste uniwersalnym. A fakt, że jest ona uniwersalna, oznacza że możemy szukać inspiracji daleko poza obszarem naszej branży. Kto wie gdzie możesz odkryć parę porad, jak stać się lepszym Agile-owcem?
Co Ty o tym sądzisz?
W jakich obszarach poza rozwojem oprogramowania udaje Ci się znaleźć inspirację? Czy przeniosłeś jakieś techniki z tych obszarów do swojego Agile-owego zestawu narzędzi? Jeśli tak, podziel się swoimi doświadczeniami w komentarzach poniżej, jestem naprawdę niezmiernie ciekawy, w jakie miejsca możemy sięgnąć po inspirację!