Przejdź do głównej zawartości

O czym jest Ruch Rzemiosła Oprogramowania


TL;DR

Przeszedłem od Dana Northa, przez Gila Zilberfelda, po Michaela Feathersa do Jasona Gormana. Wydaje mi się, że wśród ludzi w ruchu rzemiosła oprogramowania nie ma jasnego przekazu. Mam nadzieję, że ten wpis wyjaśni kilka rzeczy.
Po co powstał ruch rzemiosła oprogramowania? Co motywowało jego powstanie? Czym jest napędzany teraz? Jedna rzecz; jest tylko jedna rzecz.
Jesteśmy zmęczeni pisaniem gówna.
Tak jest. Koniec rumakowania. Do widzenia, ślepa Genia. Bez odbioru.

Poniższy tekst jest luźnym tłumaczeniem wpisu bloga Roberta Cecila "Wujka Boba" Martina z dnia 17 stycznia 2011 ze strony:


Proszę o komentarze, jeżeli ta luźność jest zbyt daleko posunięta.


Jesteśmy zmęczeni pisaniem gówna. Jesteśmy zmęczeni wprowadzaniem w zakłopotanie siebie i naszych klientów poprzez pisanie parszywego oprogramowania. Mamy dość radzenia naszym klientom, żeby najlepiej restartowali system raz dziennie o północy. Nie chcemy list błędów o długości tysiąca stron. Nie chcemy kodu, który staje się każdego dnia bardziej poplątany i zgniły. Jesteśmy zmęczeni robieniem złej roboty. Chcemy zacząć robić dobrą robotę.
To ... jest ... to ... o czym ... to ... jest. O niczym innym.
Tego nie robimy:
  • Nie stawiamy kodu w centrum wszechświata.
  • Nie zamykamy się w sobie i nie ignorujemy ludzi z biznesu czy klienta.
  • Nie jesteśmy egoistami.
  • Nie oferujemy tanich certyfikacji.
  • Nie zapominamy, że naszym zadaniem jest zachwycić klientów.
Tego już nigdy nie będziemy robić:
  • Nie będziemy robić burdelu tylko po to, żeby zdążyć przed deadlinem.
  • Nigdy nie zaakceptujemy starego, głupiego kłamstwa, że sprzątniemy to później.
  • Nie uwierzymy w przeświadczenia, że szybko znaczy niedobrze.
  • Nie wybierzemy możliwości robienia tego źle.
  • Nie pozwolimy nikomu, aby zmusił nas do nieprofesjonalnego zachowania.
To będziemy robić od teraz:
  • Będziemy dotrzymywać terminów, wiedząc to, że jedyną możliwością poruszania się szybko jest poruszanie się w dobry sposób.
  • Będziemy zachwycać naszych klientów poprzez pisanie najlepszego kodu, na jaki nas stać.
  • Uszanujemy naszych pracodawców poprzez tworzenie najlepszych architektur, jakie tylko możemy.
  • Uszanujemy naszych kolegów w zespole poprzez testowanie wszystkiego, co tylko może być stestowane.
  • Będziemy pokorni na tyle, aby pisać te testy najpierw.
  • Będziemy ćwiczyć, aby stać się coraz lepszymi w naszym rzemiośle.
Będziemy zawsze pamiętać, co mówili nam nasi dziadkowie i nasze babcie:
  • Cokolwiek jest warte zrobienia, jest warte zrobienia tego dobrze.
  • Spiesz się powoli, a wygrasz wyścig.
  • Tnij raz, ale wpierw zmierz dwa razy.
  • Ćwiczyć, ćwiczyć i jeszcze raz ćwiczyć.
Domyślam się, że niektórzy ludzie mogą spoglądać spode łba na nasze kata kodu, programistyczne rekolekcje i sesje ćwiczeń. Mogą pomyśleć, że zamykamy się w sobie i porzucamy naszych klientów. Mogą pomyśleć, że uciekliśmy od prawdziwego świata i poddaliśmy się pokusie samozadowalania. Łatwo mogę sobie wyobrazić kogoś, kto dochodzi do takich wniosków.
Ale oni mylą się w całej rozciągłości. Robimy to, ponieważ zależy nam na klientach. Poświęcamy swój czas i środki, aby być najlepszymi, jakimi tylko możemy być, aby nasi pracodawcy zyskali jak największą wartość ze współpracy z nami.
Czy myślisz, że muzycy grają na swoich instrumentach tylko wtedy, gdy są na scenie? Czy uważasz, że gracze uderzają w piłkę, tylko podczas meczu? Czy myślisz, że prawnicy wygłaszają swoje mowy końcowe tylko na procesach? Oczywiście, że nie. Ci ludzie to profesjonaliści; i profesjonaliści ćwiczą! Profesjonaliści uczą się o szczegółach swoich dyscyplin. Profesjonaliści znają wszystkie małe sztuczki i kruczki. Znają historię, teorię i opowieści anegdotyczne. Znają techniki i sposoby. Wiedzą o dobrych możliwościach i o złych możliwościach i potrafią oddzielić jedne od drugich. I wiedzą o tym wszystkim, ponieważ oni ćwiczą, ćwiczą i jeszcze raz ćwiczą.

