- PVSM.RU - https://www.pvsm.ru -

Обзор литературы прочитанной за два года

Привет ! Когда я только начинал заниматься веб-разработкой, то даже не мог представить, сколько литературы нужно прочесть и какой объем знаний получить, чтобы стать нормальным специалистом. Кроме того, сфера постоянно меняется, и знания устаревают.

Обзор литературы прочитанной за два года Для меня проблема заключалась в том, что я не люблю читать и чтение расцениваю исключительно как неизбежную работу, которую необходимо проделать, чтобы добыть материал из печатного вида. Но так получилось, что для повышения своей квалификации читать приходится. Я установил для себя норму — одна книга в месяц. С одной стороны, это мало, с другой, — много (если действительно придерживаться плана). Ну и раз уж мне приходится читать в принудительном порядке, это должно давать какую-либо выгоду. Каждая книга — это мучение, и я не вижу смысла тратить время на литературу, которая мне ничего не даст после. Поэтому каждый раз, попадая в книжный и держа в руках очередную книгу, я задаю себе вопрос: «А зачем?! Какой толк от этих кусков бумаги?! Что я вообще тут делаю?!». Чтобы вы не тратили время на книги, которые мне кажутся бесполезными, я решил написать небольшой обзор прочитанной за два года литературы и прочих найденных источников знаний. Весь материал ниже так или иначе связан с веб-разработкой и различными её аспектами. Ниже описаны только те книги, которые я прочитал. Те книги, которые «не осилил»/не дочитал (например, про NodeJS и пару фреймворков) не привожу.

Критерии оценки книг:

  • Количество кода. Чем больше кода в книге, тем она хуже. Это значит, что автор приводит бессмысленные листинги программ вместо того, чтобы описать словами алгоритм работы.
  • Толщина книги. Чем толще книга, тем хуже. Скорее всего, её будет трудно дочитать до конца. Почему она стала толстой?
    • Потому что там много воды.
    • Потому что автор не умеет излагать свои мысли коротко и четко.
    • Потому что автор работает в каком-либо университете, так что писать тонкую книгу — не серьёзно: коллеги с кафедры будут смеяться, поэтому он раздувает ещё бессмысленными вставками.
  • Иллюстрации. Чем меньше иллюстраций, тем книга хуже. Одна и та же информация, представленная в графическом и текстовом виде, легче воспринимается в графическом. Так же играет роль глубина переработки информации. Текст с иллюстрацией воспринимается лучше, чем текст без иллюстрации. Наличие качественных иллюстраций показывает, что автор работал над книгой «с душой».
  • Дизайн и верстка. Хороший дизайн ускоряет чтение и позволяет лучше усваивать информацию. В этот пункт входит соблюдение правил типографики, верстки и структурирования информации.
  • Хорошая книга легко читается: глаза не должны не уставать, а станицы должны быть приятными на ощупь (в этом плане глянцевые издания для дизайнеров, конечно, вне конкуренции). Качественный дизайн, опять же, показывает, что над книгой работали «с душой».
  • Идеи, а не методы. Хорошая книга должна учить тому, что не устареет в ближайшие несколько лет, а то и больше. Для всего остального подходят статьи в соответствующих изданиях. Зачем платить 1000 руб. за книгу об API очередного модного фреймворка, о котором все забудут через полгода? Лучше почитать об идеях, которые воплотили авторы в фреймворке, о том чего они хотели, как этого добивались, к чему пришли. Как проектировали архитектуру и почему именно так.

Начнем с основных представителей жанра.

JavaScript: Подробное руководство

(JavaScript: Definitive Guide. David Flanagan)

Обзор литературы прочитанной за два года
Итого: 982 страниц / средний дизайн

Очень толстая книга, в которой описано что, как и почему работает. Читать её, возможно, нет смысла, т.к. появилась альтернатива от Ильи Кантора.

Современный учебник JavaScript

Сайт: JavaScript.ru

Обзор литературы прочитанной за два года
Собственно, альтернатива Девиду Фланагану. Написано все и обо всем. Читается в два/три этапа — первый раз ты понимаешь основы JavaScript, а второй раз осознаешь все его тонкости. Честно говоря, так часто обращаюсь к справочной информации на этом сайте, что даже не представляю интернет до него.

