Список прочитанных книг за осень

Заметка о том, что удалось прочитать за квартал, за эту осень.

За три месяца было прочитано четыре книги «Предметно-ориентированное проектирование (DDD)» Эрика Эванса, «Использование Docker» Моуэт Эдриен и «Проект Феникс. Роман о том как DevOps меняет жизнь» авторов Ким Джин, Спаффорд Джордж, Бер Кевин, также книга Mastering Gitlab 12 Packt Publishing

Общие впечатления о книгах.

Предметно-ориентированное проектирование (DDD)
domain driver development
Обложка книги Предметно ориентированное проектирование

Что это за книга? Книга описывает метод проектирования больших приложении, в ней есть куча терминов и шаблонов для корпоративной разработки. Из нее я, наконец то, узнал что все таки значит Entity (для чего она предназначена, а не то как ее многие используют), чем она отличается от Value Object. Чем отличается Factory от Repository, хоть технически они похожи, но логически предназначены для разных целей. Что такое Агрегат, для чего в нем используется Корневой Объект, что такое Service, как лучше отделять действие от значения, что такое Specification, как лучше и яснее выделить бизнес правила и регламенты и поместить их на видное место.

Книга стоила прочтения, но есть большое НО. Ее очень тяжело читать.

Представьте тихую аудиторию в универе. Вы и всего лишь пара студентов — так как на этот предмет никто не ходит — сидите в зале и под монотонный, еле слышный с конца аудитории, голос учителя, медленно что то записывая, начинаете клевать носом. В зале тишина и покой. Веки закрываются, дыхание замедляется, окутывает мягкая, приятная дремота. Вы почти ничего не слышите, ведь вы сидите на берегу теплого моря, где медленно катящаяся волна греет ноги. Веки закрываются…

И вдруг, откуда ни возьмись, огромная звуковая волна сшибает вас со стула. Начинает орать громкая музыка, кто то включил на полную мощность музыку Rammstein. Две многотонные колонки, непонятно откуда появившиеся рядом, орут на тебя, пытаясь выдавить барабанные перепонки. И для довершения картины, подбегает преподаватель с громкоговорителем и начинает орать и объяснять самые важные и нужные понятия своего предмета. Все длиться несколько секунд, потом все замолкает, аудитория принимает привычный вид, преподаватель занимает, положенное ему у доски, место и с улыбкой спрашивает: «Все понятно». И вместо того, чтобы впитать те самые важные порции знания, появляется вопрос, что здесь такое было…

Чтение DDD оставляет примерно такие же чувства. Сначала нужно продраться через 100 с лишним страниц скучнейшего однообразного текста, где автор описывает что такое Предметно-ориентированное проектирование и как же хорош он в деле, как облегчит разработку и какую благую весть несет всем программистам. Возможно в 2004 году, когда о методологий мало кто знал, оправданно было уделять этому такое огромное количество страниц. Сейчас это кажется уже рудиментом. И самое ужасное, что нельзя пролистать страницы, боясь упустить  в этом потоке предложений какую нибудь маленькую, но важную идею.

Затем, после десятков страниц-синонимов, автор вдруг начинает объяснять важные термины и начинается самое интересное. И вроде бы, уделено этим терминам несколько страниц или даже целая глава, но в соотношении описания «насколько методология крута» и описания «вот это обязательно для использования», считаю маленьким.

Так что будь готов к перепадам полезности в этой книге. Почувствуй себя золотоискателем, как в передаче «Золото Юкона», будь готов перелопатить тонны грунта, чтобы найти искорку золота.

Использование Docker
Обложка книги Использование Docker
Обложка книги Использование Docker

Использование Docker Эдриен Моуэт от O’reilly. Стандартная книга от O’reilly о стандартной технологии. И это ни коем случае не минус, а скорее даже наоборот. Все таки в издательство есть свой контроль качество и выпуска плохой книги она не допустить. Не будем сейчас о адаптации на другой язык и возможные потери при этом, это уже скорее относиться с другому издателю.

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

В книге используется версия Docker 1.8, но на разработку это совершенно не влияет. Основы остались теми же. Возможно были какие то значительные перемены в Docker Swarm или в области крупных кластеров, но это будет интересно DevOps. Для локальной разработки это излишне, разработчик вряд ли будет управлять оркестрацией серверов.

Mastering Gitlab 12 Packt Publishing
Mastering Gitlab 12
Mastering Gitlab 12

Это книга совершенно не оправдала ожидании. Ранее, я имел опыт с самиздат книгами, например свой путь во frameworks начинал с книги Yii2 For Beginners from Bill Keck https://leanpub.com/yii2forbeginners. Но это книга от leanpub, а вот Pаckt publishing, похоже, совсем не следить за качеством.

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

«Проект Феникс»
Книга "Проект Феникс"
Книга «Проект Феникс»

Это книга отличается от предыдущих тем, что написана в художественном стиле. В книге рассказывается про Билла, сотрудника отдела тех сопровождения. На его плечи взваливают, казалось, невозможную задачу — привести ИТ отдел, разваливающейся компании, в порядок. Все оказывается против него — начальство не выделяет бюджет на ит отдел, отделы разработки, служба безопасности и отдел сопровождения враждуют между собой, менеджеры не доверяют друг другу, бизнес процессы не налажены, даже банальной системы мониторинга ошибок и баг трекера нет. Как выпутываться из этой ситуации? С чего начать? Какие шаги предпринять? А не сбежать ли пока не поздно? Герой задает вопросы, анализирует ситуацию, пытается взять ее под контроль. Получилось или нет? Об этом рассказывается в книге.

Книга, на фоне предыдущих, читается легко. Написано в жанре «Роман в стиле бизнес». Билл сталкивается с такими похожими ситуациями, и хоть они утрированы, но есть много параллелей с реальным миром. Книга будет полезной всем начальникам ИТ отделов, админам, разработчикам.