Recenzje
Serbia. Na skrzyżowaniu kultur. Wydanie 1
Serbia to jedna z ostatnich białych plam na turystycznej mapie Europy. Warto ją odwiedzić i przekonać się, jak mylące są stereotypy. Secesyjna Subotica, kosmopolityczny Nowy Sad i muzułmański Sandżak - to tylko niektóre z serbskich kontrastów. Jeśli dodamy do tego skarby przyrody, liczne zabytki, bałkańską muzykę, gościnność oraz kuchnię, w której grillowanie zyskało rangę sztuki, okaże się, że do Serbii jechać trzeba!
Tygodnik Przegląd Agata Gogołkiewicz, 2014-06-23
Azja Środkowa. Kazachstan, Uzbekistan, Kirgistan, Tadżykistan, Turkmenistan. Wydanie 1
Azja Środkowa, ukryta w głębi kontynentu kraina wysokich gór, dzikich rzek i jezior, stepów, pustyń i pastwisk, od starożytności przyciągała podróżników i kupców. Współcześnie równie mocno ekscytuje, kusi i uzależnia wszystkich ciekawych świata, zwłaszcza tych, którzy lubią się zapuszczać na jego peryferie. Tu przyroda nie ma granic, a skarby starożytnych miast - Chiwy, Samarkandy i Buchary - przyprawiają o zawrót głowy.
Tygodnik Przegląd Agata Gogołkiewicz, 2014-06-23
Toskania i Wenecja. Travelbook. Wydanie 1
Toskania oszałamia zabytkami, atmosferą - Florencji, Sieny i Pizy, kusi spokojem prowincji - winnic, gajów oliwnych i obsadzonych cyprysami dróg. Wenecja uwiedzie gondolami, misternymi zdobieniami średniowiecznych kamienic, przepychem pałaców. Witajcie w turystycznym raju!
Tygodnik Przegląd Agata Gogołkiewicz, 2014-06-23
Czysty kod. Podręcznik dobrego programisty
Książki tego typu są jak chodzenie do kościoła – każdy raz na jakiś czas powinien do tych pozycji wracać, aby zrobić sobie rachunek sumienia.
Jednak nie wiedziałem do jakiego kościoła się z nią wybiorę. Nie zawsze poglądy autorytetów w dziedzinie programowania są takie same. Robert „Uncle Bob” Martin jest programistą z ponad 40-letnim stażem, czerpanie wiedzy z jego doświadczeń jest czymś oczywistym, więc nie wahając się ani chwili zabrałem się za lekturę… i nie żałuję.
Na wstępie chcę zaznaczyć, że jest to książka przeznaczona dla osób, które już mają pewne doświadczenie w programowaniu. Aby zrozumieć ideę czystego kodu, musimy mieć świadomość jak może wyglądać kod „brudny”. Dodatkowo wszystkie przykłady są w języku Java, więc jego dobra znajomość na pewno będzie ułatwieniem, jednak nie jest niezbędna. Przykłady nie są skomplikowane, poza nielicznymi wyjątkami.
Książkę zasadniczo można podzielić na trzy części:
1. Teoria - zasady, wzorce i praktyki czystego kodu
2. Przykłady i ćwiczenia zmuszające do zastosowania tej teorii
3. Udokumentowane powody każdej modyfikacji z części drugiej, zapisane jako zapachy kodu i heurystyki.
Oczywiście można przeczytać część pierwszą i trzecią i nabyć tylko teorię, jednak część druga pozwala zobaczyć jak Martin wykorzystuje teorię w praktyce, dzięki czemu dużo łatwiej można zrozumieć sens zasad, które nam przekazuje.
Choć tematyka książki na to nie wskazuje, cały czas czuć w niej bardzo silne nastawienie na TDD oraz jak największe pokrycie kodu dobrymi testami jednostkowymi. Dla autora jest wręcz niemożliwe, aby uznać kod za czysty bez czytelnych i pokrywających go testów. Czytelne testy są dla niego tak samo istotne jak czytelny kod.
Główne zagadnienia poruszane w książce to:
- zmienne, funkcje, metody i klasy oraz ich nazewnictwo
- komentarze, kiedy i jak je pisać
- formatowanie kodu
- testy jednostkowe
- struktury danych
- współbieżność.
Martin nie lubi długich klas, nie lubi długich funkcji. Klasy i funkcje powinny być pisane kierując się zasadą pojedynczej odpowiedzialności. Nie lubi przekazywania wielu argumentów do funkcji, w szczególności przekazywania argumentów flagowych powodujących różne zachowania funkcji w zależności od swojego stanu. Nie lubi komentarzy oraz nieczytelnych nazw, uważa że czytelna nazwa, która daje nam wyobrażenie za co odpowiada dana zmienna, funkcja lub klasa powinna zastępować komentarz. Co więcej, jeśli odczujemy potrzebę pisania komentarza, to znaczy że zrobiliśmy coś nie tak i powinniśmy się zastanowić nad zmianą nazewnictwa bądź struktury.
Są to tylko przykłady zasad, które chce nam przekazać i z większością się w zupełności zgadzam.
Było dosłownie kilka momentów, gdzie zacząłem się zastanawiać nad sensem stosowania co poniektórych. Przykładowo w 100% trafia do mnie zasada pojedynczej odpowiedzialności funkcji i klas, jednak trudność zdefiniowania czym jest ta odpowiedzialność w niektórych sytuacjach budziła moją wątpliwość co do jej stosowania w takiej sytuacji.
Jednak właśnie tak powinno wyglądać czytanie tej książki. Sam Martin od samego początku zaznacza, że są to jego subiektywne opinie co do czystości kodu, poparte jego doświadczeniem. Każdy sam powinien zastanowić się nad sensem każdej z nich, a nie jedynie przeczytać je jak niektóre lektury ze szkoły i zapomnieć.
Celem wszystkich tych zasad jest napisanie kodu, który opowiada jakąś historię na temat tworzonego systemu. Historia ta nie może być napisana byle jak, czytelnik powinien się nią zachwycić, zupełnie tak jak dobrą powieścią. Aby to zrobić, najpierw musi ją łatwo i szybko zrozumieć.
Nie jest łatwo taki kod napisać za pierwszym razem. Niekiedy musi powstać kilkanaście bądź kilkadziesiąt wersji, zanim osiągniemy zadowalający efekt.
I właśnie tak Martin widzi pracę programisty, bardziej jako rzemiosło pisania i ciągłego ulepszania kodu.
Podsumowanie
Zdecydowanie książka jest godna polecenia. Jedyne zastrzeżenia mogę mieć do:
- zbyt głębokiego wchodzenia w aspekty specyficzne do samego języka Java w niektórych rozdziałach. Jeżeli już parę rozdziałów musi zagłębiać się w Java, to na okładce powinna być umieszczona widoczna informacja dla czytelnika o tym fakcie;
- kilka przykładów także dotykało mocno Java, a niektóre były niepotrzebnie rozwlekłe. Sam sens przykładu można było przedstawić krócej, wykorzystując np. pseudokod;
- brakowało mi więcej ćwiczeń dla czytelnika na zasadzie: zrób to sam.
Ideę książki najlepiej opisuje przytoczona w niej zasada skautów: „Pozostaw obóz czyściejszym niż go zastałeś”. Każdy programista powinien zawsze poprawiać kod, nawet małą rzecz, która kwalifikuje się do zmiany. Autor mówi o tym, aby zwracać szczególną uwagę na każdy najmniejszy element kodu i robić go uczciwie wobec siebie i współpracowników, żaden kod nie jest doskonały, a jedynie najlepszy jaki mogliśmy wykonać w danym momencie, zawsze można go usprawnić. I trzeba to robić teraz, nie odkładać na później, później znaczy nigdy (prawo LeBlanca). I jak tu się z tym nie zgodzić, niby takie oczywiste, ale czy zawsze stosujemy się do tych zasad?
I właśnie taka jest ta książka - przekazuje wiedzę, pokazuje jak zastosować tę wiedzę w praktyce poprzez przykłady przeanalizowane krok po kroku. Zmusza do refleksji nad własnym kodem oraz swoimi praktykami.
Jednak nie wiedziałem do jakiego kościoła się z nią wybiorę. Nie zawsze poglądy autorytetów w dziedzinie programowania są takie same. Robert „Uncle Bob” Martin jest programistą z ponad 40-letnim stażem, czerpanie wiedzy z jego doświadczeń jest czymś oczywistym, więc nie wahając się ani chwili zabrałem się za lekturę… i nie żałuję.
Na wstępie chcę zaznaczyć, że jest to książka przeznaczona dla osób, które już mają pewne doświadczenie w programowaniu. Aby zrozumieć ideę czystego kodu, musimy mieć świadomość jak może wyglądać kod „brudny”. Dodatkowo wszystkie przykłady są w języku Java, więc jego dobra znajomość na pewno będzie ułatwieniem, jednak nie jest niezbędna. Przykłady nie są skomplikowane, poza nielicznymi wyjątkami.
Książkę zasadniczo można podzielić na trzy części:
1. Teoria - zasady, wzorce i praktyki czystego kodu
2. Przykłady i ćwiczenia zmuszające do zastosowania tej teorii
3. Udokumentowane powody każdej modyfikacji z części drugiej, zapisane jako zapachy kodu i heurystyki.
Oczywiście można przeczytać część pierwszą i trzecią i nabyć tylko teorię, jednak część druga pozwala zobaczyć jak Martin wykorzystuje teorię w praktyce, dzięki czemu dużo łatwiej można zrozumieć sens zasad, które nam przekazuje.
Choć tematyka książki na to nie wskazuje, cały czas czuć w niej bardzo silne nastawienie na TDD oraz jak największe pokrycie kodu dobrymi testami jednostkowymi. Dla autora jest wręcz niemożliwe, aby uznać kod za czysty bez czytelnych i pokrywających go testów. Czytelne testy są dla niego tak samo istotne jak czytelny kod.
Główne zagadnienia poruszane w książce to:
- zmienne, funkcje, metody i klasy oraz ich nazewnictwo
- komentarze, kiedy i jak je pisać
- formatowanie kodu
- testy jednostkowe
- struktury danych
- współbieżność.
Martin nie lubi długich klas, nie lubi długich funkcji. Klasy i funkcje powinny być pisane kierując się zasadą pojedynczej odpowiedzialności. Nie lubi przekazywania wielu argumentów do funkcji, w szczególności przekazywania argumentów flagowych powodujących różne zachowania funkcji w zależności od swojego stanu. Nie lubi komentarzy oraz nieczytelnych nazw, uważa że czytelna nazwa, która daje nam wyobrażenie za co odpowiada dana zmienna, funkcja lub klasa powinna zastępować komentarz. Co więcej, jeśli odczujemy potrzebę pisania komentarza, to znaczy że zrobiliśmy coś nie tak i powinniśmy się zastanowić nad zmianą nazewnictwa bądź struktury.
Są to tylko przykłady zasad, które chce nam przekazać i z większością się w zupełności zgadzam.
Było dosłownie kilka momentów, gdzie zacząłem się zastanawiać nad sensem stosowania co poniektórych. Przykładowo w 100% trafia do mnie zasada pojedynczej odpowiedzialności funkcji i klas, jednak trudność zdefiniowania czym jest ta odpowiedzialność w niektórych sytuacjach budziła moją wątpliwość co do jej stosowania w takiej sytuacji.
Jednak właśnie tak powinno wyglądać czytanie tej książki. Sam Martin od samego początku zaznacza, że są to jego subiektywne opinie co do czystości kodu, poparte jego doświadczeniem. Każdy sam powinien zastanowić się nad sensem każdej z nich, a nie jedynie przeczytać je jak niektóre lektury ze szkoły i zapomnieć.
Celem wszystkich tych zasad jest napisanie kodu, który opowiada jakąś historię na temat tworzonego systemu. Historia ta nie może być napisana byle jak, czytelnik powinien się nią zachwycić, zupełnie tak jak dobrą powieścią. Aby to zrobić, najpierw musi ją łatwo i szybko zrozumieć.
Nie jest łatwo taki kod napisać za pierwszym razem. Niekiedy musi powstać kilkanaście bądź kilkadziesiąt wersji, zanim osiągniemy zadowalający efekt.
I właśnie tak Martin widzi pracę programisty, bardziej jako rzemiosło pisania i ciągłego ulepszania kodu.
Podsumowanie
Zdecydowanie książka jest godna polecenia. Jedyne zastrzeżenia mogę mieć do:
- zbyt głębokiego wchodzenia w aspekty specyficzne do samego języka Java w niektórych rozdziałach. Jeżeli już parę rozdziałów musi zagłębiać się w Java, to na okładce powinna być umieszczona widoczna informacja dla czytelnika o tym fakcie;
- kilka przykładów także dotykało mocno Java, a niektóre były niepotrzebnie rozwlekłe. Sam sens przykładu można było przedstawić krócej, wykorzystując np. pseudokod;
- brakowało mi więcej ćwiczeń dla czytelnika na zasadzie: zrób to sam.
Ideę książki najlepiej opisuje przytoczona w niej zasada skautów: „Pozostaw obóz czyściejszym niż go zastałeś”. Każdy programista powinien zawsze poprawiać kod, nawet małą rzecz, która kwalifikuje się do zmiany. Autor mówi o tym, aby zwracać szczególną uwagę na każdy najmniejszy element kodu i robić go uczciwie wobec siebie i współpracowników, żaden kod nie jest doskonały, a jedynie najlepszy jaki mogliśmy wykonać w danym momencie, zawsze można go usprawnić. I trzeba to robić teraz, nie odkładać na później, później znaczy nigdy (prawo LeBlanca). I jak tu się z tym nie zgodzić, niby takie oczywiste, ale czy zawsze stosujemy się do tych zasad?
I właśnie taka jest ta książka - przekazuje wiedzę, pokazuje jak zastosować tę wiedzę w praktyce poprzez przykłady przeanalizowane krok po kroku. Zmusza do refleksji nad własnym kodem oraz swoimi praktykami.
testerzy.pl Michał Buczek, 2014-06-06
Cząstki przyciągania. Jak budować niestandardowe kampanie reklamowe
"Cząstki przyciągania" Hatalskiej to coś więcej niż solidne kompendium wiedzy o reklamie
Przysłowie mówi "nie oceniaj książki po okładce", ale kiedy do moich rąk trafiła książka Natalii Hatalskiej "Cząstki przyciągania. Jak budować niestandardowe kampanie reklamowe" wydana w formie ekskluzywnego albumu, niemal natychmiast oszacowałam, że zawartość będzie równie interesująca co okładka. Nie pomyliłam się.
Niestereotypowy format i szata graficzna książki nie powinny dziwić, bo książka traktuje przecież o kreacji, przełamywaniu banału i innowacyjności w reklamie. To coś więcej niż tylko solidne kompendium wiedzy na temat niestandardowych kampanii reklamowych, które zrealizowano w Polsce.
Można powiedzieć, że "Cząstki przyciągania. Jak budować niestandardowe kampanie reklamowe" to encyklopedia dla marketerów i wszystkich, którzy zawodowo lub czysto hobbystycznie mają do czynienia z reklamą. Hatalska serwuje niczym wyszukane trunki najlepsze według niej kampanie reklamowe ostatnich lat, a całość ilustrują tematycznie dobrane zdjęcia.
Treść posegregowana jest w rozdziały, których nazwa odpowiada celom, jakie ma realizować reklama, opisują różne rodzaje emocji i zachowań związanych z marką. Autorka nazwała je cząstkami przyciągania i rzeczywiście jakby się głębiej zastanowić nad ich funkcją, to taką spełniają. Znajdziemy zatem przykłady kampanii związanych z zaangażowaniem użytkownika, wywołaniem emocji czy wykorzystaniem elementu zaskoczenia.
Tej książki się nie czyta, tylko ogląda jak świetny album, który zgromadził kolekcję perełek reklamy. Narracja wpleciona pomiędzy zdjęcia jest o tyle pasjonująca, że autorka wprowadza nas w świat zagadnień epidemiologicznych mających - poprzez zastosowanie metafor językowych - zilustrować specyfikę form komunikacji marketingowej. Autorka twierdzi bowiem, że dobra reklama jest jak wirus - najważniejszy czynnik w epidemiach społecznych.
Miałam wrażenie, że wybrałam się w jakąś ekscytującą podróż, której atrakcyjność polegała na tym, że wszystko, co zwiedzałam, było ciekawe i zaskakujące, nawet jeśli znałam większość tych kreacji. I tak wspomniana podróż prowadzi nas przez ambient media, flashmoby, street marketing, aż po bluecasting.
Skuteczność tradycyjnych mediów spada i marketerzy muszą sięgać po niestandardowe formy kampanii reklamowych, wykorzystywać nowe technologie i kanały dotarcia. „Wielu marketerów oczekuje, że działania niestandardowe zapewnią im duży zasięg. To możliwe, ale cel tych działań powinien być inny - budowanie zaangażowania, zwracanie uwagi i przypominanie marki o sobie” - pisze Hatalska w swojej książce.
Przysłowie mówi "nie oceniaj książki po okładce", ale kiedy do moich rąk trafiła książka Natalii Hatalskiej "Cząstki przyciągania. Jak budować niestandardowe kampanie reklamowe" wydana w formie ekskluzywnego albumu, niemal natychmiast oszacowałam, że zawartość będzie równie interesująca co okładka. Nie pomyliłam się.
Niestereotypowy format i szata graficzna książki nie powinny dziwić, bo książka traktuje przecież o kreacji, przełamywaniu banału i innowacyjności w reklamie. To coś więcej niż tylko solidne kompendium wiedzy na temat niestandardowych kampanii reklamowych, które zrealizowano w Polsce.
Można powiedzieć, że "Cząstki przyciągania. Jak budować niestandardowe kampanie reklamowe" to encyklopedia dla marketerów i wszystkich, którzy zawodowo lub czysto hobbystycznie mają do czynienia z reklamą. Hatalska serwuje niczym wyszukane trunki najlepsze według niej kampanie reklamowe ostatnich lat, a całość ilustrują tematycznie dobrane zdjęcia.
Treść posegregowana jest w rozdziały, których nazwa odpowiada celom, jakie ma realizować reklama, opisują różne rodzaje emocji i zachowań związanych z marką. Autorka nazwała je cząstkami przyciągania i rzeczywiście jakby się głębiej zastanowić nad ich funkcją, to taką spełniają. Znajdziemy zatem przykłady kampanii związanych z zaangażowaniem użytkownika, wywołaniem emocji czy wykorzystaniem elementu zaskoczenia.
Tej książki się nie czyta, tylko ogląda jak świetny album, który zgromadził kolekcję perełek reklamy. Narracja wpleciona pomiędzy zdjęcia jest o tyle pasjonująca, że autorka wprowadza nas w świat zagadnień epidemiologicznych mających - poprzez zastosowanie metafor językowych - zilustrować specyfikę form komunikacji marketingowej. Autorka twierdzi bowiem, że dobra reklama jest jak wirus - najważniejszy czynnik w epidemiach społecznych.
Miałam wrażenie, że wybrałam się w jakąś ekscytującą podróż, której atrakcyjność polegała na tym, że wszystko, co zwiedzałam, było ciekawe i zaskakujące, nawet jeśli znałam większość tych kreacji. I tak wspomniana podróż prowadzi nas przez ambient media, flashmoby, street marketing, aż po bluecasting.
Skuteczność tradycyjnych mediów spada i marketerzy muszą sięgać po niestandardowe formy kampanii reklamowych, wykorzystywać nowe technologie i kanały dotarcia. „Wielu marketerów oczekuje, że działania niestandardowe zapewnią im duży zasięg. To możliwe, ale cel tych działań powinien być inny - budowanie zaangażowania, zwracanie uwagi i przypominanie marki o sobie” - pisze Hatalska w swojej książce.
Dziennik Internautów Małgorzata Gontarek, 2014-06-21