Введение Идея данной работы родилась отчасти спонтанно во время оценки ассортимента крупных книжных магазинов Москвы, отчасти же сформировалась на базе наблюдений за тем, какими книгами пользуются студенты при изучении той или иной компьютерной дисциплины.
Дело в том, что, взглянув на книгу по компьютерной тематике часто практически невозможно судить о том, что вы найдете внутри. Это касается и полноты, и глубины, и качества изложения материала, и того на какой уровень знаний читателя рассчитана книга.
Такое положение вещей является одной из причин того, что студенты, выбирая литературу сторонних авторов и издательств (по отношению к вузу, где они учатся), часто в этом выборе ошибаются (особенно студенты младших курсов).
Приведу простой пример: никто в мире не знает языка программирования C++ лучше, чем его создатель Бьерн Страуструп, но его книги Язык программирования C++ [5] или Дизайн и эволюция C++ [4] ни в коем случае не являются учебниками. Для того чтобы изучать такие книги, нужно иметь достаточный опыт программирования если не на C++, то хотя бы на другом алгоритмическом языке.
В данной статье делается попытка систематизировать проблемы в описании и классификации компьютерной литературы, а также предложить несколько способов их решений.
Проблемы Рассмотрим гипотетическую книгу по компьютерной тематике. В данном случае нас не интересует содержание, обратим внимание на то, что можно прочитать на передней и, главное, на задней стороне обложки. Не смотря на то, что народная мудрость призывает не судить о книге по обложке, в случае с сотнями имеющихся наименований книг, например, по программированию на Visual Basic for Applications в Microsoft Excel, все равно хочется получить некую вводную информацию или оценку на глаз, что с точки зрения экономии времени и сил вполне оправдано.
С передней стороной все понятно, она содержит:
Х Название серии, если книга издавалась в серии.
Х Список авторов.
Х Иногда цитата одного из классиков компьютерной индустрии о книге или просто имеющая отношение к ее тематике.
Х Название книги, иногда еще и подзаголовок.
Х Номер издания, если оно не первое.
Х Логотипы или названия издательств.
С оборотной стороной обложки все несколько сложнее, и хотелось бы остановиться на ней подробнее. На рис. 1 приводится примерный макет этой наиважнейшей для нашего рассмотрения страницы. Нужно сказать, что на этот макет в той или иной мере похоже более 90% всех оборотов обложек книг по компьютерной тематике.
Название книги Логотип или название серии Подзаголовок Цитата классика Сведения об авторах Аннотация к книге или цель, для достижения которой книга была написана Основные темы, изложенные в книге, или то, чем книга поможет читателю, по пунктам Названия и реквизиты издательств Рис. 1. Примерный макет оборота обложки книги по компьютерной тематике Безусловно, в содержании возможны варианты. В частности, некоторые пункты могут находиться не на обложке, а внутри (в начале) книги.
В целом вызывает оптимизм тот факт, что приведенный макет достаточно распространен, хотя и не стал стандартом de facto (стандарта de jure тоже не существует). Он несет в себе достаточный объем полезной информации. Однако дело здесь не в том, что мы можем там увидеть, а в том, чего там, зачастую, нет.
Выбирая книгу по той или иной компьютерной технологии, потенциальный читатель имеет право, как минимум, знать:
1. Какими знаниями и умениями он должен обладать, чтобы освоить эту технологию с помощью конкретной книги.
2. В каком качестве книгу можно использовать: как учебник, как справочник или как нечто другое.
Возникает резонный интерес в отношении того, какова на рынке доля книг по информационным технологиям (ИТ), имеющим соответствующую маркировку В целях исследования была рассмотрена выборка из 170 книг по компьютерной тематике. Книги были выпущены разными издательствами (такими как, Питер, BHV, Бином, Русская редакция, ЭКОН и многими другими) в разные года (самая старая книга 1994 года издания, самая новая - 2008 года). Выборка включала книги по многим дисциплинам, в частности:
Х Программирование.
Х Операционные системы.
Х Архитектура вычислительных систем.
Х Метрология и сертификация программного обеспечения.
Х Распределенные вычисления.
Х и другим.
Оценивалась только обложка книг. Результаты исследования приводятся на рис. 2.
160 (100%) (24%) (21%) Общий объем выборки Объем наименований с Объем наименований с указанием уровня указанием типа пользователя издания Рис. 2. Результаты исследования обложек компьютерных книг Источником выборки стала личная библиотека автора, которую он собирал с года естественно не для того, чтобы через 14 лет написать эту статью. Поэтому с точки зрения данного исследования выборку можно полагать случайной.
Как можно видеть из диаграммы, ситуация с маркировкой далека от радужной.
Кстати, случаи, когда на одной книге встречалась маркировка обоих типов - единичны.
К этому стоит добавить, что оценка проводилась довольно либерально, поскольку луказание уровня пользователя, например, может иметь разные формы, и в зачет (в отсутствие стандарта) шла любая из них. Упомянем несколько вариантов:
Х Книга адресована (или предназначена) программистам (или администраторам, или пользователям), желающимЕ - очень расплывчатая формулировка. К сожалению, очень часто (почти как слово-паразит в речи) встречалась вообще экстремальная фраза: Будь вы новичком или профессионаломЕ, на взгляд автора несущая нулевое количество полезной информации, как и фраза Это книга для всех!. Книг для всех не бывает вне зависимости от того, к какому жанру она принадлежит: даже Библия, ИЗВЕСТНАЯ ВСЕМ, не является, тем не менее, книгой ДЛЯ ВСЕХ.
Х Уровень пользователя - продвинутый (или новичок, или эксперт) - такая форма могла бы быть наиболее эффективной, если хотя бы одно издательство удосужилось бы разъяснить читателям, по каким параметрам оно оценивает этот самый уровень.
Например, опытный программист может быть отличным разработчиком настольных приложений, но ничего не понимать в сетевых. Очевидно, что решение об упомянутом уровне принимается неким безымянным экспертом (или именитым редактором) на основании собственных суждений. Даже если это не так, читатель все равно об этом не догадывается. В качестве приложения к такой маркировке издательство должно было бы выдавать каждому потенциальному потребителю своей литературы тест, позволяющий выявить его луровень (причем, отдельный тест для каждой книги).
Х Список конкретных знаний и навыков, необходимых читателю (prerequisites). Данная форма встречалась реже всего, однако она дает исчерпывающую информацию, необходимую читателю. Идеальный вариант. Если на обложке приводится такой список, покупатель сразу понимает, может ли он освоить дисциплину по данному изданию или ему нужно изучить предварительно еще 10-20 источников.
С типом издания тоже не все гладко. Книгу можно назвать: энциклопедией, описанием, руководством (полным, официальным и так далее), справочником, учебным курсом и еще многими другими терминами, значение которых также меняется от случая к случаю, что весьма неудобно.
Иногда на обложках встречалась маркировка так называемой лобласти или конкретной технологии, с которой связано издание. Встречались такие области, как программирование, программные продукты и другие. С точки зрения автора такая маркировка бесполезна, поскольку читатель, как правило, имеет некое представление о том, книгу по какой технологии он выбирает. Однако если предположить право таких пометок на жизнь, их нужно как-то унифицировать.
Во второй части данной работы рассматривается ряд подходов к маркировке изданий, предлагаемых автором, и могущих оказаться полезными для читателя, который примерно представляет или точно знает, чего хочет от книги.
Решения Итак, польза некоторой суммарной информации для читателя, расположенной на обложке книги по ИТ неоспорима. На текущий момент унифицированной системы маркировки нет - каждое издательство поступает в этом вопросе согласно своему разумению. Нужно отдавать себе отчет в том, что самим издательствам такая маркировка может быть не выгодна с финансовой точки зрения, в частности, в случае если книга имеет громкое, привлекательное название, но страдает недостатками качества в части содержания или оформления.
Если все же предположить возможность формирования стандарта в этой области, будет нелишним рассмотреть возможные варианты и системы, которые могут быть положены в его основу.
Художественную литературу классифицировать сложно, хотя и она делится по жанрам, а в случае с книгами по ИТ тематике дело обстоит отчасти также, как с математикой или физикой, разделы которых давно выстроены в общепринятые системы. Разница лишь в том, что в компьютерной науке (computer science) существует несколько систем классификации дисциплин, которые могут быть применимы и к книгам.
Для начала обратим внимание на тот факт, что все материалы, с которыми приходится иметь дело ИТ специалистам хорошо структурируются. Например, можно предложить следующую классификацию:
Х Справочные сведения о функциях, системных вызовах и синтаксисе языков программирования (manuals, reference guides) - такие справочные данные характеризуются, как правило, четкой и устоявшейся структурой.
Х Учебные материалы (learning guides, tutorials) - как сделать в программе или в программном продукте определенную функциональность. Часто излагаются по шагам с примерами кода, схемами и снимками экранных форм.
Х Часто задаваемые вопросы или обмен мнениями на специализированных форумах или через систему мгновенных сообщений (FAQs, forums, chats) - и то, и другое представляет собой пары вопрос-ответ (в случае форума может быть 1 вопрос и множество ответов). В отличие от первой и второй разновидностей материалов - здесь лексика более свободная.
Х Обзорные или аналитические статьи (articles) и книги по компьютерной тематике.
Темы, раскрываемые в таких материалах аналогичны второй категории, поэтому их часто путают, что является ошибкой. В фундаментальной литературе по программированию предмет раскрывается более глубоко, до корней и может освещаться субъективная позиция автора, а ее лексика значительно сложнее, чем в учебниках, поэтому рекомендовать такие книги новичкам - нельзя. Например, произведения таких именитых авторов, как Джэффри Рихтер, Том Сван и Герберт Шилдт - как правило, учебники, а книги Бьерна Страуструпа, Эндрю Таненбаума или Стива Макконнелла - нет.
Взяв такую классификацию за основу, можно предложить следующие наименования типов книг по ИТ: учебник, курс (отличающийся от учебника наличием практических занятий между теоретическими), руководство (отличается от учебника тем, что своей целью имеет описание использования всех или большинства возможностей технологии и структурирован, соответственно, по блокам функций, а не по степени сложности материала, как учебник), справочник (в термине энциклопедия, на взгляд автора, нет смысла, тем паче, что изначально это греческое слово обозначало круг образовательных наук, а не книгу со сведениями из одной области одной науки [1]), фундаментальный труд, вопросы-ответы (хотя такая информация лучшее свое воплощение способна получить в виде онлайнпубликации, поскольку сведения в Интернет можно оперативно обновлять).
Ранее говорилось о том, что маркировка лобласть на обложке издания бесполезна.
Сама идея классификации ИТ, тем не менее, не бесполезна и, собственно, не нова. Однако чтобы дать читателю необходимую информацию, нужно указывать не конкретную технологию (наверняка упомянутую в названии), а дисциплину computer science.
Комбинация такой маркировки и названия книги позволит читателю определить область ее применимости.
Большая часть читателей учебников по компьютерной тематике - студенты средних и высших учебных заведений. По этой причине в качестве классификатора для дисциплин, к которым относятся книги, можно использовать названия разделов из Совокупности знаний по информатике, представленной в Рекомендациях по преподаванию информатики в университетах. Computing Curricula 2001: Computer Science (CC2001) [3].
Эти рекомендации давно используются вузами в нашей стране, так что их использование при маркировке изданий помимо очевидной выгоды для студентов несет и образовательную пользу: обеспечение прямой связи между литературой и учебными занятиями по компьютерным дисциплинам (то есть она будет полезна и преподавателям).
Упомянутая совокупность знаний включает следующие разделы:
Х DS. Дискретные структуры.
Х PF. Основы программирования.
Х AL. Алгоритмы и теория сложности.
Х AR. Архитектура и организация ЭВМ.
Х OS. Операционные системы.
Х NC. Распределенные вычисления.
Х PL. Языки программирования.
Х HC. Взаимодействие человека и машины.
Х GV. Компьютерная графика и визуализация.
Х IS. Интеллектуальные системы.
Х IM. Управление информацией.
Х SP. Социальные и профессиональные вопросы.
Х SE. Программная инженерия.
Х CN. Методы вычислений.
Каждый раздел разбивается на подразделы, которые также можно указывать по необходимости.
Приведенная классификация, конечно, не является единственно-верной. Так для состоявшихся ИТ специалистов (которые тоже иногда читают профильную литературу с целью повышения профессионального уровня) может быть более пригодна маркировка согласно Руководству к своду знаний по программной инженерии (лGuide to the Software Engineering Body of Knowledge или Swebok), разработанному исследователями университета Квебека в Монреале при содействии тех же организаций, а именно Association for Computing Machinery и IEEE Computer Society, которые разрабатывали CC2001, упомянутые ранее [2]. Ядро знаний, согласно Swebok, формируется из следующих дисциплин:
Х Компьютерная наука.
Х Науки о мышлении.
Х Связь/сети связи.
Х Управление проектами.
Х Инженерия качества.
Х Инженерия компьютеров.
Х Другие инженерные дисциплины.
Х Математика.
Pages: | 1 | 2 | Книги по разным темам