Książki

Miejsce, w którym spisuję literaturę, którą czytam. Nie uwzględniam książek przeczytanych przed czerwcem 2010.

Przeczytane

Przeczytane książki oceniam w prostej skali: minus soso plus

  • plus Ruby. Wzorce projektowe, Russ Olsen
    (listopad 2011) Minął prawie rok, odkąd zacząłem zabawę z językiem Ruby. Rok temu, po przeczytaniu pierwszych 200 stron książki wprowadzającej do języka Ruby, przystąpiłem do wykonywania małych stron internetowych w tym języku. Od tamtego czasu skrypty systemowe piszę wyłącznie w Ruby – do skryptów shellowych nie mam zamiaru wracać. Używając więc Rubiego na codzień, miałem potrzebę dowiedzieć się więcej nietrywialnych rzeczy. Z pomocą przyszła książka Russa. To nie jest typowa książka o wzorcach projektowych, które przecież już każdy zna i rozumie. Ta książka pokazuje, w jaki sposób ich używać, by było to the ruby way. Różnic jest naprawdę sporo w porównaniu z Javą lub PHP.
  • plus Release It! Design and Deploy Production-Ready Software, Michael T. Nygard
    (maj 2011) Głównym tematem książki są sposoby radzenia sobie m.in. z problemami stabilności, wydajności, skalowalności. Autor przytacza przykłady dużych systemów, które w pewnym momencie umierały i powodowały straty liczone w setkach tysięcy dolarów. Connnection poole, kesze, zero turnaround redeployment, load testing, klastry i inne tematy nie mają już dla mnie tajemnic. Świetna książka.
  • plus Hackers & Painters: Big Ideas from the Computer Age, Paul Graham
    (styczeń 2011) Książka porusza różne tematy – socjologię, filozofię, języki programowania, jak stać się bogatym, pomysły na walkę ze spamem i wiele innych. Lektura naprawdę sprawiała przyjemność – wszak Paul Graham w samym wstępie o tym „ostrzegł”.
  • plus Programowanie w języku Ruby, Dave Thomas, Chad Fowler, Andrew Hunt (oryg. Programming Ruby. The Pragmatic Programmers)
    (grudzień 2010) Przeczytałem wyłącznie pierwszy rozdział (ponad 200 stron), aby zrozumieć ten język. Czytanie setny raz o instrukcji if było dla mnie denerwujące i nudne w przypadku wielu różnych książek, jednak autorom tej po prostu się udało. Nie ominąłem ani jednej strony z podstaw języka. Do dalszej części książki wrócę, gdy będę potrzebował bardziej szczegółowej wiedzy – najprawdopodobniej przy następnym projekcie w Ruby on Rails.
  • plus Wielkie umysły programowania. Jak myślą i pracują twórcy najważniejszych języków, Federico Biancuzzi, Shane Warden (oryg. Masterminds of Programming. Conversations with the Creators of Major Programming Languages)
    (grudzień 2010) W porządku książka – bardzo dobrze czyta się te wywiady. Zainteresowałem się starymi językami programowania. Urzekł mnie język Eiffel – w latach 80. był gotowy do programowania kontraktowego, typów generycznych, closures. Później wprowadzono null-safety. Tych rzeczy nadal nie ma bardzo dużo języków. Pominąłem wywiady z twórcami „matematycznych” języków programowania (ML, APL) oraz twórcami UML-a.
  • minus SEO. Biblia, Jerri L. Ledford (Search Engine Optimization Bible)
    (grudzień 2010) To jest książka dla osób osób z ulicy, a nie developerów. Nie da się tego czytać. Ilu specjalistów SEO potrzeba, aby zmienić żarówkę oświetlenie światło żarówka zmiana tanio – treść tej książki brzmi podobnie.
  • plus The Passionate Programmer. Creating Remarkable Career in Software Development, Chad Fowler (listopad 2010)
  • plus Apprenticeship Patterns. Guidance for the Aspiring Software Craftsman, Dave H. Hoover, Adewale Oshineye
    (listopad 2010) krótki opis wszystkich wzorców
  • plus Test-Driven Development, Kent Beck (październik 2010)
  • minus Continuous Integration. Improving Software Quality and Reducing Risk, Paul M. Duvall with Steve Matyas, Andrew Glover
    (wrzesień 2010) Idea continous integration jest słuszna, jednak sama książka jest strasznie nudna. Pierwsze 60 stron jest w kółko o tym samym – dalej już nie wiem…
  • plus Czysty kod. Podręcznik dobrego programisty, Robert C. Martin (oryg. Clean code. A Handbook of Agile Software Craftsmanship) (wrzesień 2010)
  • plus The Pragmatic Programmer. From Journeyman to Master, Andrew Hunt, David Thomas
    (wrzesień 2010) – przeczytaj streszczenie porad od pragmatycznych programistów
  • soso Implementation patterns, Kent Beck (sierpień 2010)
  • plus Java Puzzlers, Joshua Bloch (sierpień 2010)
  • plus Java. Efektywne programowanie, Joshua Bloch (oryg. Effective Java)
    (lipiec 2010) przeczytaj najważniejsze porady
  • plus Refaktoryzacja do wzorców projektowych, Joshua Kerievsky (oryg. Refactoring to patterns)
    (czerwiec 2010) – rzuć okiem na krótką listę wzorców projektowych
  • plus Grails. A Quick-Start Guide, Dave Klein
  • plus Java. Współbieżność dla praktyków, Brian Goetz, Tim Peierls, Joshua Bloch (oryg. Java Concurrency in Practise)
    Przeczytałem wyłącznie pierwszy rozdział, który dał mi solidne podstawy nt. współbieżności. Do dalszych rozdziałów wrócę, gdy będę musiał dokładniej zgłębić tę tematykę.

