При этом легко видеть, что не все лекторы одинаковы: одни объясняют вещи глубоко и понятно, другие же — ущербно и загадочно: у таких можно только вызубрить, сдать и забыть, поскольку пользоваться этим все равно не получится.
Отмечу, что кроме знаний институт дает еще и связи, а связи решают все. Потому что после вузов народ разбегается кто куда, а разбежавшись, тянет к себе своих. Впрочем, это сильно зависит от конкретного вуза и страны.
Хороших книг и раньше было немного, и даже сегодня их чуть меньше, чем совсем ничего, а классика так и остается классикой. Например, в семидесятых была одна «Книга Дракона», а сейчас доступны десятки качественных вариаций на тему, но в них от 70 % до 90 % — это пересечения и повторения, а потому первую книгу читаем вдумчиво, остальные бегло пролистываем в поисках различий.
Нужно заказывать похожие или аналогичные книги с Амазона, где их очень много. К примеру, сейчас я углубился в теорию CS и постоянно покупаю кучу разных книг. Большинство из них давно не переиздавались, но можно купить б/у. Среди них попадаются очень и очень хорошие. Вас какие алгоритмы вообще интересуют? Алгоритмов много и все из разных предметных областей, но книг, их описывающих, — еще больше.
Взять, например, упомянутого Кнута. Да, у него изложение своеобразное. Но статьи, на которые он ссылается в своей книге, зачастую описывают эти же алгоритмы намного понятнее и доступнее. Многие из этих статей опубликованы в журналах, которых сейчас уже не достать, но сборники таких статей часто доступны в виде отдельных книг. Например, вот: Computer Algorithms: String Pattern Matching Strategies (ISBN-10: 0818654627). В этой книге один и тот же алгоритм последовательно описывается разными авторами и по-разному, что существенно облегчает понимание новичку.
Согласен. Но сейчас, по крайней мере, есть документация. Есть SDK и куча примеров. А вот в свое время, чтобы заставить CD-ROM проигрывать диски, мне пришлось дизассемблировать пару программплееров, реконструируя протокол, причем так приходилось делать не только мне одному. Информацию собирали буквально по крупицам. Ассемблер x86 я изучал в досовском debug.com путем анализа воздействия команды из реальной программы на флаги, память и регистры процессора.
Но у моих предшественников и этого не было. Пионеры информатики не могли почерпнуть знания в книгах, поскольку эти книги им еще предстояло написать. По сути, с тех пор ничего не изменилось, просто линия фронта сместилась. Да, сейчас можно набрать в Гугл вопрос: как развернуть список на Java/.NET/C и получить готовый код для «копи-пасты». Зачастую, даже несильно кривой и рабочий. Но если спросить Гугл, «как написать Гугл», то ничего полезного он все равно не скажет, так как непрерывно совершенствуется, а над проблемой поиска бьются лучшие умы человечества. Лет через надцать об этом можно будет прочитать так же свободно, как сейчас мы читаем принципы построения компиляторов в «Книге Дракона», в результате чего создается огромное множество новых языков и технологий, которые не только создаются, но и выживают в конкурентной борьбе.
Если бы во многих вопросах молодежь не клала меня на лопатки, я бы бухтел. А так у нас просто разделение труда и совершенно разные подходы к решению задач. Я по старой привычке сначала включаю мозги, затем внезапно вспоминаю, что Гугл рулит. И минут через полчаса рожаю ответ.
Вильям Л Саймон , Вильям Саймон , Наталья Владимировна Макеева , Нора Робертс , Юрий Викторович Щербатых
Зарубежная компьютерная, околокомпьютерная литература / ОС и Сети, интернет / Короткие любовные романы / Психология / Прочая справочная литература / Образование и наука / Книги по IT / Словари и Энциклопедии