Прочитанные мной книги

О сколько нам открытий чудных
Готовят просвещенья дух
И Опыт, [сын] ошибок трудных,
И Гений, [парадоксов] друг,
[И Случай, Бог изобретатель]    

А.С. Пушкин

Живи будто завтра умрешь,
учись будто будешь жить вечно.

Махатма Ганди

У умных большие библиотеки.
У глупых большие телевизоры.

Поговорка

По статистике 80% программистов не читают профильных книг. По той же статистике продуктивность лучших программистов больше чем у худших в 10 раз. Пусть я никогда не буду лучшим программистом, но по крайней мере я стараюсь не пристать к худшим.

В книгах содержится информация которую вы не получите никаким другим способом.

Программирование, проектирование

The Humble Programmer, Edsger Dijkstra

Чтение этой небольшой статьи не займёт много вашего времени, но откроет перед вами одну из фундаментальных проблем – человеческую ограниченность, и способ как с этой проблемой бороться.

On the Criteria to Be Used in Decomposing Systems into Modules, Parnas

Совсем крохотная статья, но очень полезная для всех программистов. Обязательно прочтите. Она вооружит вас важным и полезным принципом.

Object Oriented Analysis and Design, Grady Booch

Название очень ясно описывает содержание: книга об объектно-ориентированном анализе и дизайне. Если вы думаете, что знаете ООП, но не знаете что такое ООАД, значит ООП вы тоже не знаете. Без анализа и дизайна объектно-ориентированного программирования не существует.

Очень годная книга и она (или подобная ей) обязательно должна быть прочитана.

Code Complete, Steve McConnell

Книга для программистов о кодировании. Масса времени (до 80%) уходит на поддержание проекта. Грамотно оформленный код позволяет радикально облегчить эту задачу.

Возможно она могла быть и короче, но тем не менее очень ценная книга. Она должна быть прочитана.

UML Distilled, Martin Fowler

Если вам нужно быстрое введение в UML, то эта книга как раз подойдёт. Коротко, по существу и без снобизма. Рекомендую.

201 Principles of Software Development, Alan M. Davis

Книга обзорная, но неплохая. Одна страница на каждый принцип, который сопровождается ссылкой на книгу, из которые он извлечён.

Closure, The definitive guide, Michael Bolin

Эта книга не что иное как введение в такой замечательный инструмент для разработки javascript приложений среднего и высокого уровня сложности: Google Closure. С помощью этого инструмента написаны такие приложения как Google Mail и прочие их продукты.

Книга доступная и в общем-то доходчива и даст хороший старт в этой области. Для достижение же уровня эксперта по Google Closure необходимо тщательное изучение исходного кода. Я давно не видел библиотеки которая была бы снабжена таким обилием комментариев.

Моё знакомство с этим инструментом началось с просмотра доклада «JavaScript Programming in the Large with Closure Tools»Ссылка на конференции Google I/O 2011.

Также для меня ценным оказались приложения, особенно то, в котором указаны недостатки функционального метода организации наследования из книги «JavaScript: The Good Parts» by Douglas Crockford.

Хорошая книга. Спасибо, Майкл.

Bug Patterns In Java, Eric Allen

Главный и единственный тезис книги можно передать одним предложением: все проблемы от дублирования кода. Содержание книги полностью состоит из обзора возможных симптомов нарушения этого правила.

ZeroMQ, by Pieter Hintjens

Книга посвящена использованию библиотеки ZeroMQ в программных продуктах. Хотя разработка сетевых протоколов не является моей специализацией, но почитать всё равно было интересно.

Считаю, что автору нужно было более детально описать различие шаблонов библиотеки, хотя код библиотеки (написана на C) читается очень легко.

Web Development with Zend Framework 2, Michael Romer

Неплохое введение для программиста знакомящегося с Zend Framework. Даёт представление об главных компонентах библиотеки, связях между ними. Достаточно ссылок на сторонние вспомогательные проекты и практики.

Проста, практична и понятна. Может быть потому, что написана немцем.

The Pragmatic Programmer, by Andrew Hunt, David Thomas

В книге рассмотрены основные принципы разработки программного обеспечения, тестирования, сбора требований. Получается что обзорная.