W trakcie

  • Pragmatic Thinking & Learning. Refactor Your Wetware, Andrew Hunt

Najbliższa kolejka

  • Systemy Operacyjne, Andrew S. Tanenbaum (oryg. Modern Operating Systems)

Kiedyś ;-) Najważniejsze, że czekają już na półce

  • 97 Things Every Programmer Should Know, Kevlin Henney
  • 97 Things Every Software Architect Should Know, Richard Monson-Heafel
  • Architektura systemów zarządzania przedsiębiorstwem. Wzorce projektowe, Martin Fowler (oryg. Patterns of Enterprise Application Architecture – brawa za tłumaczenie!)
  • Being Geek. The Software Developer’s Career Handbook, Michael Lopp
  • Coders at Work, Peter Siebel
  • C++. 50 efektywnych sposobów na udoskonalenie Twoich programów, Scott Meyers (oryg. Effective C++. 50 Specific Ways to Improve Your Programs and Design)
  • Domain-Driven Design. Tackling Complexity in the Heart of Software, Eric Evans
  • Founders at Work, Jessica Livingston
  • Growing Object-Oriented Software, Guided by Tests, Steve Freeman, Nat Pryce
  • Refactoring. Improving the Design of Existing Code, Martin Fowler
  • ReWork. Change the Way You Work Forever, Jason Fried, David Heinemeier Hansson
  • Seven Languages in Seven Weeks: A Pragmatic Guide to Learning Programming Languages, Bruce Tate
  • Sprzedaj Swój Software. Znajdź rynek i odbiorców dla swoich programów, Edward Hasted (oryg. Software That Sells. A Practical Guide to Developing and Marketing Your Software Project)
  • Sztuka Infiltracji. Czyli jak włamać się do sieci komputerowych. Biblia Hakerów, Kevin D. Mitnick (oryg. The Art of Intrusion. The Real Stories Behind the Exploits of Hackers, Intruders and Deceivers – brawa za tłumaczenie!)
  • The Mythical Man Month and Other Essays on Software Engineering, Frederick P. Brooks Jr.
  • Working Effectively with Legacy Code, Michael Feathers
  • Wzorce Projektowe. Elementy oprogramowania obiektowego wielokrotnego użytku, Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (oryg. Design Patterns. Elements of Reusable Object-Oriented Software)

Nie przeczytam

  • Moja Praca Emigruje do Indii (a wszystko, co dostałem to ta marna książka), Chad Fowler (oryg. My Job Went to India (And All I Got Was This Lousy Book))
    Ta książka to „poprzednie wydanie” The Passionate Programmer, lepiej przeczytać od razu nowszą

Pomóż mi!

Co powinienem przeczytać w następnej kolejności? Pomóż mi i zostaw komentarz. :-)

2 Comments

Jest już 2 komentarzy ↓

Zostaw swój komentarz

W treści komentarza obowiązuje składnia Markdown.
**pogrubienie**, *kursywa*, nowy akapit - dwa znaki nowej linii