niedziela, 26 lutego 2012

Joel Spolsky "Smart and gets things done"

Ciężko uwierzyć, że minął prawie rok od mojego ostatniego posta... Co prawda dzieje się bardzo dużo, ale nie aż tak dużo, żeby raz na jakiś czas nie móc napisać choć krótkiego posta tak jak dziś. Prawda jest taka, że aby być w czymś dobrym, a ja bardzo chciałbym być dobrym bloggerem, należy to robić bardzo często. Jakiś czas temu Jacek Laskowski przytoczył bardzo ciekawy artykuł listujący 8 zasad, którymi powinien się kierować każdy blogger, by stać się efektywnym pisarzem. Podstawowa zasada to - pisać! Nawet najkrótsze artykuły niosą pewną wartość zarówno dla czytelnika jak i pisarza, tak więc będę się starać od teraz pisać choćby i krótkie wpisy, ale minimum jeden na dwa tygodnie.

Wracając do tematu dzisiejszego wpisu - miałem ostatnio przyjemność przeczytać jedną z książek Joela Spolsky'ego, wydaną w 2007 roku "Smart & gets things done". Choć do wszystkiego co pisze Joel należy podchodzić z ekstremalną ostrożnością, to przyznać mu trzeba, że jest bardzo dobrym, doświadczonym pisarzem. W książce tej opisuje proces rekrutacyjny swojej firmy - Fog Creek. Opisy dla kogoś takiego jak ja wydają się co najmniej fantazyjne (limuzyna odbierająca kandydata z lotniska, wynajęcie drogiego hotelu, wycieczki po Nowym Jorku itd. itd.) a mimo to oprócz faktu, iż książkę czytało się bardzo przyjemnie to przyniosła pewną mierzalną wartość.

Bardzo często słyszy się o tzw. testach małpy, testach odpornościowych etc. Osobiście rzadko stosowałem takie podejście. Wynika to z wielu rzeczy: akademickiej natury większości projektów w jakich brałem udział, braku przekonania co do słuszności "tracenia czasu" na takie zabiegi etc. W swojej książce Joel Spolsky opisu coś co nazywa "Hallway test",czyli poproszenie osoby przechodzącej obok (która nie jest związana z produktem, nad którym pracujesz) o spędzenie kilku chwil i wypróbowanie i ocenienie użyteczności, łatwości korzystania i wielu innych aspektów projektu, które nam - programistom - bardzo ciężko ocenić. O słuszności takiego podejścia przekonałem się następnego dnia po przeczytaniu książki. Tworzyłem kawałek funkcjonalności i wydawało mi się, że zmierzam w absolutnie dobrym kierunku. Kiedy prototyp interfejsu był gotowy coś mnie tknęło i postanowiłem pokazać go koledze z zespołu, by go ocenił, przeklikał. Okazało się, że   przez zbyt długie przesiadywanie z kodem nie zauważyłem podstawowych niedogodności użytkowania modułu. Od tej pory staram się pozyskiwać 2-3 minuty czasu innej osoby dziennie na ocenienie moich idei, toków myślenia przy projektowaniu interfejsu użytkownika i nie tylko. W samym zeszłym tygodniu takie krótkie konsultacje okazały się oszczędzić mi pracy przez minimum jeden dzień. Całkiem nieźle, co? :)

Podsumowując - książka Joela Spolsky'ego jest godna polecenia każdemu programiście, menadżerowi i komukolwiek innemu związanemu w ten czy inny sposób z procesem rekrutacji lub te wytwarzania oprogramowania jeśli tylko potrafią dystansować się od tego co czytają. Mi lektura sprawiła ogromną przyjemność i już szukam możliwości dostania w swoje ręce kolejnej jego książki :)

Pozdrawiam i do następnego razu!

3 komentarze:

  1. Welcome back!

    Trochę tu trwała ta cisza :) Ale najważniejsze, że jest przełamanie. Teraz tylko mocne postanowienie poprawy, czyli 2 posty miesięcznie i dopiero wtedy poczujesz, że piszesz coraz lepiej.
    Nie muszą to być cyzelowane godzinami eseje ze świetną narracją i zaskakującym finałem ;) Ważne, żeby pisać, bo wtedy kolejne dzieła będą coraz lepsze. Coś a'la Blogging Kata ;)

    A odnośnie tematu posta, to pytanie kogoś spoza projektu czy w ogóle rozumie o co w tym chodzi i czy nasze rozwiązanie ma sens to zawsze dobry pomysł. Czasami już wyartykułowanie opisu sytuacji/problemu sprawia, że pojawia się nam nagle myśl jak to można zrobić lepiej.

    OdpowiedzUsuń
    Odpowiedzi
    1. Dokładnie tak! W moim przypadku po korytarzu nie szwędają się ludzie z kubkami do kawy nie mający nic do roboty (a'la Wolly z Dilberta ;)) ale ludzie, którzy pracują nad innymi częściami projektu i działa to równie dobrze jak w przypadku ludzi całkowicie z zewnątrz, a nawet czasem lepiej, bo daje pewne pomysły i spostrzeżenia także dla testera nad kawałkiem systemu, nad którym on sam pracuje :)

      Usuń
  2. W temacie polecam jeszcze niedawny artykuł Spolsky'ego: http://www.avc.com/a_vc/2012/02/the-management-team-guest-post-from-joel-spolsky.html

    Żeby jeszcze szefowie to czytali.

    OdpowiedzUsuń