Алгоритмы шифрования...

WordFIX

Я рекомендую сервис Preply для изучения английского языка

Rambler's Top100 OZON.ru

Перейти на главную страницу

Карта сайта

Последнее обновление: 15 марта 2016 г.

 

Книги по защите информации, разработке программного обеспечения и управлению проектами

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

Книги по криптографии и защите информации:

Алгоритмы шифрования...
Панасенко С. П. Алгоритмы шифрования. Специальный справочник. – СПб.: БХВ-Петербург, 2009 – 576 с. Книга посвящена алгоритмам блочного симметричного шифрования. Дана общая классификация криптографических алгоритмов, приведены структуры алгоритмов шифрования и режимы их применения. Описаны различные виды криптоаналитических атак на алгоритмы шифрования и на их реализации в виде программных или аппаратных шифраторов. Рассказано о конкурсах по выбору стандартов шифрования США и Евросоюза. В книге описано более 50 алгоритмов шифрования: история создания и использования алгоритма; основные характеристики и структура алгоритма; достоинства и недостатки алгоритма; описание известных методов вскрытия алгоритма. Подробно о книге написано здесь.
Книга шифров...
Сингх С. Книга шифров. Тайная история шифров и их расшифровки. – Пер. с англ.: М.: АСТ, Астрель, 2007 – 448 с. Очень интересное описание истории шифрования - от Древнего Рима и шифра Цезаря до наших дней и квантовой криптографии.
24 смертных греха...
Ховард М., Лебланк Д., Вьега Дж. 24 смертных греха компьютерной безопасности. Как написать безопасный код. – Пер. с англ.: СПб.: Питер, 2010 – 400 с. Полезная книга для почти каждого программиста, особенно для тех, кто пишет распределенные системы или системы защиты. О том, как избежать в своем коде распространных ошибок - от переполнения буфера или целочисленного переполнения до некорректной реализации криптографических протоколов и алгоритмов. Коротко (при желании, каждую главу можно было бы развернуть в отдельную книгу :-), но ясно о многих проблемах с кодом, приводящих к уязвимостям в ПО. Сильно переработанное второе издание знаменитой книги "19 смертных грехов...".

Книги по разработке программного обеспечения:

Системное программирование в среде Windows
Харт Дж. М. Системное программирование в среде Windows. – Пер. с англ.: Вильямс, 2005 - 592 с. Автор описывает различные тонкости внутреннего устройства Windows. Неоценимо при разработке драйверов, сервисов, многопоточных приложений и т. д. Рекомендую прочитать каждому, кто пишет под Windows.
Основы использования и проектирования баз данных
Илюшечкин В. М. Основы использования и проектирования баз данных: учеб. пособие. – М.: Издательство Юрайт; ИД Юрайт, 2010. – 213 с. Самое то для начинающих проектировать базы данных или работать с ними. Много необходимой информации и ничего лишнего.

Книги по управлению проектами:

Джоэл о программировании ...
Спольски Д. Джоэл о программировании и разнообразных и иногда родственных вопросах, которые должны быть интересны разработчикам программного обеспечения, проектировщикам и менеджерам, а также тем, кому посчастливилось или не повезло в каком-то качестве работать с ними. – Пер. с англ. – СПб.: Символ-Плюс, 2006 – 352 с. Вопреки названию, книга освещает, в основном, не вопросы, интересные разработчикам программного обеспечения, а темы, более интересные для менеджеров всех уровней, работающих в софтверных компаниях. Прежде всего, книгу можно считать адресованной руководителям программных проектов. Книга изложена крайне интересным языком и читается "на одном дыхании", она содержит массу полезной информации и интересных идей. Не удивителен факт наличия у Джоэла Спольски огромного числа почитателей и последователей, одним из которых стал и я после прочтения этой книги. С другой стороны, можно отметить и некоторые недостатки (крайне незначительные по сравнению с массой достоинств): 1) Книга "обо всем" - от реализации строк на C++ и работы с Unicode до стратегических вопросов руководства софтверными компаниями и доткомами. 2) Много повторов и перекрестных ссылок (происхождение материала книги - блог автора). 3) Джоэл Спольски якобы против "религиозных войн" типа "Windows vs Linux", но тем не менее, из книги видно, что автор однозначно предпочитает Microsoft (и особенно Excel :-), в результате чего на конкурирующую продукцию обрушено много критики, не всегда выглядящей обоснованно. Вывод: если вы работаете в индустрии программного обеспечения, то очень рекомендую потратить время на прочтение и осмысление этой книги. Уверен, что никто не останется равнодушным.
Руководство PMBOK
Руководство к своду знаний по управлению проектами (Руководство PMBOK). – Пер. с англ. – Project Management Institute, 2010 – 464 с. "Библия" менеджера проектов. Содержит детальное руководство по управлению проектами (не только по разработке программного обеспечения, но и в любых других областях), разбитое на разделы, посвященные управлению содержанием, сроками, качеством, ресурсами, рисками и прочими атрибутами проекта. Подробно описаны процессы, выполняемые в рамках проектов, обозначены взаимосвязи между ними; для каждого из процессов перечислены и описаны входные данные и результаты исполнения, а также методы, используемые в рамках конкретного процесса. После прочтения этой книги появляется уверенность, что проект, управляемый в соответствии с изложенной в ней методикой, обречен на успешное завершение, поскольку создается впечатление продуманности всех возможных проблем и наличия выхода из всех непредвиденных ситуаций. Книга насыщена таблицами и рисунками, существенно упрощающими ее понимание. Возможно, в ней не хватает только примеров форм проектной документации, которые были бы полезны для тех организаций, в которых проектная форма деятельности только вводится и нет еще "накопленных знаний" и "исторической информации" по выполненным ранее проектам. Добавлю, что книга отражает американский национальный стандарт в области управления проектами. Рекомендую прочитать всем, кто имеет отношение к управлению проектами во всех сферах.
Не мешайте мне работать!

