На Hacker News предложили поделиться профильной литературой, которую можно назвать «алмазом» в своей области знаний. Участники дискуссии обсудили книги по стандартизации систем и продуктов, управлении персоналом и даже нейробиологии. Мы выделим несколько избранных материалов о сетях, алгоритмах, разработке и системном администрировании.
Concrete Mathematics
Это — классика из 90-х, посвященная математическим основам информатики. Несмотря на возраст, Concrete Mathematics до сих пор попадает в подборки лучшей литературы на профильных площадках. В списке авторов числятся такие знаковые имена, как Дональд Кнут и Роналд Грэм.
Они рассматривают математические основы информатики и алгоритмического анализа. Это — элементы теории чисел, целочисленные функции, дискретная вероятность, асимптотические методы и так далее. Считается, что прообразом книги послужил раздел «Математическое введение» из другого труда Кнута — The Art of Computer Programming.
В противоположность большинству «сухих» книг по математике, изложение ведётся с юмором в неформальном стиле и сопровождается заметками на полях от студентов Стэнфорда. Один из читателей отметил — что это единственная книга по математике, которая заставила его смеяться.
Авторы не перегружают материал теоремами и формулами, но подают его доступным языком. Однако книгу все же нельзя назвать «легким чтивом». Несмотря на то что в русской локализации она называется «Конкретная математика. Основание информатики», материал плохо подходит для первого погружения в дискретную математику. Здесь нужны хотя бы базовые знания, которые имеет смысл почерпнуть в другом месте.
Но если вам все же понравится Concrete Mathematics, резиденты Hacker News рекомендуют обратить внимание на книгу-компаньон — generatingfunctionology от Герберта Уилфа. Она посвящена комбинаторике и её применению в контексте поисковых движков.
Practical Packet Analysis: Using Wireshark
Перехватить пакеты с помощью Wireshark несложно. Но как проанализировать собранную информацию и понять, что на самом деле происходит в сети? С этим поможет другой частый гость тематических подборок — Practical Packet Analysis. Книга стала одной из самых упоминаемых изданий по компьютерным сетям на Reddit.
Автором выступил практикующий ИБ-специалист Крис Сандерс, который также написал Applied Network Security Monitoring. Он рассказывает, как читать PCAP-файлы с пакетными данными, исследует современные эксплойты и вредоносы, демонстрирует подходы к составлению статистических отчетов. Отдельные главы посвящены общему обсуждению протоколов вроде IPv6 и SMTP, а также анализаторам tcpdump и TShark, работающим из командной строки.
Книга подойдет начинающим сетевым инженерам, опытным системным администраторам и в принципе всем, кто интересуется диагностикой сетей. Хотя некоторые читатели отмечают, что раздел об анализе беспроводных сетей получился поверхностным. Информации недостаточно, чтобы изучить все нюансы, связанные с аппаратным обеспечением и процессами — добирать фактуру придется в других источниках.
The Linux Programming Interface
Это — настольный справочник, посвященный API в пользовательском пространстве Linux. В нем Майкл Керриск, который остается мейнтейнером справочного ресурса man-pages, описал библиотечные функции для системного программирования. По словам читателей, книга значительно сокращает время, проводимое в поисковиках.
Под обложкой The Linux Programming Interface собраны описания более чем пятисот системных вызовов и двухсот примеров программ. Также приведены 88 справочных таблиц и 115 диаграмм. Майкл рассказывает, как использовать сигналы, часы и таймеры, а также писать сетевые приложения с API сокетов. Подробно разбирает каждую подсистему ядра — к этим частям материала можно возвращаться из раза в раз, чтобы глубже изучить тот или иной топик.
В этом контексте один из участников дискуссии на HN также рекомендовал обратить внимание на другую классику — UNIX Network Programming. По его словам, диаграмма состояний TCP/IP из книги висела у него над столом на протяжении десяти лет.
Feedback Control for Computer Systems
Книга издательства O’Reilly о том, как использовать техники feedback control при разработке и администрировании приложений в корпоративной среде. На примере кейсов и симуляций автор делится подходами к управлению серверным и сетевым оборудованием в дата-центрах — например, при неожиданных скачках трафика.
Также в списке тем автоматическое управление размером кэша с целью увеличения коэффициента попадания (hit rate) и практические подходы к реализации и настройке контроллеров. Книга даже затрагивает нюансы, связанные с потреблением памяти в игровых движках.
Один из читателей отметил, что Feedback Control for Computer Systems стоит изучить любому, кто работает с микросервисами и облачными вычислениями — и в целом с технологиями, где системы реагируют на внешние изменения и корректируют поведение.
Больше тематических материалов в нашем блоге на Хабре:
Комментарии (4)
Politura
16.10.2022 06:50Какой процент разработчиков использует Linux API в своей работе? Просто интересно. На мой взгляд лучше бы книгу с кабаном посоветовали, одна из лучших книг для бакендера.
s_f1
Книги хорошие, но
?KatbertW
Видел, что конкретную математику рекомендуют разработчикам, кто хочет математические основы подкрепить, хотя книга действительно довольно старая и это сказывается
s_f1
Я по ней учился. Не помню там ничего про алгоритмы, и уж тем более про остальное. Я лишь указал на то, что книга не соответствует заголовку.