Czcij guru swego i opinię swoją

10

Wszyscy w zawodzie zaczynaliśmy podobnie: nie wiedząc nic. Każdy z nas jest teraz na innym poziomie: jedni nadal nie wiedzą nic, inni mało, jeszcze inni dużo… ale nikt nie wie wszystkiego. Z biegiem lat kształtujemy sobie opinie na sposoby tworzenia oprogramowania – w końcu pochłania to sporą część naszego życia. A dróg do osiągnięcia celu – praktycznie nieskończenie wiele.

Jeden będzie zwolennikiem podejścia “100% Microsoft”. Inny wręcz przeciwnie: tzw. ruch alt.net nieustannie skupia się na poszukiwaniu lepszych alternatyw. W miarę krystalizowania się naszych poglądów jesteśmy w stanie zaklasyfikować samych siebie do tej czy innej grupy. I co dalej? Nawet geniusz nie wymyśli wszystkiego sam. Potrzebny jest przewodnik – ktoś, kto podpowie na jaki trend skierować wzrok, po którą książkę sięgnąć, jaką biblioteką się zainteresować. Po prostu: gdzie podreptać w celu dalszego rozwoju.

Wybranie takiego Pana Miyagi, tudzież kilku Panów Miyagów, jest niesamowicie ważne. Nie do końca chodzi o jakiegoś Jacykowa, który powie “tej wiosny załóż różową przepaskę na biodra, zaczep kajdanki o przegrodę nosową a wchodząc do baru zamów whisky ze zsiadłym mlekiem z piersi Cyganki i rodzynkami – też z piersi Cyganki – a będziesz cool“. W światku naszym znajdziemy pełno autorytetów mających faktyczny wpływ na losy technologii i decydujących de facto o przyszłości niektórych jej aspektów. Jeśli wiemy mniej więcej co nam odpowiada, co naszym zdaniem się sprawdza – warto być na bieżąco z przemyśleniami Wielkich Mózgów w tej dziedzinie.

Przykładów może być cała masa. A to Udi Dahan. A to Greg Young. A to Ayende Rahien. A to Uncle Bob. To moi;). Tak naprawdę wiele można powiedzieć o programiście widząc listę jego guru. Brak takiej listy niekoniecznie musi oznaczać coś złego, ale… lepiej takich mieć niż nie mieć. Z ich wielkiego doświadczenia, błyskotliwych pomysłów, nieszablonowego podejścia do pracy można czerpać garściami.

ALE! Dochodzimy do części drugiej. Zdecydowanie nie można nieustannie, chciwie ściągać ozorem miodu z ich gorących warg i bezkrytycznie łykać wszystkiego, jak to mój ziom zwykł mawiać, jak świnia obiery. Trzeba brać z nich przykład i… MYŚLEĆ. Nie mogę napisać inaczej, w końcu tagline tego bloga to: “Think for Yourself. Question authority.”:).

Każdy pogląd, każdą opinię, da się skrytykować bądź pochwalić. I to właśnie MY powinniśmy wyrobić sobie zdanie na jej temat. Postępowanie w taki a nie inny sposób posiadając wyłącznie argument “BO TAK” albo “właściwie to nie wiem” jako uzasadnienie nie świadczy o nas pozytywnie. Nieważne z jak genialnej głowy wyciekła dana myśl, dany pomysł – zawsze można spojrzeć na nią z różnych perspektyw.

Kluczowe wydaje mi się posiadanie realnej odpowiedzi na pytanie: “dlaczego tak pracujesz?“. Nie ma nic złego w naśladowaniu cudzych praktyk. Ba, każdy kogoś naśladuje, w końcu nie ma sensu wymyślanie wszystkiego od zera. Jednak ślepe przyjmowanie danej opinii za aksjomat to złe wyjście, niezależnie od tego kto jest jej źródłem.

Od dawna pielęgnuję przyzwyczajenie analizowania zalet i wad stosowanych przez siebie rozwiązań. Nawet jeśli się sprawdzają – w następnym projekcie nie kopiuję bezmyślnie czy to kodu, czy to praktyk, tylko dlatego że “działają”. Staram się znaleźć ich słabe punkty i iteracyjnie ulepszać warsztat. Skoro postępuję tak nawet względem własnych przyzwyczajeń, to czy nie warto równie ostro spoglądać na porady płynące z zewnątrz? Może uda nam się usprawnić proponowane podejście?

