Чистая Архитектура

Чистая Архитектура

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

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

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

Зачем читать

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

Подробнее →

Думай медленно… решай быстро

Думай медленно… решай быстро

Или «Thinking, Fast and Slow» — довольно известное в популярной психологии произведение о когнитивных ошибках и (иррациональном) поведении человека.

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

Важно знать, что существует сильная критика произведения и частичное опровержение приведённых исследований. Почитать можно, например в этой статье: A Meta-Scientific Perspective on “Thinking: Fast and Slow”. К счастью, автор признаёт ошибки, и соглашается, что где-то был слишком предвзят и очарован собственными выводами.

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

Думаю, что книга сверхполезна: понимание таких вещей, как ошибка атрибуции, эффекты ореола и настроения, принцип What You See Is All There Is (сверхуверенность), по крайней мере, даёт какие-никакие инструменты для плаванию по безнадёжному морю коммуникации с людьми.

Зачем читать

Если нужно прочитать ровно одну книгу по социальной психологии и когнитивным искажениям — можно только эту.

Подробнее →

Вы не знаете JS: Асинхронность и Производительность

Вы не знаете JS: Асинхронность и Производительность

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

В двух словах: книга вышла в 2015-м году, и какие-то её части уже успели устареть. Что-то останется актуальным навсегда (асинхронные паттерны, принципы оптимизации), а какие-то части, по моему мнению, лишние. Вещи, о которых автор писал с робкой надеждой и в будущем времени, в JavaScript уже стали реальностью.

Вначале идут рассуждения о синхронности и однопоточной природе JS, а также реализации в нём асинхронного кода. Ничего нового за первую сотню страниц я не узнал, их можно было пропустить. Далее автор углубляется в промисы, и посвящает обещаниям много места: но зачем, когда уже давно повсеместно поддерживается async/await? Отделаться от мысли «а зачем?» сложно, поскольку большая часть книги построена на выводах этой главы.

Интересно и по делу про генераторы, веб-работников и asm.js (deprecated). Сверхполезный раздел про производительность, хронометраж (бенчмарки) и оптимизацию. Про то, что не стоит тратить время на микрооптимизации вроде i++ vs ++i нужно прочитать каждому: компилятор всё равно перемолет любые циклы и объявления переменных по-своему, и скорее всего, ещё лучше, чем вручную.

Зачем читать

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

Подробнее →

Рефакторинг. Улучшение существующего кода

Рефакторинг. Улучшение существующего кода

Читал вторую редакцию, примеры в этой версии на JavaScript.

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

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

Зачем читать

Чтобы писать код лучше, а ревью на него — по делу.

Подробнее →

Вы не знаете JS. Типы и грамматические конструкции

Вы не знаете JS. Типы и грамматические конструкции

Сборник граблей и очень детальное погружение в типы и немного в грамматику JavaScript (чем отличается от синтаксиса, там написано). Как всегда, у JS есть чем удивить: какие-то старые и непонятные для меня вещи получили объяснение.

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

Зачем читать

Прояснить тёмные моменты языка и понять, почему линтеры срабатывают на вроде бы безобидных участках кода. Понять JavaScript на более низком уровне.

Подробнее →

Идеальный программист. Как стать профессионалом разработки ПО

Идеальный программист. Как стать профессионалом разработки ПО

The Clean Coder: A Code of Conduct for Professional Programmers — немного более щадящее глаза название книги в оригинале. Выглядит продолжением Clean code, но вполне самостоятельное произведение.

Книга про то, как быть профессионалом и как не быть «тем парнем» с работы. Есть про «этикет» в разработке, запомнилась глава про оценку задач (estimation). Быстрое чтение, автор бодро и кратко излагает свои взгляды на хорошего разработчика.

Интересно было ещё почитать истории про былинные времена, когда Настоящие Программисты набирали код на перфокартах без права на ошибку — эти вставки к месту и разбавляют повествование.

Зачем читать

Чтобы понять, почему где-то зудит в отношениях с коллегами. Софт-скиллы с нуля. Понять, какие у кого права и обязанности на проекте. Как вырасти, как спецу.

Подробнее →

Будда, мозг и нейрофизиология счастья

Будда, мозг и нейрофизиология счастья

Чтение вдумчивое, на первой трети я понял, что стало не очень понятно, и начал заново.

Очень хорошая книга: автор рассказывает об основах буддизма, заново разъясняет некоторые термины, которые массовым сознанием неверно поняты (в основном, из-за неточного перевода на другие языки с оригинальных), много говорит о медитации с примерами.
Эзотерики или безапелляционных заявлений «так написано в древних книгах» нет, сквозной линией сквозь книгу проходит сравнение западной науки и буддистских практик.

Звание «ринпоче» говорит о том, что автор испытал всё на себе, а в основе лежит история знакомства автора с современным внешним миром, куда он выбрался из Тибета по заданию родного монастыря.

Я уже читал некоторую литературу по буддизму, иногда просто зубодробительную (от комментариев к Сутрам Праджняпарамиты может закипеть мозг), и по-моему, доступнее объяснений по теме я не встречал.

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

Зачем читать

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

Подробнее →

Не мешай себе жить

Не мешай себе жить

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

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

Зачем читать

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

Мозгоускорители. Как научиться эффективно мыслить, используя приемы из разных наук

Мозгоускорители. Как научиться эффективно мыслить, используя приемы из разных наук

Локализаторы снова сгущают, оригинальное название книги — «Mindware: Tools for Smart Thinking».

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

Зачем читать

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

Подробнее →

Важные годы. Почему не стоит откладывать жизнь на потом

Важные годы. Почему не стоит откладывать жизнь на потом

Понравилось важным посылом, почти не скатывающимся в назидательство и поучительство. Автор иногда слишком перегибает с тем, что в 20 — самое время, а вот в 30 — всё; с этим не соглашаешься и испытываешь раздражение.
Подкреплённая реальными примерами, книга определённо будет полезна своей ЦА, мне же было читать хоть интересно, но поздновато.

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

Зачем читать

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

Подробнее →