Вся информация, которую вы найдёте в этой книге, уже будет у вас если вы читали остальные книги этого раздела. Вроде бы смысла читать нет, но книга неплохая. Повторение – мать учения.

Scrum and XP from the Trenches, Henrik Kniberg

Для начала, эта книга неправильно называется. Её следовало бы назвать «Как в нашей компании построен скрам». Это не передовая. Это текущей состояние дел конкретно у них. Эта книга не о скраме как таковом, а лишь описание в какой форме он у них существует.

О пользе книги судить трудно, т.к. после прочтения я посмотрел свои записи, которые делаю по ходу чтения, и увидел что их не много и они не такие уж значительные. Я думаю, что книга пригодится тем, кто только в теории знаком со скрамом. Книга от первого лица поведает какие проблемы ожидают вас впереди. От себя только добавлю, что мы в нашей реализации тоже шли по тем же стопам.

Перед прочтением вы уже должны иметь представление о скраме, иначе книга будет пустым звуком. Опытным скрамщикам эта книга скорее всего ничего не даст.

Примечание

Книга переведена на русский язык: Scrum и XP: заметки с передовойСсылка.

Domain-Driven Design: Tackling Complexity in the Heart of Software, Eric Evans

Считаю эту книгу наиважнейшей для программиста. Столько прояснилось и встало на свои места в моей голове после прочтения этой книги. Слои и взаимодействия между ними, репозитории и аггрегаты. Все представленные принципы имеют прямое практическое применение и так важны для построения целостной и гибкой системы. Вы просто обязаны прочитать её.

Maintainable JavaScript, Nicholas C. Zakas

Книга доведёт о практиках способствующих работе команды над проектом. Подойдёт начинающим и среднего уровня разработчикам. Профессионалам эта книга ничего не даст.

PHP Beyond the web, Rob Aley

Книга о не профильных (не веб) аспектах программирования на PHP. Неплохая книга. Узнал несколько новых трюков и особенностей. Книга на половину состоит из ссылок на библиотеки и расширения PHP. К сожалению некоторые из этих библиотек уже не развиваются.

HTML5: Up and Running, Mark Pilgrim

Не сказать что какая-то особая книга, но подтянет ваши знания по нововведениям в HTML если вы отстали. Я нашёл для себя несколько ньюансов которые не знал.

Flex & Bison, John Levine

Это переиздание другой его книги: «lex & yacc», но та содержит много ссылок на устаревшие реализации. Хотя и схожа содержанием с этой.

Книга неплохая для начинающих. Вроде бы ставит многое на своим места. Однако разобраться вот так сразу без обращения к руководствам flex и bison, а так же без постоянных попыток проверить прочитанное, вряд ли удастся. Пришлось вспоминать как программировать на Си.

Чего, как мне кажется, не хватает в этой книге, так это ссылки на современные практики по управлению памятью в Си. Много места эта информация не заняла бы, а вот пользы от неё было бы много, т.к. выделение памяти через strdup, как это показано в книге, сулит очень много проблем с отслеживанием подлежащей освобождению памяти.

Version control with git, Jon Loeliger

Я уже знал кое-что о git, но некоторые белые пятна ещё оставались (и остаются по сей день). Эта книга помогла поближе познакомиться с git, познакомила с неизвестными для меня командами, решениями часто встречающихся проблем. Книга неплохая, но не является исчерпывающим источником информации по инструменту.

Dart: Up and Running, Kathy Walrath and Seth Ladd

Очень короткое введение в синтаксис языка. Показаны некоторые подводные камни при транслировании кода в Javascript. В этой книге не освещён вопрос перспективности языка и преимуществ его использования перед другими подобными решениями. Но от себя могу сказать, что ClojureScript выглядит куда более многообещающим.

Facts and Fallacies of Software Engineering, Robert L. Glass

Книга обзорная, но хорошая. Во-первых, она короткая, написана чётко и ясно. Во-вторых, написана практиком. То есть книга о реальных вещах, а не призрачных многообещающих технологиях.

Эта книга не о программировании (на каком-нибудь языке), а об ремесле в принципе: что работает, что не работает и почему. Я для себя открыл несколько новых фактов, а некоторые вспомнил, и как вовремя. Кроме того дан отличный список литературы. Не сказать, что книга первостепенной важности, но по приоритету я бы поставил её ближе к верху.

