Слишком длинные
Если обложка Вашей книги заявляет, что она для начинающих, и при этом составляет 800 страниц, Вы все делаете неправильно. Откройте свой редактор заново. Урежьте книгу вдвое. Я прекрасно понимаю, что делая книгу толще, Вы можете просто отправдывать ее огромную цену, но это, конечно же, никак не поможет начинающему программисту. Я также понимаю, что довольно непросто не позволять книге растолстеть. Есть куча сложных концепций и практик, которые требуют детального объяснения. Но эта та трудная работа, с которой Вам как автору приходится иметь дело. Хорошенько поразмыслите, чему следует учить новичков, а чему нет. Не вешайте на них груз в виде бесполезных знаний, не подавляйте их интерес здоровенным материалом.
Вот, например, книга краткая, но в тоже время достаточно подробная — «Eloquent Javascript» (Marijn Haverbeke).
Слишком много примеров вида «Hello, World!»
В идеале, «helloworld»-подобный пример должен встречаться в книге только единожды. Если и дальше приводятся беспорядочные и бесполезные примеры вроде рисования ёлочки в консоли, читатели все больше будут чувствовать себя оторванными от реальной практики. Читатели не идиоты. Они знают, что настоящие программисты никогда не рисовали ёлочки в консоли (разве что только ради смеха). Так зачем заставлять читателей делать всю эту ерунду? Если Вы обучаете их строкам, то приведите пример о генерации CSV файлов. Никогда больше не заставляйте читателей рисовать ёлку.
В книге «Ruby on Rails Tutorial: Learn Rails by Example» (Michael Hartl) автор занимается преподаванием во время создания реального проекта, что, несомненно, оставляет у читателя чувство завершенности.
Нет ответов на упражнения
Я считаю, что упражнения являются обязательной частью книги по программированию. Книги о программировании не должны быть для простого чтения. В конце концов эти книги должны учить своего читателя. Упражнения важны, поскольку они толкают мыслить самостоятельно и на самом деле писать программы.
Но к чему эти упражнения, если читатели не могут выяснить правильные ответы на них. Следует ожилать, что начинающие программисты будут застревать в подвешенном состоянии очень часто. Они будут сталкиваться с проблема, которые автор даже и не предвидел. Без ответов, читатели, которые застряли на простой задачке просто откажутся от нее, так и не узнав решение.
Я знаю, что есть много издательств, которые поддерживают связи с профессорами университетов. Они заключают договоры с преподавателями, чтобы исключить ответы из учебников, таким образом преподователи могут использовать эти вопросы в качестве экзаменационных. Если Вы являетесь частью этой схемы, то Вы недостойны учить кого-либо программировать.
Оригинал лежит здесь.
Комментариев нет:
Отправить комментарий