Challenge accepted! Rozbijmy na czynniki pierwsze i złóżmy z powrotem koncepcje płynące z programistycznego Olimpu. To, że Ayende stworzył każdy chyba rodzaj softu jaki można sobie wymyślić nie oznacza, że mamy wpadać w szał syndromu Not Invented Here. To, że jedyną słuszną wartością określająca pokrycie kodu testami jednostkowymi według Uncle Boba jest 100% nie oznacza, że mamy nagle rzucać wszystko i spędzić kolejne tygodnie na pisaniu bezsensownych testów (o czym pisałem więcej w poście “Co testować, a czego nie testować?“). I tak dalej, i tak dalej.

Miejmy wzory do śledzenia i naśladowania. Pomysły trzeba skądś czerpać, sami wszystkiego nie wymyślimy. Ale nie dajmy się zwariować. Nie bądźmy czyjąś bezmyślną kalką, tępym wyrobnikiem który jedyne co potrafi to “do as he’s told“. Praca nasza jest tak elastyczna, że wszędzie można zostawić swój charakterystyczny ślad. Ślad mówiący: “JA tu byłem. To jest MOJE. Bo MYŚLĘ i mam swoje zdanie.“.

A kim są Wasi guru?

Share.

About Author

Programista, trener, prelegent, pasjonat, blogger. Autor podcasta programistycznego: DevTalk.pl. Jeden z liderów Białostockiej Grupy .NET i współorganizator konferencji Programistok. Od 2008 Microsoft MVP w kategorii .NET. Więcej informacji znajdziesz na stronie O autorze. Napisz do mnie ze strony Kontakt. Dodatkowo: Twitter, Facebook, YouTube.

10 Comments

  1. Pingback: dotnetomaniak.pl

  2. ciekaw jestem list guru – a raczej inspiracji bo tak na to patrzę – innych osób. Moja to wg. priorytetów Uncle Bob długo nic Young, Skeet, Hanselman (z troche innej kategorii) – Ayende i Dahan ciągle są w “poczekalni”

  3. Łukasz,
    Do tej pory odsyłałem do Gugla, ale jesteś już 3cią osobą która o to pyta więc dodałem widget search z boku, okazało się że mój theme ma taką funkcjonalność

  4. Akurat moja lista guru pokrywa się w 100 % z Twoją. No może jeszcze dodałbym do tego Erica Evansa i Vaughn’a Vernona za sposób opowiadania o DDD. Krytycyzm w stosunku do tego co się przeczytało lub usłyszało jest jak najbardziej wskazany, choć czasem może uchodzić za czepianie się, a umiejętność dostosowania tego co się poznało teoretycznie w praktyce jest 100 razy bardziej przydatne niż sama wiedza treoretyczna.

  5. Pytanie ciekawe, acz nielatwe do odpowiedzenia ;) Wymienilem trozke dluzsza liste wraz z kontekstem:

    Dave Thomas, Andy Hunt (craftsmanship, Ruby), Jon Skeet (Java & C#), Pattrick Smacchia (NDepend), John Sonmez (simple programmer), Uncle Bob (Clean Coding), Douglas Crockford (JavaScript), Martin Fowler (architecture)

  6. Jacek,
    Jak to wyedytować? Skąd blog ma wiedzieć że to naprawdę Ty napisałeś to co chcesz edytować?:)

  7. JavaScript/cache/cookie whatever, ktore pozwalaja zaraz po opublikowaniu posta poprawic jego zawartosc przez krotki czas. Wydawalo mi sie ze z poprzednim blogiem bylo to dostepne, jesli nie, my fault ;)

  8. dzięki za szukajke – google jest fajny ale czasami człowiek pamięta, że coś u Ciebie czytał i tak jest prościej znaleźć.

    co do Guru – wymieniliście już chyba wszystkich Wielkich :) u mnie to wygląda tak: Uncle Bob, Douglas Crockford (!), Martin Fowler, Roy Osherove (!). Swojego czasu byli jeszcze Stephen Walter i Jean-Paul S. Boodhoo ale ostatnio jakoś mniej.

Newsletter: devstyle weekly!
Dołącz do 1000 programistów!
  Zero spamu. Tylko ciekawe treści.
Dzięki za zaufanie!
Do przeczytania w najbliższy piątek!
Niech DEV będzie z Tobą!