Давыдов С. Не мешайте мне работать! – 2007 – 100 с. Книга "Не мешайте мне работать!" – как хороший детектив, не отпускает, пока не дочитаешь ее до конца. Сразу вспоминается "производственный роман" "Deadline", где автору удалось объединить интересный сюжет и много полезной информации. В книге "Не мешайте мне работать!" полезной информации не меньше. Хочется ее сравнить еще и с книгами Джоэла Спольски, причем не в пользу Джоэла по той простой причине, что в книге "Не мешайте мне работать!" написано про "наших":

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

Книга – великолепна. Для меня она стала одной из настольных книг, в одном ряду с книгами ДеМарко/Листера и Спольски. После прочтения этой книги я знаю, что в России начинать изучение вопроса управления проектами нужно именно с книги "Не мешайте мне работать!".

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

Ньютон Р. Управление проектами от А до Я. – Пер. с англ. – М.: Альпина Паблишерс, 2009 – 2-е изд. – 180 с. На мой взгляд, идеальная настольная книга для руководства первым проектом или как одна из первых книг, прочитанных по этой теме. Детальный план руководства небольшим проектом в различных его фазах представляет собой очень полезный пример - можно прямо брать формы из книги и заполнять задачами и трудоемкостью из своего проекта. Много нужного и ничего лишнего. Естественно, книга зарубежного автора не учитывает российскую специфику. Во-первых, крайне сложным может быть этап согласования плана с заказчиком, как минимум, по следующим причинам: 1) "Наши" отечественные заказчики крайне отрицательно могут относиться к резервированию, поэтому во многих случаях "размазывание" резерва по этапам является единственным возможным выходом. 2) Очень сложно заставить заказчика выбрать любые два из "быстро-дешево-качественно", поэтому первоначальный вариант согласовываемого с заказчиком плана полезно несколько увеличить по стоимости или срокам, чтобы иметь некоторое поле для отступления при согласовании. 3) Многие проекты могут изначально иметь фиксированные сроки и бюджет, поэтому заказчик может попытаться на этапе согласования "раздуть" объем работ. Здесь также полезно создать себе некоторый резерв для увеличения объема работ. 4) Подпись заказчика под планом работ не гарантирует отсутствия похожих проблем при их сдаче. Все эти потенциальные проблемы в книге не отражены. Кроме того, процесс согласования может происходить в несколько итераций и отнимать крайне много времени у руководителя проекта, что изначально необходимо отразить в плане работ и бюджете проекта. Во-вторых, самой опасной проблемой вашего проекта может быть его зависимость от других проектов и внешних воздействий - когда, используя пример из книги, доставка офисной мебели вместо запланированных и согласованных с поставщиком двух недель может растянуться на все шесть. Необходимо "заложиться" и на подобные задержки и иметь (хотя бы в голове) резервный план, как перевернуть все этапы с ног на голову, но успеть сделать проект в срок.

Deadline
Кэмп Д. Сначала скажите "нет". – Пер. с англ. – М.: Добрая книга, 2012. – 272 с. Вроде бы не имеет прямого отношения к управлению проектами, а посвящена искусству ведения переговоров. С другой стороны, какие же проекты без переговоров с заказчиками проекта на всех стадиях – от первых технических требований до сдачи результата и закрытия проекта? Джим Кэмп в своей книге описывает новаторскую методику ведения переговоров, которая выглядит весьма эффективной и должна помочь любому руководителю проекта в непростых переговорах с заказчиком.
Человеческий фактор ...
ДеМарко Т., Листер Т. Человеческий фактор: успешные проекты и команды, 2-е издание. – Пер. с англ. – СПб.: Символ-Плюс, 2005. – 256 с. Уникальная книга в том, что касается человеческих взаимоотношений в рамках совместного выполнения проектов. Думаю, стоит прочитать руководителям любого уровня. Обязательно куплю, чтобы дать почитать моему боссу и боссу моего босса :-) Обратите внимание и на Deadline Тома ДеМарко.
Человеческий фактор ...
ДеМарко Т. Deadline. Роман об управлении проектами. – Пер. с англ. – Манн, Иванов и Фербер, 2012. – 352 с. Крайне поучительное руководство по управлению программными проектами в виде достаточно увлекательного романа.
Как пасти котов ...
Рейнвотер Дж. Х. Как пасти котов. Наставление для программистов, руководящих другими программистами. – Пер. с англ.: Питер, 2006 – 256 с. Как сказано в аннотации, "книга о лидерстве и руководстве". Практически пошаговая инструкция для начальника программистов о том, как руководить собой и людьми, "как вести стаю за собой" и т. д. Посвящена как техническим, так и психологическим аспектам лидерства. На мой взгляд, недостаток книги лишь в том, что некоторые из советов автора неприменимы в современной России с ее финансово-кадровой спецификой.