R in action, Robert I. Kabacoff

Язык R мне показался очень интересным и в плане решения математических задач его высокоуровневыми вызовами и графическими возможностями представления данных. Книга в этом знакомстве мне очень помогла своей лёгкостью изложения. Языку посвящены первые шесть глав. Остальные главы посвящены применению статистических методов.

Эта книга не научит вас статистике. Если вы не изучали статистику в институте или по другим книгам, то вторая половина книги (с седьмой главы) вам ничего не даст. Я эти главы пропустил.

Основная цель книги – как можно быстрее дать возможность статистику перейти к анализу данных, не вдаваясь в тонкости языка (для этой цели больше подойдёт официальное руководство). Это книга не для программистов как таковых, но для знакомства с языком и его возможностями подойдёт.

Patterns Of Enterprise Application Architecture, Martin Fowler

Книга в общем хорошая, но к моменту прочтения я почти все паттерны уже знал. Хотя прочтение лишним не оказалось, книга больше нацелена на младший и средний программистский состав. Для чего хороша эта книга:

Growing Object-Oriented Software Guided by Tests, by Steve Freeman, Nat Pryce

Это замечательно написанное практическое введение в TDD. Дана не только информация о принципах написания тестов и классов, которая сама по себе очень познавательна, но и ход мыслей разработчика. Если тесты направляют разработку, то программировать гораздо легче.

Я очень жалею, что не прочитал эту книгу раньше, так хороша.

Building Microservices, by Sam Newman

Книга обзорного плана, вообще, так сказать. Конкретики не то, чтобы совсем нет, но мало. Мне кажется если сделать её в четыре раза короче, она от этого только выиграет. Книга даст вам общее представление о микросервисах, принципах их построения и некоторых вспомогательных инструментах.

Я оцениваю её как среднюю.

Clojure

Clojure и ClojureScript очень интересный инструмент и удобный прагматический язык. Я прочитал две книги для начинающих: Programming Clojure: Second Edition, Stuart Halloway и Clojure for the Brave and True, Daniel Higginbotham. Книги неплохие, но есть другая, гораздо лучшая: Clojure Programming, Chas Emerick. Её и надо читать.

Язык программирования Go, Донован, Керниган

Годится для самостоятельного изучения. Язык хорош своей быстротой и простотой. С непривычки некоторые моменты раздражают.

Для сравнения один свой домашний проект я писал на PHP, Clojure и Go. Если брать время работы программы на Go за единицу, то на Clojure будет 2, а на PHP – 10.

Test Driven Development, Kent Beck

Книга о том, как нужно писать свои программы. Если лень читать, то посмотрите серию лекций Роберта Мартина из серии «Clean code». Он понятно и нескучно объясняет.

Object-Oriented Software Engineering, Ivar Jacobson

Кажется эта лучшая книга по предмету, которые мне приходилось читать, хотя его нападки на FP не считаю обоснованными.

Working Effectively with Legacy Code, Michael Feathers

Всем нам приходится поддерживать старые системы и всем нам это доставляет мало удовольствия. Книга объясняет как в старые системы впилить тесты.

Математика

How to Measure Anything, Douglas Hubbard

Мне уже какое-то время хочется познакомиться поближе со статистикой, но все учебники, которые попадались до сих пор, были написаны в сильно перегруженным непонятными для меня фразами.

Эта книга – совсем другое дело. Непонятные для обывателя моменты она прячет, конечно и не абсолютно всё мне стало ясно, но зато она написана понятным человеческим языком. На живых примерах показано как применить некоторые статистические приёмы.

Mastering Predictive Analytics with R, Rui Miguel Forte

Очень понятное введение в искуственный интелект. Надо сказать, что книга раскрыла мне глаза на эту область знания и развеяла некоторые имевшиеся у меня мифы.

Базы данных

SQL Antipatterns, Bill Karwin

Книга рассматривает часто встречающиеся ошибки разработчиков баз данных, а так же даёт решения некоторых часто встречающихся задач, например, иерархические структуры. Очень полезная книга.

NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence, Sadalage, Martin Fowler

Книга задумана как быстрое, но поверхностное введение в область технологий объединённых термином NoSql. Мне кажется книга своей цели достигла. Общее представление я получил и теперь, если возникнет необходимость, буду способен принимать более-менее осознанные решения.