Далее ряд книг, которые читали все JavaScript-разработчики. Книги нужно читать не потому, что в них конкретные мысли, а потому, что они учат, как надо писать на JavaScript`е. В них рассмотрены паттерны проектирования и объясняется суть различных библиотек. Именно эти книги учат думать, как веб-разработчик. Я не могу сказать, что это отличные книги, в основном они скорее хорошие, но все они обязательны к прочтению.

Веб-приложения на JavaScript

(JavaScript Web Applications. Alex MacCaw)

Обзор литературы прочитанной за два года
Основные мысли:

  • Бейте все на модули и инкапсулируйте (function() {… })();
  • Чтобы сделать цепочку вызовов, возвращайте объект, с которым работаете
  • Используйте библиотеки

Итого: 1000 руб. / 300 страниц / средний дизайн / нормальная книга

Повсюду в содержании написано слово MVC, хотя книга скорее о модулях и модульном подходе. Много написано про события, но скорее справочной информации. Много отсылок к jQuery, да и вообще автор поверхностно пробегает по разным библиотекам, объясняя, как они появились и зачем были нужны. В конце книги идет приложение, в котором, например, есть справочник по CSS3. Складывается ощущение, что автор стремился добить книгу текстом до нужного объема.

JavaScript. Шаблоны

(JavaScript Patterns. Stoyan Stefanov)

Обзор литературы прочитанной за два года
Итого: 900 руб. / 200 страниц / средний дизайн / нормальная книга

Книга целиком и полностью об ООП в JavaScript`е. Ну и конечно есть такие темы, как: каррирование, фасад, прокси-объект, стратегия, декоратор, итератор и т.п. Книга вряд ли когда-либо устареет, т.к. основана на алгоритмах, а они не меняются. Из минусов — это опыт читателей. Многие приемы, описанные в книги, на практике появляются только в сложных проектах. Для того, чтобы сделать визитку для ООО «Рога и копыта», такие знания конечно не нужны.

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

Читаемый код или Программирование как искусство

(The Art of Readable Code (Theory in Practice). Dustin Boswell, Trevor Foucher)

Обзор литературы прочитанной за два года
Основные мысли:

  • Одна функция — одна задача
  • Полные имена переменных
  • Разбивайте длинные выражения на короткие
  • Выделяйте блоки кода

Итого: 500 руб. / 200 страниц / средний дизайн / остался доволен