Więc, kiedy widzisz kogoś noszącego zieloną opaskę na rękę z napisem "Czysty Kod", albo "Najpierw Testy", albo "Maniak Testowania", to nie znaczy, że oni dołączyli do jakiegoś ruchu, albo podpisali manifest, lub czują się ważniejsi od wszystkich innych. Oni nie uczestniczą w świętych wojnach. Nie próbują dołączyć do plemienia i zgromadzić się przy ognisku. Zielona opaska jest czymś osobistym. Jest obietnicą daną samemu sobie: "Będę robił dobrą robotę. Nie będę się śpieszył. Będę pisał testy. Będę poruszał się szybko, poruszając się w dobry sposób. Nie będę pisał gówna. Będę ćwiczył, ćwiczył i jeszcze raz ćwiczył, aby móc być profesjonalistą".

Powyższy tekst jest luźnym tłumaczeniem wpisu bloga Roberta Cecila "Wujka Boba" Martina z dnia 17 stycznia 2011 ze strony:


Proszę o komentarze, jeżeli ta luźność jest zbyt daleko posunięta.

Komentarze

  1. Łatwiej powiedzieć - trudniej zrobić...

    OdpowiedzUsuń
    Odpowiedzi
    1. Oczywiście, że trudno zrobić. Rzemiosło Oprogramowania to szereg trudnych dyscyplin, w których mistrzostwo rodzi się w bólu i łzach. Tym nie mniej warto.

      Usuń

Prześlij komentarz

Popularne posty z tego bloga

Kursy IT na Pluralsight. Dlaczego warto?

Bardzo sobie cenię kursy na Pluralsight. Mam wrażenie, że każdy kurs, który przeszedłem na tej platformie, w dużym stopniu podniósł moje zdolności. Wiem, dostęp do tej platformy nie jest tani, ale w mojej ocenie warty swojej ceny. To nie jest reklama, ale forma entuzjazmu jaki mam do tej formy samodoskonalenia. O to kilka punktów pokazujących ofertę tego serwisu i dlaczego warto skorzystać: Pluralsight to kursy z Javascript, C#, Java, Angular, Python, MySQL i wielu innych technologii i umiejętności. Kursy na Pluralsight w większości mają wyższą jakość niż te, które możemy znaleźć na przykład na YouTube. Są wyselekcjonowane, mają wysoką jakość dźwięku i obrazu. Często wgryzają się głęboko w dany problem daleko poza standardowe „Hello World” danej technologii. Twórcy Pluralsight to często osoby znane ze świata IT i konferencji branżowych, jak: Scott Hanselman, Microsoft John Somnez, SimpleProgrammer.com John Skeet, Google Pluralsight udostępnia funkcjonalność ścieżek – paths....

Bicie piany

Czy słyszałeś o tym gościu, który powiedział, że Object Oriented to przeżytek? No nie. Następny. Co powiedział? Opisał wszystkie obietnice OO, i jak żadna z nich tak naprawdę nigdy nie została spełniona i o tych wszystkich możliwościach OO, które kosztują więcej, niż są warte i że funkcjonalne programowanie jest lepsze i ... Phi. Tak słyszałem już to wcześniej. No, więc OO jest martwe, leży i kwiczy i możemy przejść dalej. Przejść dalej do czego? Co? No do NASTĘPNEJ WIELKIEJ RZECZY oczywiście. Aaaa, do tego. Czy wiesz już co to jest? Nie bałdzo, ale jestem podekscytowany na myśl o mikroserwisach; jaram się Elixirem; i słyszałem, że React jest fantastyczny; i ... Tak, tak. Bicie piany. Dałeś się nabrać na bicie piany. Co? Co masz na myśli. Przecież mamy takie wspaniałe czasy. Tak naprawdę postrzegam te czasy jako depresyjne. Ale dlaczego? Przecież co kilka dni wyskakują nowe wspaniałe technologie! Wspinamy się na coraz wyższe szczyty. Phi. To, co tak napraw...

Podstawy Programowania Funkcyjnego Epizod 1

O czym jest programowanie funkcyjne? Zakładam, że słyszałeś już kiedyś o programowaniu funkcyjnym. No cóż, któż nie słyszał? Wszyscy o tym gadają. Wychodzi dużo nowych języków funkcyjnych takich, jak Scala, F# i Clojure. Ludzie rozmawiają też o starszych językach jak Erlang, Haskell, ML i innych. A więc, o co w tym wszystkim chodzi? Dlaczego programowanie funkcyjne jest Następną Wielką Rzeczą™? I co jest w tym takiego pociągającego? Poniższy tekst jest luźnym tłumaczeniem wpisu bloga Roberta Cecila "Wujka Boba" Martina z dnia 22 grudnia 2012 ze strony: https://blog.cleancoder.com/uncle-bob/2012/12/22/FPBE1-Whats-it-all-about.html Proszę o komentarze, jeżeli ta luźność jest zbyt daleko posunięta. Po pierwsze, prawie na pewno programowanie funkcyjne jest następną wielką rzeczą. Są ku temu dobre, solidne powody i poznamy je w tym artykule. Ale najpierw, aby zrozumieć te powody, musimy poznać, czym programowanie funkcyjne jest....