Redis in Action, by Josiah L. Carlson

Мне книга понравилась. Во-первых, быстрым введением в инструмент (а Redis очень интересный инструмент). Во-вторых, примерами решением задач, которые расширили мой горизонт возможного.

Есть недостаток: код примеров написан на Питоне. Я не очень люблю этот язык.

High Performance MySQL, 3rdEdition

Книга мощная, многогранная и нужная для прочтения. Есть у неё недостаток – она устарела. Многие советы уже неработают для новой версии MySql. Ждите следующего издания или читайте выборочно нужные главы.

MongoDB The Definitive Guide, Kristina Chodorow

Адекватное введение в предмет, но и без раскрытия трюков.

Управление проектами

Mastering the Requirements Process, Robertson, Robertson

Книга о бизнес-анализе. Это не управление и не программирование, но прочитать этот труд я рекомендую и программистам, и будущим менеджерам. Ведь по статистике 75% проектов проваливаются именно из-за неправильно проведённого (или вообще не проведённого) бизнес-анализа.

Весьма и весьма ценный материал.

The Mythical Man-Month, Fred Brooks

Классика. Почти все остальные книги по менеджменту будут ссылаться на этот труд. Читается и усваивается легко.

Writing Effective Use Cases, Cockburn

Замечательная книга о том, как грамотно и эффективно составлять use case. Очень полезный навык.

Software Project Survival Guide, Steve McConnell

Книга обзорного характера, но неплохая. Вы не сможете управлять проектами прочитав книгу, но получите общее представление об этой работе и список книг, которые помогут освоить это ремесло. Список книг, наверное, самая жирная её часть.

Peopleware, DeMarco and Lister

Вы не подходите к печке и не говорите ей: «Ты согрей меня, а потом я положу в тебя дрова». Так же и с управлением. Эта книга об Управлении. О том, что нужно делать, чтобы работа двигалась вперёд.

Обязательно прочитайте. Без неё вы не сможете понять свою работу.

97 Things Every Project Manager Should Know, Barbee Davis

Обзорная. В общем-то книги такого плана не обладают глубиной, поэтому рекомендовать их к прочтению смысла нет. Если вы читали книги про agile технологии и по сбору требований, то ничему новому она вас не научит.

Я только что сэкономил вам кучу времени.

Waltzing With Bears: Managing Risk on Software Projects, Tom DeMarco, Timothy Lister

Об управлении рисками проекта. Можно свято верить, что на пути вашего проекта не будет никаких препятствий, что вы выполните его вовремя и в рамках выделенного бюджета, но бывает так, что непредвиденные обстоятельства (или жизнь, другими словами) вмешиваются в эту идиллию. Книга не защитит от возникновения таких событий, но покажет вам способ как с такими ситуациями обходиться.

Хорошая и полезная книга. Обязательна к прочтению.

How to Run Successful Projects II: The Silver Bullet, Fergus O'Connell

После беглого просмотра мне показалось что эта книга будет очень тяжёлой, но в действительности вышло наоборот. Книга очень легко читается и воспринимается. Это не означает, однако, что не придётся шевелить мозгами.

Обязательна к прочтению, но мне кажется нужным отметить, что при управлении программными проектами предварительно желательно ознакомиться с «Mastering the Requirements Process», т.к. автор упоминает об этом вскользь, и может показаться, что это нечто неважное.

Также будет интересно посмотреть на метод, предлагаемый автором, с позиции agile. В сравнении информация легче и живее воспринимается. Есть о чём подумать.

После прочтения этой книги вы сможете управлять проектами.

Пять языков любви, Гари Чапмен

Автор делит всех людей по предпочтениям в способах выражения признательности. Хотя книга ориентирована в первую очередь на семейные пары, её прочтение будет также полезно менеджерам.

Путешествия и туризм

The South Pole, Roald Amundsen

Захватывающая книга о путешествии на Южный Полюс. Мне книга так понравилась, что я даже написал в отдельной статье на неё рецензиюСсылка.

Winter Camping, Stephen Gorman

Базовые знания о зимних походах. Ходить в зимние походы так сразу после прочтения вы не сможете, но хотя бы будете знать в каком направлении нужно работать.

Beyond Backpacking: Ray Jardine's Guide to Lightweight Hiking, Ray Jardine