Ну, тут многие скажут, что книжка совсем уже для тех, кто только начинает программировать. Не соглашусь. Конечно, любители Java выберут «Чистый код. Создание, анализ и рефакторинг» (Мартин Р.), а вот веб-разработчики часто не следуют даже базовым принципам. Например, постоянные сокращения btn вместо button и подобные. Да и статьи в стиле Армина Ронахера «Хватит быть милым и умным» (Stop Being Cute and Clever, http://habrahabr.ru/post/205616/ [1]) не появлялись бы. Одним из самых запоминающихся для меня примеров из книги, был пример сокращения вложенности:

function(name, age) {
	if(!name || !age) return false;
	...
}

Вместо:

function(name, age) {
	if(name && age) {
		...
	}
}

Уж очень часто у любителей jQuery вложенность сильно возрастает. Да и факт появления библиотеки «Q» для NodeJS (https://github.com/kriskowal/q [2]) для меня является скорее отрицательным показателем. Почему? Если у вас одна функция выполняет одну задачу, факт появления многократной вложенности маловероятен.

JavaScript сильные стороны

(JavaScript: The Good Parts. Douglas Crockford)

Обзор литературы прочитанной за два года
Итого: 250 руб. / 250 страниц / средний дизайн / отличный справочник

Многие ведутся на название книги «сильные стороны», хотя в самой книге этих самых сильных сторон нет.

По сути это некий справочник, в котором более-менее коротко описаны большинство объектов JavaScript`а.

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

CSS3. Руководство разработчика

(The Book of CSS3: A Developer's Guide to the Future of Web Design. Peter Gasston)

Обзор литературы прочитанной за два года
Итого: 500 руб. / 170 страниц / средний дизайн / нормальный справочник

Книгу дали на конференции. Сначала думал — очередная подборка копирайта, но, как оказалось, это вполне нормальный справочник. Все примеры проиллюстрированы, автор пишет коротко и по делу, воды нет. Очень напоминает книгу «JavaScript сильные стороны», только по части CSS3.

Ошибки веб-дизайна или как их устранить до того, как вы лишитесь посетителей

(Defensive Design for the Web. Matthew Linderman, Jason Fried).

Обзор литературы прочитанной за два года
Основные мысли:

  • Сообщение об ошибке должно быть заметно
    • Используйте цвет, условные значки и текст, чтобы ясно обозначить проблемное место
    • Всегда обозначайте ошибки одним и тем же способом
  • Сообщение об ошибке должно быть понятным
    • Не используйте язык, который не понятен вашим клиентам
    • Текст должен быть коротким и понятным
    • Извинительный тон
  • Работа с формой:
    • Выделяйте обязательные и дополнительные поля
    • Принимайте ввод во всех распространенных форматах
    • Давайте примеры ввода, списки, подсказки
    • Ясно устанавливайте ограничение на количество символов
    • Если клиенту не доступны некоторые варианты — не предлагайте их
    • Проверяйте ввод как можно быстрее
    • Уберите кнопку «Очистить» и делайте недоступной после нажатия кнопку «Отправить»
    • Сохраняйте информацию
  • Работа со страницей 404
  • Перенаправляйте частично неверные URL
  • Предложите альтернативную версию информации и сведения об обновлении для старых браузеров
  • Отвечайте на вопросы на той же странице
  • Создайте раздел «Помощь»
  • Предусмотрите несколько вариантов поддержки
  • Отвечайте на e-mail быстро и информативно
  • Уберите ненужную рекламу
  • Лучше быстро, чем красиво
  • Не заставляйте регистрироваться
  • Уберите лишнюю навигацию
  • Помощь при поиске:
    • Четко объясняйте, почему при поиске не найдены результаты или показаны неточные совпадения
    • Предугадывайте типичные ошибки и показывайте подходящий результат
    • Дайте возможность отфильтровать результаты
    • Посоветуйте, как улучшить результаты поиска
  • Если продукт будет доступен позже, объясните когда
  • Предлагайте уведомление по e-mail
  • Анализируйте логи сервера
  • Изучайте обращения в тех. поддержку
  • Анализируйте конкурентов

Итого: 170 руб. / 200 страниц / дешевый дизайн / отличная книга

С первого взгляда книга не внушала доверия, но я остался очень доволен. Нет воды. На каждый совет по три-четыре хороших и плохих примера. Все примеры со скриншотами и коротким описанием. Основная мысль — «безопасный дизайн». Учит предупреждать ошибки пользователей. Можно использовать как чеклист перед сдачей сайта. Даже не смотря на то, что все советы довольно избиты, тем не менее, большинство программистов им не следует. В книге чувствуется взгляд не со стороны программиста, а со стороны специалиста по решению конфликтных ситуаций.

Веб дизайн

(Designing Web Usability: The Practice of Simplicity. Jakob Nielsen)

Обзор литературы прочитанной за два года
Итого: цену не знаю / 500 страниц / средний дизайн / бессмысленно

С одной стороны, содержание книги в целом уже не актуально, с другой — в тексте в основном вода. Возможно, совсем зеленым студентам следует бегло пробежаться по разделам. Как и в любой «книге про web» расписаны интуитивно понятные вещи:

  • Лучшие сайты — быстрые
  • Тексты: краткость, грамотность, четкость и т.п.
  • Делайте нормальное меню
  • Делайте нормальные URL
  • Тестируйте на ошибки
  • Используйте alt для изображений

Даже не смотря на то, что это сам Якоб Нильсен, — рекомендовать не буду.

На работе мне постоянно делали замечания об отсутствии «чувства прекрасного», поэтому решил пройтись по дизайну:

Универсальные принципы дизайна.

(Universal Principles of Design. W. Lidwell, K. Holden and J. Butler)

Обзор литературы прочитанной за два года
Основные мысли:

  • Высокий процент результатов в любой крупной системе зависит от низкого процента переменных
  • Объекты и среды следует разрабатывать таким образом, чтобы максимальное количество людей могли использовать их без модификации
  • Привлекательные, с точки зрения эстетики, разработки кажутся проще в использовании, чем непривлекательные
  • Внешний вид объекта должен подсказывать способ его использования
  • Люди находят более привлекательными формы, которые напоминают человека или обладают антропоморфными характеристиками
  • Выравнивать объекты следует по центру масс
  • Богатая пейзажами окружающая среда снижает стресс, улучшает сосредоточенность и концентрацию
  • Использование блоков информации
  • Цветовая схема Иттена
  • Предотвращение непреднамеренных действий путем их предварительной верификации
  • Система удобнее для использования, когда одинаковые элементы представлены одинаковым образом
  • Метод установления границ для операций, которые можно производить над системой
  • Тенденция отдавать предпочтение объектам с плавными контурами, а не с острыми углами или заостренными элементами
  • Уровень контроля, обеспечиваемый системой, должен соответствовать навыкам и умением её пользователя (expert / normal mode)
  • Глубина переработки информации
  • Проектирование, основанное на нахождении консенсуса
  • Следы использования или износа указывают на методы взаимодействия с объектом или окружающей средой, которые предпочитает пользователь
  • Всегда должна быть точка входа
  • Аварии — следствие ошибок в конструкции. Действие и бездействие, приводящие к непредумышленному результату.
  • Использование элементов в большем количестве, чем необходимо, с целью компенсировать влияние неизвестных переменных и предотвратить сбой системы
  • Отношение фигура/фон
  • Время, необходимое для наведения указателя на цель, является функцией размера цели и расстояния до нее (закон Фиттса)
  • По мере увеличения гибкости системы, её практичность снижается
  • Упорядоченная последовательность реакции людей на острый стресс
  • Качество выходных данных системы зависит от качества входных данных
  • Диаграмма Гутенберга (движение глаз по странице)
  • Время, необходимое для принятия решений, возрастает с увеличением количества альтернатив (закон Хика)
  • Не стоит заполнять пустые места из-за страха пустоты. Минимализм в дизайне.
  • Используйте пиктограммы в интерфейсе для лучшего распознания и вспоминания
  • Эффекты замедления обработки информации из-за конфликта психологических процессов.
  • Метод подачи информации в порядке снижения её важности.
  • Модульный принцип управления сложной системой.
  • Средство прогнозируемого изменения поведения без ограничения вариантов или значительного изменения стимулов.
  • Картинки запоминаются лучше, чем слова.
  • Сигнальный шум. Отношение релевантной информации к нерелевантной, выводимой на дисплей.
  • Одинаковые элементы воспринимаются как более связанные между собой.
  • Система становится удобнее в эксплуатации, когда её назначение и методы использования четко различимы.
  • Использование слабого элемента, который выходит из строя, чтобы защитить другие элементы от аварии.
  • и т.п.

Итого: 1 200 руб. / 250 страниц / отличный дизайн / отличная книга

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

Графический дизайн от идеи до воплощения

(Graphic Design Thinking (Design Briefs). Ellen Lupton, Jennifer Cole Phillips)

Обзор литературы прочитанной за два года
Основные мысли:

  • Рисуйте ассоциативные карты ваших идей
  • Проводите интервью с клиентами, возможно, им нужно совсем другое

Книга, по сути, представляет собой сборник копирайта на тему «Как определить задачу» и «Откуда брать идеи». Много слов, картинок и банальных штампов. Её интересно пролистать, но остаточных знаний она не несет. Когда её покупал, повелся на раздел «Исследование места». В нем шла речь о расстановке рекламных щитов и информационных указателей в различных сооружениях. Эта тема была мне интересна ещё с момента обучения на PR`е, но книги по теме не попадались. Впрочем, и тут нельзя сказать, что автор раскрыл эту тему. Скорее слегка приподнял завесу.

Итого:800 руб. / 200 страниц / отличный дизайн / покупать не советую

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

Школа графического дизайна. Принципы и практика графического дизайна.

(Graphic Design School: The Principles and Practices of Graphic Design. David Dabner)

Обзор литературы прочитанной за два года
Основные мысли:

  • Разбор шрифтов
  • Разбор цветов и оттенков (цветовую схему Иттена автор пропустил)
  • Блоку текста можно придавать различную форму и использовать сам текст как украшение страницы

Итого: 750 руб. / 200 страниц / отличный дизайн / средне, много воды

Довольно странная книга. Вроде и написано много, но остаточных знаний снова мало. Можно было бы отнести её к очередному банальному копирайту, но книгу вытягивает раздел о шрифтах и способах верстки страницы, используя сам текст как украшение. В любом случае, своих денег она не стоит. А про шрифты — лучше почитать у Иннокентия Келейникова в книге «Дизайн книги: от слов к делу».

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

Под впечатлением этих книг решил покрыть полученные знания учебными курсами на тему дизайна. Нормальные курсы стоили не менее 30 000 руб. и по времени растягивались на полгода. Решил сэкономить (и пожалел). Выбрал два учебных центра, стоимостью в среднем 9 000 руб. за курс длинною в 1.5 месяца.

Графический дизайн

Обзор литературы прочитанной за два года
Чему учат: Corel, Photoshop

Что узнал:

  • RGBA, CMYK — в чем разница и как появились
  • Какие проблемы могут возникнуть в печати
  • Как градиентами создать объем и эффект стекла
  • Как создать объем через размытие и прозрачность
  • Как вырезать сложный объект
  • Как «добавить уют» и т.п.

При чем тут дизайн? Не знаю. Преподаватели просто показывают, как нажимать на кнопки. Хотя были и положительные моменты. На курсе Corel разобрали цвета и предпечатную подготовку. Это гораздо шире статей в интернете, которые читал до этого. На курсе Photoshop было много чего, но в памяти осталось разложение цветов по каналам (RGBA) и польза от цветокоррекции. Показали, как добавить «+20% тепла и уюта» и «+17% к объему и глубине снимка». В целом — оно того стоило. Да и на собеседованиях часто встречаются вопросы про PNG, которые требуют знаний чуть больше, чем «нарезать макет».

Курс академического рисунка и живописи (рисование карандашом)

Обзор литературы прочитанной за два года
Что узнал:

  • Толщина линии с одной стороны рисунка должна быть меньше, это придаст иллюзию падения света

Фотошоп фотошопом, а рисовать надо учиться. Поэтому посчитал, что курсы рисования прокачают это умение. А по факту оно того не стоило. Минус 9 000 руб. и время. Мне кажется, тут была проблема в преподавателе. Курсы были очень похожи на школьное ИЗО. Ты приходишь, рисуешь куб два часа, и в голове остается только один вопрос: «И чё?!». Никаких методик и техник, никаких объяснений, только постоянное рисование квадратов, кружков и натюрмортов. Остаточных знаний — ноль. Поэтому, если пойдете на рисунок карандашом, спросите про учебный план и какие остаточные знания у вас будут.

Но вернемся к программированию.

Когда начинал писать игры на JavaScript, спросил у коллег, что они могут посоветовать. Посоветовали следующую книгу:

Секреты разработки игр на macromedia Flash MX

(Flash MX 2004 Game Design. Jobe Makar)

Обзор литературы прочитанной за два года
Итого: 250 руб. / 600 страниц / плохой дизайн / одна из лучших прочитанных мною книг

Сначала отпугивала фраза macromedia Flash MX в названии книги, но я ошибся. Основные мысли выделить не могу, т.к. книга построена скорее как учебник. Вся книга является одной сплошной мыслью. Автор рассказывает о различных игровых жанрах, объясняет, зачем нужна тригонометрия и как обсчитывается физика столкновений. Пробегает по методам оптимизации, показывает, как использовать «сетку» для упрощения физических расчетов, перечисляет виды AI и рассказывает об алгоритме поиска пути. Автор также описывает этапы проектирования игры, улучшения графики, принципы создания изометрических миров, наложения и роли звука в играх. В общем, книга расширяет сознание и заставляет смотреть на игры по-другому. В отличие от других авторов (например, Рафаэло Чекко), Джоб Макар практически не пишет код в книге. Иногда, конечно, пишет, но мало. Джоб объясняет, как и зачем, смотрит в суть, а как вы это реализуете в коде — выходит за рамки книги. Секреты разработки игр — это одна из тех книг, которые больше по алгоритмам и идеям, чем по коду.

Когда искал информацию о книге, наткнулся на такую статью http://www.8bitrocket.com/tag/electrotank/ [3]. Поэтому перед покупкой проверьте, перевели на русский следующие его шедевры или нет. Возможно, лучше купить их, т.к. сам автор пишет, что у него было мало времени для работы над книгой «Секреты разработки игр на macromedia Flash MX» и он не очень доволен её качеством.

Лекции Андрея Короткова


После прочтение шедевра выше, стал искать информацию по разработке игр и случайно наткнулся на русского парня по имени Андрей Коротков. У Андрея есть канал на YouTube, где он поэтапно читает курс лекций на тему, как писать игры и создавать игровые движки http://www.youtube.com/user/megadrone86/videos [4]. Да, это не JavaScript, это C++. Но это не имеет значения, т.к. суть лекции — идеи и алгоритмы.

Основные мысли:

  • Пишите диз. док.
  • Продумывайте концепцию игры в целом
  • Движок должен состоять из модулей

Но, как и у Джоба Макара, тут основные мысли размазаны. Лекции нужно воспринимать полностью, т.к. в каждой лекции рассказывают о конкретных проблемах и о том, как их надо решать.

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

Дизайн уровней. Теория и практика

Михаил Кадиков

Обзор литературы прочитанной за два года
Миша пишет серию статей, которые постепенно формируются в книгу. Все коротко, ясно и хорошо структурировано, каждая статья подкреплена кучей примеров. Познакомиться с книгой можно тут (http://pro.level-design.ru/ [5]). Читал взахлеб.

После предыдущих примеров резко возросло доверие и уважение к Flash-разработчикам. Стало очевидно, что они много знают, у них большой опыт и пора его перенять. Да, сейчас многие стонут то тут, то там в интернете, что Flash умирает, Flash — отстой и т.д., но! Сообщество Flash-разработчиков имеет очень большой опыт казуальных игр. Нельзя этим пренебрегать. С этими мыслями я купил следующую книгу о Flash.

Flash реклама

(Flash Advertising: Flash Platform Development of Microsites, Advergames and Branded Applications. Jason Fincanon)

Обзор литературы прочитанной за два года
Основная мысль — хм… не уловил.

Итого: 800 руб. / 300 страниц / отличный дизайн / вода, но красиво

Довольно странная книга. Вроде и написано много, но остаточных знаний мало. Все, в принципе, довольно банально. Очередная подборка советов о том, как делать сайты правильно и красиво. Возможно, кому-то будет интересно, но мне не было. Большая часть книги легко перекрывается опытом работы в каком-либо рекламном агентстве, которое штампует одноразовые сайты и продвигает их. В защиту автора могу разве что привести раздел «Рекламные игры и приложения». Автор рассказывает, как с помощью игры вдалбливать в мозг [6] игроков бренд какой-либо компании. Так что, если вам будет необходимо убедить Иван Иваныча из ООО «Рога и копыта» купить разработку мини игры для сайта, прочтите этот раздел книги.

Графика на JavaScript

(Supercharged JavaScript Graphics: with HTML5 canvas, jQuery, and More. Raffaele Cecco)

Обзор литературы прочитанной за два года
В первой главе описано разворачивание циклов и приведены графики скорости работы до и после в различных браузерах. Далее автор объясняет, как работать с CSS спрайтами (пишет функцию, которая постепенно меняет background-size). Рассказывает о погрешности таймеров. Ну а дальше начинается работа с плиткой и вода на тему написания игры. Если работу с плиткой в принципе можно осилить, т.к. вроде все верно, то пример игры (расписанный на полкниги) — это ужас. После книги Джоба Макара и лекций Андрей Короткова прямо таки хочется кричать: «Стой Рафаэль! Не делай так! Это немасштабируемо! Рафик, мамой клянусь, ты не прав!»

Итого: 800 руб. / 250 страниц / средний дизайн / вода

Это очередная книга из серии «должен прочитать» для веб-разработчиков. Стандартное животное на обложке, стандартное повествование. Но на фоне предыдущих авторов после прочтения книги хочется сказать: «И чё?! Рафаэлло, где алгоритмы?» С одной стороны, книга пробегает по новому API HTML5, с другой стороны, по нему пробегают все дешевые копирайтные книги. Беда с остаточными знаниями и выводами. Автор приводит полотна кода, которые не нужны, но раздувают толщину книги, обильно заливая все пастой на тему «есть такая библиотека». В защиту же автора можно привести главу «Использование векторов в играх и компьютерных моделях». Почему-то никто не удосуживается разобрать её в стиле «для чайников». Но опять же — где проекции векторов?

Собрание сочинений о флэше

Обзор литературы прочитанной за два года
Это интернет ресурс, в отличие от предыдущих книг об игрострое, наконец, покрыл тему обсчета столкновений (коллизий). Вот тут http://noregret.org/tutor/n/collision/ [7] авторы (Raigan Burns, Mare Sheppard) написали то, чего не осилил Raffaele Cecco в своей книге. Суть: сторона многоугольника — это вектор. Делаете проекцию этого и другого вектора на плоскости координат. Если проекции пересеклись — у нас есть столкновение. Если векторы под углом — делаете их проекции на нормали друг на друга.

HTML5

(HTML5 for Masterminds. J.D. Gauchat)

Обзор литературы прочитанной за два года
Итого:710 руб. / 500 страниц / плохой дизайн / покупать не советую

Это очень толстый справочник API HTML5. Как справочник — так себе, просто подборка воды и копирайта. Толщина книги тут явно не соответствует качеству. Найдите что-нибудь потоньше.

Ajax для профессионалов

(Professional Ajax. Nicholas C. Zakas, Jeremy McPeak, Joe Fawcett)

Обзор литературы прочитанной за два года
Итого:1000 руб. / 500 страниц / плохой дизайн / отличная книга

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

Проектирование веб-интерфейсов

(Designing Web Interfaces. Bill Scott, Theresa Neil)

Обзор литературы прочитанной за два года
Основные мысли:

  • Предлагайте редактирование объекта около него самого
  • Добавьте возможность перетаскивания
  • Предотвратите переход между страницами
  • Добавьте анимационных эффектов. Это сделает интерфейс более живым
  • Увеличьте скорость отклика интерфейса

Итого: 950 руб. / 350 страниц / средний дизайн / среднее качество, мало информации

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

  • Раздел: Не уходя со страницы, как бы подкрепляет книга «Ошибки веб-дизайна» (Matthew Linderman, Jason Fried). Только в этой книге описана практическая реализация: оверлеи, инлеи, виртуальные страницы.
  • Раздел: «Легким касанием» обоснован в книге «Универсальные принципы дизайна» (W. Lidwell, K. Holden and J. Butler)

Вообще по тексту очень много переплетений с книгами «Ошибки веб-дизайна» и «Универсальные принципы дизайна»

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

Дизайн книги: от слов к делу

Иннокентий Келейников

Обзор литературы прочитанной за два года
О чем книга:

  • Сетка. Модульная сетка.
  • Оформление текста и разбор шрифтов

Основные мысли:

  • Все, что размещено по сетке, выглядит лучше
  • Фон и шрифт должны контрастировать
  • Строка не более 70 символов, текст разбит на абзацы, шрифт крупный
  • Избегайте частого использования выделений
  • Если делаете колонки, следите чтобы строки в разных колонках совпадали по высоте
  • Делите текст на основной, вспомогательный и т.д.
  • Текст должен быть такой, чтобы по нему можно было быстро пробежаться взглядом и уловить суть

Итого: 800 руб. / 300 страниц / отличный дизайн / отличная книга

Купил практически сразу, т.к. при пролистывании попался следующий текст:

Отбивка пробелами:
Не отбиваются пробелом:

  • точки и запятые от предшествующего текста;
  • многоточие, как знак паузы, от предшествующего или следующего за ним слова
  • короткое тире между цифрами, обозначающее пределы какой-либо величины, например: 20-30 человек;
  • дефис между словами и при переносе
  • кавычки от заключенных в них слов
  • ...

Мне показалось это идеальным. Все коротко, четко, понятно и по пунктам. После прочтения книги остался доволен результатом. Много переплетений с «Ководством» Тёмы Лебедева. Ещё одним толчком к покупке данной книги стала предыдущая работа в рекламном агентстве. Там постоянно пинали за косяки в тексте на сайтах, за « вместо ", за +79112223344 вместо +7 (911) 222-33-44, за N вместо №, за — вместо -.

После прочтения этой книги чувство и понимание типографики стало лучше.

Ководство

Артемий Лебедев

Обзор литературы прочитанной за два года
Итого: 2300 руб. / 450 страниц / отличный дизайн / отличная книга

Честно говоря, не купил, а читал в интернете. Воды в тексте нет. Оно того стоит, т.к. там мысли, выводы и авторский взгляд. Все эти вещи не стареют. Даже если сама персона Лебедева вас раздражает, это ничего не значит. Вот пример статьи про фото http://www.artlebedev.ru/kovodstvo/sections/169/ [8], вполне логичный вывод. Каждый раз, когда мне попадается дизайн на Bootstrap, мозг [6] выдает http://www.artlebedev.ru/kovodstvo/sections/147/ [9] т.к. сайты на Bootstrap, как правило, примитивны.

Теория и практика связей с общественностью. Учебник для вузов

Кочеткова А.В., Филиппов В.Н., Скворцов Я.Л., Тарасов А.С.

Обзор литературы прочитанной за два года
Итого: 300 руб. / 350 страниц / средний дизайн / отличная книга

Одна из тех книг, прочитав которую, можно понять суть профессии PR. Наверное, многие сейчас скажут: «Что за ересь для гуманитариев ты советуешь?!» На самом деле книга четко излагает суть профессии PR и тесно связана с книгой «Читаемый код или Программирование как искусство» (Dustin Boswell, Trevor Foucher). В последней был совет: «лучший код тот, которого нет». Как раз этот учебник помогает понять, что очень часто вашим клиентам сайт вообще не нужен. А значит, нет смысла его делать. Более того, вы начинаете обращать внимание на способы выхода программного продукта на рынок и осознаете, что у него все очень плохо с PR продвижением, а значит он не пойдет и денег за него вы не получите, а значит и писать его нет смысла.

Что ещё нужно для полного счастья:

Лекции Яндекса помогают взглянуть на многие вещи по-другому. Но опять же, все зависит от докладчиков. В любом случае, почерпнул для себя много нового. Самое значимое для меня видео на данный момент — Миши Давыдова о паттерне медиатора (http://tech.yandex.ru/events/yasubbotnik/chlb-feb-2012/talks/154/ [13]). Также радуют выступления Вадима Макеева, самое любое на данный момент, пожалуй, о CSS фреймворках (http://pepelsbey.net/2008/04/css-frameworks/ [14]).

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

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

Цифра или бумага.
Все книги по возможности покупаю в бумажном виде. В электронном почему-то не могу читать. Да и когда они стоят на полке и постоянно попадаются на глаза, их можно просто взять и пролистать. А ещё когда приходят знакомые разработчики, можно достать книгу с полки и дать им в руки со словами: «Вот эта збсь!»

Почему книги надо перечитывать:
Объем информации довольно большой. Все принципы и советы постепенно забываются. Время от времени нужно освежать воспоминания простым пролистыванием уже прочитанных книг. Прочитать и использовать по умолчанию — разные вещи. Многие читали про русские кавычки «, но часто продолжают использовать стандартные ". Многие читали про модульность, но продолжают писать «лапшу» и т.д.

P.S.: Жду вброса книги Алана Купера «Об интерфейсе» от UI специалистов. Ещё не читал её, поэтому описания нет. А также вброса знаменитого в узких кругах Огилви «О рекламе» на тему затронутую в книге «Flash реклама»

Автор: bakhirev

Источник [15]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/javascript/51029

Ссылки в тексте:

[1] http://habrahabr.ru/post/205616/: http://habrahabr.ru/post/205616/

[2] https://github.com/kriskowal/q: https://github.com/kriskowal/q

[3] http://www.8bitrocket.com/tag/electrotank/: http://www.8bitrocket.com/tag/electrotank/

[4] http://www.youtube.com/user/megadrone86/videos: http://www.youtube.com/user/megadrone86/videos

[5] http://pro.level-design.ru/: http://pro.level-design.ru/

[6] мозг: http://www.braintools.ru

[7] http://noregret.org/tutor/n/collision/: http://noregret.org/tutor/n/collision/

[8] http://www.artlebedev.ru/kovodstvo/sections/169/: http://www.artlebedev.ru/kovodstvo/sections/169/

[9] http://www.artlebedev.ru/kovodstvo/sections/147/: http://www.artlebedev.ru/kovodstvo/sections/147/

[10] http://tech.yandex.ru/education/): http://tech.yandex.ru/education/)

[11] http://web-standards.ru/): http://web-standards.ru/)

[12] http://pepelsbey.net/): http://pepelsbey.net/)

[13] http://tech.yandex.ru/events/yasubbotnik/chlb-feb-2012/talks/154/: http://tech.yandex.ru/events/yasubbotnik/chlb-feb-2012/talks/154/

[14] http://pepelsbey.net/2008/04/css-frameworks/: http://pepelsbey.net/2008/04/css-frameworks/

[15] Источник: http://habrahabr.ru/post/206436/