Обложка статьи «Стоит прочитать: подборка книг, которые будут полезны любому айтишнику»

Стоит прочитать: подборка книг, которые будут полезны любому айтишнику

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

Никита Ковалев

Никита Ковалев

ведущий разработчик сервиса противодействия мошенничеству BI.ZONE

Моя книга: «Человеческий фактор. Успешные проекты и команды», ДеМарко Том, Листер Тимоти.

Кому читать: всем, кто работает в IT-проектах: как менеджерам, так и исполнителям.

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

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

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

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

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

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

Я читал данную книгу в оригинале, но думаю, что перевод ничем не хуже.

Константин Молодяков

Константин Молодяков

ведущий разработчик системы анализа вредоносного ПО в BI.ZONE

Моя книга: «Совершенный код», Стив Макконнелл.

Кому читать: разработчикам и менеджерам IT-проектов.

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

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

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

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

Денис Богданов

Денис Богданов

руководитель обособленного подразделения BI.ZONE

Моя книга: «Внутреннее устройство Windows», Руссинович Марк, Соломон Дэвид.

Кому читать: системным и прикладным программистам.

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

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

Авторы описывают базовые подсистемы, такие как планировщик процессов, управление памятью, файловая подсистема. Некоторые из них описаны не так детально, как хотелось бы. Например, почти не затрагивается управление аппаратными устройствами, шинами I/O. Однако с каждым новым изданием список рассматриваемых тем расширяется и охватывает новые возможности современных версий Windows. В последних версиях уже есть информация об устройстве актуальных механизмов обеспечения безопасности, таких как PatchGuard, AppLocker, описание гипервизора и виртуализации и пр.

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

Виталий Абрамов

Виталий Абрамов

cтарший разработчик веб-интерфейсов BI.ZONE

Моя книга: «Чистый код: создание, анализ и рефакторинг», Роберт Мартин.

Кому читать: начинающим и опытным программистам.

Разработчики не всегда заботятся о качестве оформления кода. В результате в проекте сложно разобраться и самому автору, и его коллегам.

Мартин объясняет, как анализировать готовый код, обнаруживать узкие места, «запахи», вносить изменения (рефакторить) таким образом, чтобы другому разработчику сразу было понятно, что в этом куске кода происходит. Все эти знания должны появляться у программиста на старте карьеры. Это как правила хорошего тона в разработке, соблюдение которых повышает эффективность и ценность сотрудника.

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

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

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

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