Книга о легкоходстве. Если вы не знаете что это такое, то прочтите статью о легкоходахСсылка. Очень важное направление в туризме.

The Personal Life of David Livingstone, by William Garden Blaikie

Эта книга произвела на меня очень сильное впечатление. Может быть не такое сильное как «Великая борьба», но всё же. Давид Ливингстон всю жизнь свою посвятил миссионерскому труду, а потом и географическим исследованиям в Африке. Там же положил свою жизнь.

Осознание того с какими трудностями приходилось сталкиваться этому путешественнику, каких трудов стоило каждое действие, какая угроза для жизни от людей, животных и болезней, особенно в сравнении с комфортом, которым нам посчастливилось наслаждаться, приводит в странное чувство своей малозначительности и пассивности.

Когда перед глазами встаёт образ Ливингстона, отпадает всякое желание жаловаться на свои лишения и тяготы.

Мои полярные путешествия, Трёшников

Книга про полярников, их жизнь и быт. Подробнее читайте рецензию.

Другое

Conceptual Blockbusting, James Adams

Книга о том, как решать задачи, особенно нестандартные. Есть несколько интересных идей. В общем неплохая книга.

Содержание книги вкратце: решения приходят после того как вы уже перестали думать о них в минуты отдыха; иногда самые лучшие решения кажутся не очень нормальными когда впервые попадают в поле зрения (в процессе мозгового штурма, например); не забывайте про табличный метод представления данных.

Networking for People Who Hate Networking, Devora Zack

Хорошая книга про интровертов и для интровертов, а так же тех, кто хочет их лучше понимать. Что может быть лучше, чем узнать свои (и чужие) сильные и слабые стороны и как это знание заставить работать на себя?

Вся картина, Бен Карсон, Грег Льюис

В первой части книги автор, детский нейрохирург, рассказывает о своём жизненном пути, за счёт чего его семье удалось выбраться из оков нищеты, а ему стать преуспевающим врачём с мировой репутацией. Очень жизненная и вдохновляющая книга.

Вторая часть книги посвящена проблемам системы здравоохранения и чёрного населения в США. Меня эта часть мало интересовала, поэтому её можно легко опустить.

Примечание

Выступление доктора Карсона на национальном молитвенном завтракеСсылка можно рассматривать как пересказ основных идей книги и к тому же очень легко смотрится, т.к. доктор не лишён чувства юмора.

Примечание

Бен Карсон написал ещё несколько книг, и они по-своему интересны: «Не бойся рисковать», «Мысли широко», «Золотые руки».

Великая борьба, Елена Уайт

Книга освещает историю Церкви, борьбу которую велась (и будет вестись) между добром и злом внутри неё начиная со времён первоапостольской Церкви, через мрачное средневековье в эру просвещения и протестантизма, а затем и отступничества последнего времени.

Пожалуй это самая яркая, торжественная и захватывающая книга которую я читал за всю жизнь.

Договориться можно обо всём, Гевин Кеннеди

Книгу, в чём-то наивную, в чём-то с подвохом, я всё равно советую прочитать. Особенно программистам, которые на работе могут горы сворачивать, а в жизни словно дети малые. Есть в ней немало жизненных советов о торговле. А торговаться нам всем приходится в этой жизни, хотим мы этого или нет.

Man's Search for Meaning, Viktor E. Frankl

Это очень короткая, интересная и поучительная книга. Обязательно прочтите. Её написал заключённый концлагеря Аушвиц. Он выжил и написал эту книгу. Интересных мыслей много, но самые главые такие:

d'Sozo, David Fiedler

Очень захватывающая книга о докторе Келлоге и его грустном финале. Читается как детектив. Рекомендую.

В планах прочитать

Дата публикации:
23 декабря 2012
Дата последнего обновления:
27 ноября 2017

Комментарии

Прежде чем оставить собственный комментарий, убедитесь, пожалуйста, в том, что вы ознакомились с политикой сайта.

Добавить комментарий

Ваше сообщение было успешно отправлено.

Я отвечу вам как только представится такая возможность.

Спасибо за ваш интерес и хорошего дня.

Ошибка

Ваше сообщение не было отравлено по причине сбоя в программе.

Мне очень-очень жаль.

Top