Recenzje
Budujące rozmowy. Szczęśliwy związek bez konfliktów
Jeśli jesteś w związku i chcesz czerpać z niego sto procent satysfakcji sięgnij po książkę prawniczki, terapeutki oraz mediatorki Laurie Puhn pod tytułem Budujące rozmowy. Szczęśliwy związek bez konfliktów. Jest ona skierowana zarówno do par z dużym stażem, jak i do tych, które dopiero się poznają. Autorka zakłada, że problemy i kłótnie między partnerami wynikają przede wszystkim z braku poprawnej komunikacji. Książka pokazuje jak powinniśmy rozmawiać, aby nasz związek nie tracił na sile i namiętności.
Głównym przesłaniem poradnika jest fakt, że nie możemy bezpośrednio zmienić drugiej osoby – musimy najpierw zacząć od samego siebie. Modyfikacja naszego zachowania nie pozostanie bez echa, ponieważ przerwie dotychczasowy schemat i wymusi nową reakcję partnera. Laurie Puhn przedstawia strategie pięciominutowych rozmów, które odnoszą się do różnych aspektów związku. Pokazuje między innymi jak stać się dla siebie miłym, przerywać kłótnie oraz kłócić się mądrze, rozpalić intymne relacje, umiejętnie krytykować, przepraszać, powstrzymywać emocje i wiele innych. Zwraca także uwagę na znaczenie drobnych uprzejmości, takich jak przywitanie się z partnerem po przebudzeniu czy pożegnanie przed zaśnięciem. Podkreśla również siłę pozytywnego myślenia.
Według mnie Budujące rozmowy to bardzo wartościowa pozycja, ponieważ pokazuje, że zmianę należy zacząć od samego siebie. Jest to trudne – ludzie będący w długich związkach często zaczynają być dla siebie nieuprzejmi. Laurie Puhn podkreśla potrzebę zawieszenia broni i przełamania się. Prosta życzliwość, uznanie czy empatia potrafią uczynić cuda. Przede wszystkim należy ze sobą umiejętnie i mądrze rozmawiać. Myślę, że ta książka może uratować niejedną parę przed rozstaniem. Gorąco polecam.
Głównym przesłaniem poradnika jest fakt, że nie możemy bezpośrednio zmienić drugiej osoby – musimy najpierw zacząć od samego siebie. Modyfikacja naszego zachowania nie pozostanie bez echa, ponieważ przerwie dotychczasowy schemat i wymusi nową reakcję partnera. Laurie Puhn przedstawia strategie pięciominutowych rozmów, które odnoszą się do różnych aspektów związku. Pokazuje między innymi jak stać się dla siebie miłym, przerywać kłótnie oraz kłócić się mądrze, rozpalić intymne relacje, umiejętnie krytykować, przepraszać, powstrzymywać emocje i wiele innych. Zwraca także uwagę na znaczenie drobnych uprzejmości, takich jak przywitanie się z partnerem po przebudzeniu czy pożegnanie przed zaśnięciem. Podkreśla również siłę pozytywnego myślenia.
Według mnie Budujące rozmowy to bardzo wartościowa pozycja, ponieważ pokazuje, że zmianę należy zacząć od samego siebie. Jest to trudne – ludzie będący w długich związkach często zaczynają być dla siebie nieuprzejmi. Laurie Puhn podkreśla potrzebę zawieszenia broni i przełamania się. Prosta życzliwość, uznanie czy empatia potrafią uczynić cuda. Przede wszystkim należy ze sobą umiejętnie i mądrze rozmawiać. Myślę, że ta książka może uratować niejedną parę przed rozstaniem. Gorąco polecam.
niedzielnatworczosc.blogspot.com Joanna Niedziela, 2014-07-13
AutoCAD 2014 PL. Pierwsze kroki
Zagubienie. To właśnie czuje początkujący użytkownik, gdy po raz pierwszy włącza i rozpoczyna pracę w programie AutoCAD. Książka pana Andrzeja Pikonia pt.”AutoCAD 2014 PL. Pierwsze kroki” ma za zadanie złagodzić, bądź całkowicie usunąć negatywne emocje powstałe w wyniku pierwszego kontaktu z AutoCAD-em. Autor wyraża nadzieję, że po przeczytaniu oraz przerobieniu ćwiczeń z książki, rysowanie w programie stanie się dla nas przyjemnością. Zobaczmy, czy nadzieje Autora nie są płonne.
Książka “AutoCAD 2014 PL. Pierwsze kroki” wydawnictwa Helion przeznaczona jest dla osób rozpoczynających naukę AutoCAD-a. Na stronie wydawnictwa mamy możliwość kupna klasycznej papierowej wersji lub wersji elektronicznej publikacji, którą możemy ściągnąć na dysk twardy w postaci pliku PDF. Do podręcznika (248 stron) zostały utworzone pliki z ćwiczeniami, które można pobrać ze strony internetowej.
Pierwsze dwa rozdziały zawierają podstawowe informacje dla użytkownika o uruchamianiu oraz interfejsie programu AutoCAD 2014. Znajdziemy w nich wiedzę nt. tworzenia nowych rysunków, zapisywania projektów, sposobach wprowadzania poleceń, czy kończenia pracy z programem. Są to informacje fundamentalne dla użytkowników niezaznajomionych z oprogramowaniem typu CAD.
W podręczniku “AutoCAD 2014 PL. Pierwsze kroki” kolejność omawianych zagadnień nie jest przypadkowa. Rozpoczynamy od najprostszych, ale zarazem najważniejszych poleceń, dzięki którym wykonamy pierwsze linie oraz figury geometryczne. W następnych działach poznajemy sposoby wprowadzania współrzędnych oraz precyzyjnego rysowania. Dowiadujemy się o metodach modyfikacji obiektów na rysunku oraz możemy szczegółowo przećwiczyć to zagadnienie. W dalszej części publikacji natrafiamy na rozdziały, w których omówiono możliwości tworzenia szyków, kreskowania, tekstów i wymiarów. Zgłębiając podręcznik, z czasem poznamy sposoby edycji obiektów za pomocą uchwytów, będziemy mogli wyświetlić informacje związane z naszym rysunkiem, uruchomimy menedżer właściwości. Na końcu nauczymy się tworzyć bloki, zarządzać warstwami oraz wykonywać wydruki. Dodatkowo w książce omówiono zagadnienie rysunku parametrycznego, które wychodzi poza granice kursu podstawowego z programu AutoCAD 2014 PL.
Ostatni rozdział przeznaczono na obszerne podsumowanie, gdzie użytkownik ma za zadanie wykonać rysunek elementu. W tym celu musi wykorzystać wiedzę wcześniej zdobytą, aby sprawnie wykonać zadany projekt. Każdy krok podsumowania zawiera niezbędne informacje oraz przedstawia ścieżkę rozwiązania projektowego dla rysowanego elementu.
Zadaniem książki “AutoCAD 2014 PL. Pierwsze kroki” jest zachęcić początkującego użytkownika do nauki oraz poznawania możliwości AutoCAD-a. Dzięki zastosowaniu prostego języka, ćwiczeniom oraz nieskomplikowanym przykładom, to założenie jest spełnione. Grafiki wykorzystane w publikacji jasno obrazują sposób użycia poleceń, bądź efekty zastosowania polecenia w danym ćwiczeniu. Kluczowe informacje zostały specjalnie oznakowane tak, aby użytkownik zwrócił na nie szczególną uwagę podczas nauki.
Podręcznik pana Andrzeja Pikonia jest publikacją, po przeczytaniu której pierwsze kroki początkującego użytkownika w programie AutoCAD będą łatwe i przyjemne. Duża ilość ćwiczeń pozwoli takiej osobie na zrozumienie danego polecenia oraz wykorzystania go w praktyce. Rysowanie w programie AutoCAD stanie się dla Ciebie przyjemnością.
Książka “AutoCAD 2014 PL. Pierwsze kroki” wydawnictwa Helion przeznaczona jest dla osób rozpoczynających naukę AutoCAD-a. Na stronie wydawnictwa mamy możliwość kupna klasycznej papierowej wersji lub wersji elektronicznej publikacji, którą możemy ściągnąć na dysk twardy w postaci pliku PDF. Do podręcznika (248 stron) zostały utworzone pliki z ćwiczeniami, które można pobrać ze strony internetowej.
Pierwsze dwa rozdziały zawierają podstawowe informacje dla użytkownika o uruchamianiu oraz interfejsie programu AutoCAD 2014. Znajdziemy w nich wiedzę nt. tworzenia nowych rysunków, zapisywania projektów, sposobach wprowadzania poleceń, czy kończenia pracy z programem. Są to informacje fundamentalne dla użytkowników niezaznajomionych z oprogramowaniem typu CAD.
W podręczniku “AutoCAD 2014 PL. Pierwsze kroki” kolejność omawianych zagadnień nie jest przypadkowa. Rozpoczynamy od najprostszych, ale zarazem najważniejszych poleceń, dzięki którym wykonamy pierwsze linie oraz figury geometryczne. W następnych działach poznajemy sposoby wprowadzania współrzędnych oraz precyzyjnego rysowania. Dowiadujemy się o metodach modyfikacji obiektów na rysunku oraz możemy szczegółowo przećwiczyć to zagadnienie. W dalszej części publikacji natrafiamy na rozdziały, w których omówiono możliwości tworzenia szyków, kreskowania, tekstów i wymiarów. Zgłębiając podręcznik, z czasem poznamy sposoby edycji obiektów za pomocą uchwytów, będziemy mogli wyświetlić informacje związane z naszym rysunkiem, uruchomimy menedżer właściwości. Na końcu nauczymy się tworzyć bloki, zarządzać warstwami oraz wykonywać wydruki. Dodatkowo w książce omówiono zagadnienie rysunku parametrycznego, które wychodzi poza granice kursu podstawowego z programu AutoCAD 2014 PL.
Ostatni rozdział przeznaczono na obszerne podsumowanie, gdzie użytkownik ma za zadanie wykonać rysunek elementu. W tym celu musi wykorzystać wiedzę wcześniej zdobytą, aby sprawnie wykonać zadany projekt. Każdy krok podsumowania zawiera niezbędne informacje oraz przedstawia ścieżkę rozwiązania projektowego dla rysowanego elementu.
Zadaniem książki “AutoCAD 2014 PL. Pierwsze kroki” jest zachęcić początkującego użytkownika do nauki oraz poznawania możliwości AutoCAD-a. Dzięki zastosowaniu prostego języka, ćwiczeniom oraz nieskomplikowanym przykładom, to założenie jest spełnione. Grafiki wykorzystane w publikacji jasno obrazują sposób użycia poleceń, bądź efekty zastosowania polecenia w danym ćwiczeniu. Kluczowe informacje zostały specjalnie oznakowane tak, aby użytkownik zwrócił na nie szczególną uwagę podczas nauki.
Podręcznik pana Andrzeja Pikonia jest publikacją, po przeczytaniu której pierwsze kroki początkującego użytkownika w programie AutoCAD będą łatwe i przyjemne. Duża ilość ćwiczeń pozwoli takiej osobie na zrozumienie danego polecenia oraz wykorzystania go w praktyce. Rysowanie w programie AutoCAD stanie się dla Ciebie przyjemnością.
Techtutor.pl 2014-08-12
AVR. Układy peryferyjne
„AVR. Układy peryferyjne” to kolejna książka Tomasza Francuza o AVR-ach. Pierwsza z nich w całości poświęcona była mikrokontrolerom AVR ATmega oraz ATtiny firmy Atmel.
Wydana w 2013 roku książka „AVR. Praktyczne projekty” oraz omawiana tegoroczna pozycja w całości skupiają się na nowej rodzinie produktów firmy Atmel – XMEGA.
Pierwsza rzecz na jaką należy zwrócić uwagę to, że te dwie książki to jest jedna pozycja wydana w dwóch częściach. Tytuły książek nie zdradzają tego wprost jednak autor jasno o tym wspomina we wstępie „Układów peryferyjnych” oraz dodatkowo akcentuje to w spisie treści. Numeracja rozdziałów drugiej książki o XMEGAch jest kontynuacją z pierwszej.
Polecam zatem przed rozpoczęciem lektury omawianego tytułu zapoznać się z pierwszym, ponieważ autor w wielu miejscach odwołuje się do wiadomości zawartych w „Praktycznych projektach”.
Zdarzają się także w obu tych tytułach odwołania do pierwszej książki „Język C dla mikrokontrolerów AVR” (nasza recenzja) jednak jako tako znając AVRy ATmega oraz język C nikt nie powinien mieć problemów z przyswojeniem wiedzy z tych tytułów.
Aby ocenić przydatność książki, przed zakupem zazwyczaj sprawdzam spis treści. W przypadku tej pozycji sam tytuł bardzo dobrze odzwierciedla jego zawartość. W książce przede wszystkim omawiane są układy peryferyjne mikrokontrolerów XMEGA, zarówno te wewnętrzne jak i zewnętrzne.
Dodatkowo przeczytamy o kwestiach programistycznych takich jak generowanie opóźnień, wstawki asemblerowe czy posługiwanie się debugerem. Z rzeczy przydatnych miłośnikowi robotyki turniejowej na pewno przydadzą się właśnie te zagadnienia programistyczne oraz opis peryferii wewnętrznych.
Szczegółowo zostały opisane układy analogowe: AC, ADC i DAC. Ten ostatni nie występował wcale w poprzednich rodzinach mikrokontrolerów, a dwa pozostałe zostały znacznie udoskonalone. W tym miejscu pochwalę także autora za bardzo praktyczne podejście do poruszanych przez niego zagadnień.
Pomimo tego, że układy analogowe ewoluowały to do momentu zapoznania się z treścią książki „AVR. Układy peryferyjne” nie miałem pomysłu jak w łatwy sposób ugryźć problem napięcia referencyjnego tych układów, które musi być mniejsze od napięcia zasilania mikrokontrolera o więcej niż 0,6V.
Układy zewnętrzne jakie zostały przedstawione w książce raczej odbiegają od zagadnień robotyki amatorskiej. Wiele stron zostało poświęconych przechowywaniu dużych ilości danych, czy to na kartach SD czy w zewnętrznych pamięciach Flash. Dodatkowo mowa jest o systemach plików. Oprócz tego ponad sto stron mówi o generowaniu obrazu wideo oraz odtwarzaniu muzyki, w tym MP3.To co się jeszcze może przydać w robotyce to obsługa wyświetlaczy alfanumerycznych/graficznych.
Z tych rozdziałów mogą skorzystać miłośnicy dronów, ponieważ autor pisze także o OSD, czyli nakładaniu informacji na obraz co jest często wykorzystywane w systemach FPV.
Jak wyżej wspomniałem, autor każde zagadnienie omawia w sposób praktyczny, pokazując realne zastosowania opisywanych układów. Często zwraca uwagę na błędy popełniane przez początkujących projektantów układów wybudowanych. W swoich książkach Tomasz Francuz nie ogranicza się do programowania, ale dzieli się także wiedzą z zakresu elektroniki, ze szczególnym naciskiem na aspekty związane z mikrokontrolerami.
Każdy opisywany układ poparty jest przykładem “z życia wziętym”. Ich implementacja nie jest zrealizowana “aby działało”, a pokazane jest rozwiązanie wykorzystujące w pełni sprzęt wewnętrzny mikrokontrolera, aby optymalnie wykorzystać jego zasoby i możliwości. Od autora nauczymy się także pisania dobrego i przejrzystego kodu oraz tego w jaki sposób uniknąć trudnych do wykrycia błędów.
„AVR. Układy peryferyjne” Tomasza Francuza to książka godna polecenia. Jeśli nie czujecie potrzeby wdrażania się w 32-bitowe Cortexy, to zdecydowanie zachęcam do zapoznania się z rodziną XMEGA, a książki Tomasza Francuza na pewno wam to ułatwią.
Wydana w 2013 roku książka „AVR. Praktyczne projekty” oraz omawiana tegoroczna pozycja w całości skupiają się na nowej rodzinie produktów firmy Atmel – XMEGA.
Pierwsza rzecz na jaką należy zwrócić uwagę to, że te dwie książki to jest jedna pozycja wydana w dwóch częściach. Tytuły książek nie zdradzają tego wprost jednak autor jasno o tym wspomina we wstępie „Układów peryferyjnych” oraz dodatkowo akcentuje to w spisie treści. Numeracja rozdziałów drugiej książki o XMEGAch jest kontynuacją z pierwszej.
Polecam zatem przed rozpoczęciem lektury omawianego tytułu zapoznać się z pierwszym, ponieważ autor w wielu miejscach odwołuje się do wiadomości zawartych w „Praktycznych projektach”.
Zdarzają się także w obu tych tytułach odwołania do pierwszej książki „Język C dla mikrokontrolerów AVR” (nasza recenzja) jednak jako tako znając AVRy ATmega oraz język C nikt nie powinien mieć problemów z przyswojeniem wiedzy z tych tytułów.
Aby ocenić przydatność książki, przed zakupem zazwyczaj sprawdzam spis treści. W przypadku tej pozycji sam tytuł bardzo dobrze odzwierciedla jego zawartość. W książce przede wszystkim omawiane są układy peryferyjne mikrokontrolerów XMEGA, zarówno te wewnętrzne jak i zewnętrzne.
Dodatkowo przeczytamy o kwestiach programistycznych takich jak generowanie opóźnień, wstawki asemblerowe czy posługiwanie się debugerem. Z rzeczy przydatnych miłośnikowi robotyki turniejowej na pewno przydadzą się właśnie te zagadnienia programistyczne oraz opis peryferii wewnętrznych.
Szczegółowo zostały opisane układy analogowe: AC, ADC i DAC. Ten ostatni nie występował wcale w poprzednich rodzinach mikrokontrolerów, a dwa pozostałe zostały znacznie udoskonalone. W tym miejscu pochwalę także autora za bardzo praktyczne podejście do poruszanych przez niego zagadnień.
Pomimo tego, że układy analogowe ewoluowały to do momentu zapoznania się z treścią książki „AVR. Układy peryferyjne” nie miałem pomysłu jak w łatwy sposób ugryźć problem napięcia referencyjnego tych układów, które musi być mniejsze od napięcia zasilania mikrokontrolera o więcej niż 0,6V.
Układy zewnętrzne jakie zostały przedstawione w książce raczej odbiegają od zagadnień robotyki amatorskiej. Wiele stron zostało poświęconych przechowywaniu dużych ilości danych, czy to na kartach SD czy w zewnętrznych pamięciach Flash. Dodatkowo mowa jest o systemach plików. Oprócz tego ponad sto stron mówi o generowaniu obrazu wideo oraz odtwarzaniu muzyki, w tym MP3.To co się jeszcze może przydać w robotyce to obsługa wyświetlaczy alfanumerycznych/graficznych.
Z tych rozdziałów mogą skorzystać miłośnicy dronów, ponieważ autor pisze także o OSD, czyli nakładaniu informacji na obraz co jest często wykorzystywane w systemach FPV.
Jak wyżej wspomniałem, autor każde zagadnienie omawia w sposób praktyczny, pokazując realne zastosowania opisywanych układów. Często zwraca uwagę na błędy popełniane przez początkujących projektantów układów wybudowanych. W swoich książkach Tomasz Francuz nie ogranicza się do programowania, ale dzieli się także wiedzą z zakresu elektroniki, ze szczególnym naciskiem na aspekty związane z mikrokontrolerami.
Każdy opisywany układ poparty jest przykładem “z życia wziętym”. Ich implementacja nie jest zrealizowana “aby działało”, a pokazane jest rozwiązanie wykorzystujące w pełni sprzęt wewnętrzny mikrokontrolera, aby optymalnie wykorzystać jego zasoby i możliwości. Od autora nauczymy się także pisania dobrego i przejrzystego kodu oraz tego w jaki sposób uniknąć trudnych do wykrycia błędów.
„AVR. Układy peryferyjne” Tomasza Francuza to książka godna polecenia. Jeśli nie czujecie potrzeby wdrażania się w 32-bitowe Cortexy, to zdecydowanie zachęcam do zapoznania się z rodziną XMEGA, a książki Tomasza Francuza na pewno wam to ułatwią.
forbot.pl Hudyvolt, 2014-08-12
Triatlon od A do Z. Treningi do wszystkich dystansów
Jakiś czas temu, od Wydawnictwa Septem otrzymałem książkę "Triatlon od A do Z - Trening do wszystkich dystansów". Tę samą, mogliście wygrać w kilku konkursach organizowanych na naszym fanpejdżu :) Nie wiem co myślą zwycięzcy po przeczytaniu tej pozycji, ale poniżej kilka słów ode mnie na jej temat.
Po przeczytaniu historii Chrissie Wellington czy Rich'a Roll'a, oraz śledząc na bieżąco wyczyny zwykłych (NIEZWYKŁYCH) amatorów triathlonu, takich jak Krasus, Bo czy Błażej, uważam tę dyscyplinę za jedną z najbardziej pasjonujących w sporcie. W sporcie dostępnym dla amatorów. Triathlon kusi.
Dzięki książce Marka Kleanthousa, mamy możliwość zapoznać się z tym sportem od podstaw. Dla laików takich jak ja, jest ona źródłem wszystkich potrzebnych informacji. Znaleźć tu można porady dotyczące sprzętu, diety, przykładowych planów treningowych, ale również jak uporządkować swój czas, czy jak rozplanować starty, dzieląc je na te najważniejsze i te mniej znaczące. Autor uzupełnia informacje poradami jak dobrać sprzęt - rower, piankę, buty, oraz słowniczkiem, który wyjaśnia często mało mówiące amatorowi pojęcia. Książkę czyta się bardzo przyjemnie, autor prowadzi nas od zupełnych podstaw do zagadnień nieco bardziej skomplikowanych. Nie oceniam zawartych w książce planów treningowych, bo żaden ze mnie specjalista, ale sądząc po doświadczeniu autora, są one absolutnie wiarygodne. Mimo, że jest to pozycja dla triathlonistów, wiele wątków dotyczy biegania, co oczywiście mnie bardzo odpowiada. Podsumowując, dla osób, które chcą rozpocząć przygodę z triathlonem, książka wydaje się być pozycją z typu must have. Dla laików, oraz lubiących czytać o sporcie na pewno nie będzie rozczarowaniem.
O autorze (informacja z okładki)Mark Kreanthous ponad 1000 razy przekraczał metę wyścigów sportowych na całym świecie. Ukończył w sumie 400 triathlonów, w tym 32 triathlony Ironman. Całe 32 lata życia poświęcił treningom i zgłębianiu tajników sukcesu triathlonisty. Dziś nadal startuje w swojej grupie wiekowej, przede wszystkim jednak szkoli swoich następców — sportowców, którzy osiągają fenomenalne wyniki w triathlonach na całym świecie. Mark opracował własny system monitorowania obciążenia organizmu, dzięki któremu osiągniesz optymalną wydolność i w pełni przygotujesz się do zawodów!
Po przeczytaniu historii Chrissie Wellington czy Rich'a Roll'a, oraz śledząc na bieżąco wyczyny zwykłych (NIEZWYKŁYCH) amatorów triathlonu, takich jak Krasus, Bo czy Błażej, uważam tę dyscyplinę za jedną z najbardziej pasjonujących w sporcie. W sporcie dostępnym dla amatorów. Triathlon kusi.
Dzięki książce Marka Kleanthousa, mamy możliwość zapoznać się z tym sportem od podstaw. Dla laików takich jak ja, jest ona źródłem wszystkich potrzebnych informacji. Znaleźć tu można porady dotyczące sprzętu, diety, przykładowych planów treningowych, ale również jak uporządkować swój czas, czy jak rozplanować starty, dzieląc je na te najważniejsze i te mniej znaczące. Autor uzupełnia informacje poradami jak dobrać sprzęt - rower, piankę, buty, oraz słowniczkiem, który wyjaśnia często mało mówiące amatorowi pojęcia. Książkę czyta się bardzo przyjemnie, autor prowadzi nas od zupełnych podstaw do zagadnień nieco bardziej skomplikowanych. Nie oceniam zawartych w książce planów treningowych, bo żaden ze mnie specjalista, ale sądząc po doświadczeniu autora, są one absolutnie wiarygodne. Mimo, że jest to pozycja dla triathlonistów, wiele wątków dotyczy biegania, co oczywiście mnie bardzo odpowiada. Podsumowując, dla osób, które chcą rozpocząć przygodę z triathlonem, książka wydaje się być pozycją z typu must have. Dla laików, oraz lubiących czytać o sporcie na pewno nie będzie rozczarowaniem.
O autorze (informacja z okładki)Mark Kreanthous ponad 1000 razy przekraczał metę wyścigów sportowych na całym świecie. Ukończył w sumie 400 triathlonów, w tym 32 triathlony Ironman. Całe 32 lata życia poświęcił treningom i zgłębianiu tajników sukcesu triathlonisty. Dziś nadal startuje w swojej grupie wiekowej, przede wszystkim jednak szkoli swoich następców — sportowców, którzy osiągają fenomenalne wyniki w triathlonach na całym świecie. Mark opracował własny system monitorowania obciążenia organizmu, dzięki któremu osiągniesz optymalną wydolność i w pełni przygotujesz się do zawodów!
PolskaBiega.pl 2014-08-12
Praca z zastanym kodem. Najlepsze techniki
Są takie tematy, których autorzy książek dotyczących inżynierii oprogramowania sukcesywnie
unikają niczym ognia. Mam tu na myśli te najciemniejsze zakątki naszej profesji. Nie dziwię się temu wcale; nie jest miło pisać o projektach z góry skazanych na klęskę, o tym, jak pracować
z dziesięcioletnim kodem opatrzonym chińskimi komentarzami bądź o technikach przetrwania
przy pracy w rozproszonym zespole, gdzie kierownik projektu po stronie klienta nie ma o tym projekcie bladego pojęcia, technologia, na której projekt się opiera, jest niestabilna, a morale członków zespołu jest tak niskie, że już nawet nikomu nie chce się na ten temat dyskutować. Znacznie przyjemniej jest pisać o nowych, cudownych językach programowania, niezawodnych
narzędziach czy genialnych metodologiach, które sprawią, że projekt sam się będzie prowadził. Dla jasności: nie jestem wcale przeciwnikiem tej drugiej kategorii tematów; wręcz przeciwnie – cieszę się, że ludzie z całego świata nieustannie tworzą nowe narzędzia, języki czy metodologie, sprawiające, iż nasze próby przetrwania w smolistym grzęzawisku inżynierii oprogramowania mają coraz większe szanse powodzenia. Z drugiej strony ubolewam nad tym, że te trudniejsze, mniej wdzięczne, ale jakże życiowe tematy związane z wytwarzaniem
oprogramowania traktowane są przez autorów fachowej literatury po macoszemu.
Z tego też względu z dużym zainteresowaniem przyglądam się tytułom, które tego rodzaju zagadnienia analizują. Jeden z tych tytułów chciałbym dziś zaprezentować na łamach kolumny Klub Dobrej Książki.
Praca z zastanym kodem (ang. legacy code) jest niewątpliwie tematem,
który można zaliczyć do trudnych i mało wdzięcznych zagadnień związanych z inżynierią oprogramowania. Z drugiej strony problem ten jest powszechny; sytuacje, w których zespoły programistyczne muszą borykać się z tego rodzaju kodem, są na porządku dziennym. Jestem w stanie zaryzykować stwierdzenie, iż projekty tego rodzaju są częścią pracy statystycznego programisty znacznie częściej niż przedsięwzięcia, w których można cieszyć się luksusem
pisania kodu od podstaw. W tej sytuacji z wielkim zainteresowaniem sięgnąłem po książkę autorstwa Michaela Feathersa pt. Praca z zastanym kodem. Najlepsze Techniki. Fakt, iż autor tej pozycji wywodzi się z legendarnej firmy konsultingowej Object Mentor, jeszcze bardziej zaostrzył mój apetyt na tę lekturę. I wyprzedzając nieco fakty, mogę stwierdzić, że się na tej książce nie zawiodłem…
Kilka słów o strukturze omawianej pozycji. Książka składa się z trzech głównych części, podzielonych w sumie na 25 rozdziałów. Części pierwsza, opatrzona tytułem Mechanika Zmian, stanowi swoiste wprowadzenie w temat, oraz – co istotne – definiuje słownik pojęć, na których opiera się główna treść książki, zawarta w części drugiej. Czytając to wprowadzanie, poznamy
następujące tematy:
- rola wprowadzania zmian w oprogramowaniu,
- rola testów w pracy z zastanym kodem,
- rozpoznanie i separowanie jako podstawowe techniki usuwania zależności przy pracy z zastanym kodem,
- model spoinowy, czyli jak można zmieniać zachowanie programu bez jego edycji,
- narzędzia wspierające pracę z zastanym kodem.
Część druga książki, zatytułowana Zmiany w Oprogramowaniu, to obszerny fragment zorganizowany w postaci FAQ (ang. Frequently Asked Questions), czyli najczęściej zadawanych pytań oraz odpowiedzi dotyczących pracy z zastanym kodem. Autor omawia w tym miejscu następujące zagadnienia:
- Jak mogę dodać nową funkcjonalność w zastanym kodzie?
- Co zrobić, kiedy nie mogę umieścić danej klasy w jarzmie testowym?
- Co zrobić, kiedy nie mogę uruchomić danej metody w jarzmie testowym?
- Muszę dokonać zmian. Które metody powinienem przetestować?
- Muszę dokonać wielu zmian w jednym miejscu. Czy powinienem pousuwać zależności we wszystkich klasach, których te zmiany dotyczą?
- Muszę dokonać zmian, ale nie wiem, jakie testy napisać.
- Dobijają mnie zależności biblioteczne.
- Cała moja aplikacja to wywołania API.
- Nie rozumiem wystarczająco dobrze kodu, żeby go zmienić.
- Moja aplikacja nie ma struktury.
- Przeszkadza mi mój testowy kod.
- Mój projekt nie jest zorientowany obiektowo. Jak mogę bezpiecznie wprowadzać zmiany?
- Ta klasa jest za duża, a ja nie chcę, żeby stała się jeszcze większa.
- Wszędzie zmieniam ten sam kod.
- Muszę zmienić monstrualną metodę, lecz nie mogę napisać do niej testów.
- Skąd mam wiedzieć, czy czegoś nie psuję?
Ostatnia, trzecia część książki, opatrzona tytułem Techniki Usuwania Zależności, to katalog refaktoryzacji, które są szczególnie przydatne przy pracy z zastanym kodem.
Patrząc z mojej perspektywy (programista oraz techniczny kierownik projektów IT z ponad dziesięcioletnim doświadczeniem), książka autorstwa Michaela Feathersa jest bardzo cennym źródłem wiedzy w temacie organizacji pracy z zastanym kodem. Szczególnie wartościowy jest katalog rozwiązań opisany w części drugiej (Zmiany w Oprogramowaniu), głównie ze względu na swój wysoce praktyczny i rzeczowy charakter. W trakcie lektury czuć, że mamy do czynienia z bardzo doświadczonym autorem; z tego względu po lekturze tej pozycji najwięcej skorzystają dojrzali programiści, występujący w roli liderów technicznych w swoich zespołach (dla początkujących adeptów inżynierii oprogramowania treść tej książki będzie niewątpliwie przytłaczająca).
W ramach podsumowania niniejszej recenzji pozwolę sobie zacytować fragment przedmowy do książki Praca z zastanym kodem autorstwa Roberta C. Martin'a (znanego pod pseudonimem Wujek Bob):
"Ta książka to nie zaczarowany pocisk. Nie dowiesz się z niej, jak w ciągu jednej
nocy wyeliminować nagromadzone w Twoich systemach zepsucie. Zamiast tego
w książce tej opisano zbiór elementów dyscypliny, koncepcji oraz postaw, które
będą przy Tobie obecne przez resztę Twojej kariery i które pomogą Ci zmienić systemy,
które stopniowo się degenerują, w systemy, które stopniowo są coraz lepsze."
unikają niczym ognia. Mam tu na myśli te najciemniejsze zakątki naszej profesji. Nie dziwię się temu wcale; nie jest miło pisać o projektach z góry skazanych na klęskę, o tym, jak pracować
z dziesięcioletnim kodem opatrzonym chińskimi komentarzami bądź o technikach przetrwania
przy pracy w rozproszonym zespole, gdzie kierownik projektu po stronie klienta nie ma o tym projekcie bladego pojęcia, technologia, na której projekt się opiera, jest niestabilna, a morale członków zespołu jest tak niskie, że już nawet nikomu nie chce się na ten temat dyskutować. Znacznie przyjemniej jest pisać o nowych, cudownych językach programowania, niezawodnych
narzędziach czy genialnych metodologiach, które sprawią, że projekt sam się będzie prowadził. Dla jasności: nie jestem wcale przeciwnikiem tej drugiej kategorii tematów; wręcz przeciwnie – cieszę się, że ludzie z całego świata nieustannie tworzą nowe narzędzia, języki czy metodologie, sprawiające, iż nasze próby przetrwania w smolistym grzęzawisku inżynierii oprogramowania mają coraz większe szanse powodzenia. Z drugiej strony ubolewam nad tym, że te trudniejsze, mniej wdzięczne, ale jakże życiowe tematy związane z wytwarzaniem
oprogramowania traktowane są przez autorów fachowej literatury po macoszemu.
Z tego też względu z dużym zainteresowaniem przyglądam się tytułom, które tego rodzaju zagadnienia analizują. Jeden z tych tytułów chciałbym dziś zaprezentować na łamach kolumny Klub Dobrej Książki.
Praca z zastanym kodem (ang. legacy code) jest niewątpliwie tematem,
który można zaliczyć do trudnych i mało wdzięcznych zagadnień związanych z inżynierią oprogramowania. Z drugiej strony problem ten jest powszechny; sytuacje, w których zespoły programistyczne muszą borykać się z tego rodzaju kodem, są na porządku dziennym. Jestem w stanie zaryzykować stwierdzenie, iż projekty tego rodzaju są częścią pracy statystycznego programisty znacznie częściej niż przedsięwzięcia, w których można cieszyć się luksusem
pisania kodu od podstaw. W tej sytuacji z wielkim zainteresowaniem sięgnąłem po książkę autorstwa Michaela Feathersa pt. Praca z zastanym kodem. Najlepsze Techniki. Fakt, iż autor tej pozycji wywodzi się z legendarnej firmy konsultingowej Object Mentor, jeszcze bardziej zaostrzył mój apetyt na tę lekturę. I wyprzedzając nieco fakty, mogę stwierdzić, że się na tej książce nie zawiodłem…
Kilka słów o strukturze omawianej pozycji. Książka składa się z trzech głównych części, podzielonych w sumie na 25 rozdziałów. Części pierwsza, opatrzona tytułem Mechanika Zmian, stanowi swoiste wprowadzenie w temat, oraz – co istotne – definiuje słownik pojęć, na których opiera się główna treść książki, zawarta w części drugiej. Czytając to wprowadzanie, poznamy
następujące tematy:
- rola wprowadzania zmian w oprogramowaniu,
- rola testów w pracy z zastanym kodem,
- rozpoznanie i separowanie jako podstawowe techniki usuwania zależności przy pracy z zastanym kodem,
- model spoinowy, czyli jak można zmieniać zachowanie programu bez jego edycji,
- narzędzia wspierające pracę z zastanym kodem.
Część druga książki, zatytułowana Zmiany w Oprogramowaniu, to obszerny fragment zorganizowany w postaci FAQ (ang. Frequently Asked Questions), czyli najczęściej zadawanych pytań oraz odpowiedzi dotyczących pracy z zastanym kodem. Autor omawia w tym miejscu następujące zagadnienia:
- Jak mogę dodać nową funkcjonalność w zastanym kodzie?
- Co zrobić, kiedy nie mogę umieścić danej klasy w jarzmie testowym?
- Co zrobić, kiedy nie mogę uruchomić danej metody w jarzmie testowym?
- Muszę dokonać zmian. Które metody powinienem przetestować?
- Muszę dokonać wielu zmian w jednym miejscu. Czy powinienem pousuwać zależności we wszystkich klasach, których te zmiany dotyczą?
- Muszę dokonać zmian, ale nie wiem, jakie testy napisać.
- Dobijają mnie zależności biblioteczne.
- Cała moja aplikacja to wywołania API.
- Nie rozumiem wystarczająco dobrze kodu, żeby go zmienić.
- Moja aplikacja nie ma struktury.
- Przeszkadza mi mój testowy kod.
- Mój projekt nie jest zorientowany obiektowo. Jak mogę bezpiecznie wprowadzać zmiany?
- Ta klasa jest za duża, a ja nie chcę, żeby stała się jeszcze większa.
- Wszędzie zmieniam ten sam kod.
- Muszę zmienić monstrualną metodę, lecz nie mogę napisać do niej testów.
- Skąd mam wiedzieć, czy czegoś nie psuję?
Ostatnia, trzecia część książki, opatrzona tytułem Techniki Usuwania Zależności, to katalog refaktoryzacji, które są szczególnie przydatne przy pracy z zastanym kodem.
Patrząc z mojej perspektywy (programista oraz techniczny kierownik projektów IT z ponad dziesięcioletnim doświadczeniem), książka autorstwa Michaela Feathersa jest bardzo cennym źródłem wiedzy w temacie organizacji pracy z zastanym kodem. Szczególnie wartościowy jest katalog rozwiązań opisany w części drugiej (Zmiany w Oprogramowaniu), głównie ze względu na swój wysoce praktyczny i rzeczowy charakter. W trakcie lektury czuć, że mamy do czynienia z bardzo doświadczonym autorem; z tego względu po lekturze tej pozycji najwięcej skorzystają dojrzali programiści, występujący w roli liderów technicznych w swoich zespołach (dla początkujących adeptów inżynierii oprogramowania treść tej książki będzie niewątpliwie przytłaczająca).
W ramach podsumowania niniejszej recenzji pozwolę sobie zacytować fragment przedmowy do książki Praca z zastanym kodem autorstwa Roberta C. Martin'a (znanego pod pseudonimem Wujek Bob):
"Ta książka to nie zaczarowany pocisk. Nie dowiesz się z niej, jak w ciągu jednej
nocy wyeliminować nagromadzone w Twoich systemach zepsucie. Zamiast tego
w książce tej opisano zbiór elementów dyscypliny, koncepcji oraz postaw, które
będą przy Tobie obecne przez resztę Twojej kariery i które pomogą Ci zmienić systemy,
które stopniowo się degenerują, w systemy, które stopniowo są coraz lepsze."
klubdobrejksiazki.pl Rafał Kocisz