Самый упоминаемый на Reddit учебник — «Чистый код» Robert C. Martin. В отличие от многих других книг, это издание устойчиво наращивает популярность читателей, начиная с 2010 года.
Первые десять строчек рейтинга занимают следующие книги:
- «Clean Code: A Handbook of Agile Software Craftsmanship», автор Роберт Сесил Мартин.
На русском языке название книги «Чистый код. Создание, анализ и рефакторинг», также есть критика на Хабре. Код занимает почти треть книги. - «Code Complete», автор Стивен Макконнелл.
По русски название книги — «Совершенный код».
Упоминание и частичное обсуждение на Хабре. - «C Programming Language» (2nd Editio), авторы Брайан Уилсон Керниган и
Деннис Макалистэйр Ритчи.
По русски название книги — «Си. Язык программирования»
Переведена актуальная для списка Reddit версия версия 2-го издания. - «Effective Java», автор Джошуа Блох.
По русски название книги — «Java. Эффективное программирование»
На русском языке есть предыдущий выпуск издания. На Хабре упоминания есть, рецензии нет. - «C++ Primer», авторы Stanley B. Lippman, Josee Lajoie, Barbara E. Moo
На русском языке есть очень похожее издание тех же авторов «Язык программирования C++. Базовый курс» - «Head First Java», (2nd Edition), авторы Kathy Sierra, Bert Bates
По русски название книги — «Изучаем Java»». Переведена актуальная для списка Reddit версия 2-го издания. - «Introduction to Algorithms» (3rd Edition), авторы Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein
По русски название книги — «Алгоритмы: построение и анализ»
Отлично подходит в качестве справочника. - «The Pragmatic Programmer», автор Andrew Hunt, David Thomas
По русски название книги — «Программист-прагматик. Путь от подмастерья к мастеру» - «Structure and Interpretation of Computer Programs» (второе издание), авторы Harold Abelson, Gerald Jay Sussman.
По русски название книги — «Структура и интерпретация компьютерных программ»
Книга рассматривает создание кода на уровне общих принципов и объясняет взаимодействие программной среды и машины. - «The Art of Computer Programming» (Volumes 1-4A Boxed Set), автор Donald E. Knuth
По русски название книги — «Искусство программирования».
Самая цитируемая книга в списке собрала на Reddit 3106 комментариев, замыкающая список — упоминалась в 274 комментариях. Большинство книг есть на русском языке и купить их — не проблема (по крайней мере, в электронном формате).
В списке есть одна прикладная книга по ИИ — «Artificial Intelligence: A Modern Approach». Других специализированных книг по программированию модных направлений: нейросетей, блокчейнов или робототехнике в списке нет. Все прикладные примеры в кейсах внутри книг.
В комментариях к книгам программисты, помимо комплиментов авторам, быстро переходят от обсуждений книг к обсуждению достоинств языков программирования. Это наверное нормально, но показывает, что все зависит от того, кто на каком уровне находится и на чем кодит.
Все списки рекомендуемых книг субъективны и даже основанный на статистике упоминаний Reddit тоже. Если вы сомневаетесь что почитать, сравните, например с этим списком и выберете книги, присутствующие и там, и тут. В списке Reddit упомянуты 24 книги, а по ссылке 139. Есть что выбрать.
Большим сторонником чтения книг является Джоэл Спольски, автор популярного интернет журнала JoelOnSoftware и еще более популярного Q & A вопросника по программированию Stack Overflow, посещаемого 118 миллионами программистами каждый месяц. Так вот написанных Joel`ом Spolsky книг в рейтинге Reddit нету. Вы можете оценить журнал или русскую версию его Q & A вопросника, хотя она и сильно уступает оригиналу.
И кстати, у него тоже есть свой список лучших книг. Пересечений полно. Хотя места и меняются.
Комментарии (21)
poxvuibr
07.12.2017 08:04Со всеми этими книгами одна проблема — они для тех, кто уже умеет программировать. Нет ни одного учебника для человека, который код никогда не писал. Возможно Керниган тут выделяется и по его книге можно и вправду изучить C с нуля, но вот всё остальное похоже не такое.
Neikist
07.12.2017 09:36По моему там таких чуть ли не половина… head first — вообще для чайников, СИКП, по С, плюсам и java вроде тоже почти учебники…
Px2
07.12.2017 09:51Точно. Серия Head First — вообще отличные книги для начинающих, многие переведены на русский. С картинками )
Free_ze
07.12.2017 16:16Нетонкие книжки, половина страниц которых занято странным форматированием колонок, диалогами героев (!) и картинками (не всегда относящихся к материалу, а то и программированию вообще). Количество воды просто запредельное.
poxvuibr
07.12.2017 10:08head first — вообще для чайников
Там про OOP на 28 странице. Раньше, чем про массивы. Начинающим эти знания будут только мешать.
Px2
07.12.2017 12:38В «Философии Java» на 17-й. И почти сразу идет описание наследования и полиморфизма, еще до синтаксиса языка. Понятно, что читателю придется работать с объектами в любом случае, но такая заумь, которая там написана, только отпугнет начинающего.
Imrahil
07.12.2017 10:09В рейтинге не учебники увы. Это руководства, рекомендации, углубление в...)
Жаль что рейтинг не построен по принципу язык -> книги.
Получается что в топчике как обычно си джава и абстратные книги («Чистый код» как бест мое мнение, особенно для фанатиков банды 4-х рекомендуется). А то что в топы не вошло по причине меньшей адитории читателей осталось за бортом.
По поводу Кнута — я не спорю что книги хороши, и сам начинал с Кнута и Андерсона (Дискретка), НО лично не встречал еще программиста который прочел и ОСВОИЛ все 4 книги Кнута. Особенно усложняет понимание присутствие виртуального окружения со своими абстрактными слоями и набором команд, зато универсально, что не всегда плюс.
Px2
07.12.2017 09:49Книга «Чистый код», на мой взгляд, сильно переоценена. Раньше я тоже был от нее в восторге и пытался следовать всем рекомендациям. Со временем начал понимать, что где-то меня обманывают. Не все советы из этой книги хороши и не следует их слепо выполнять, как это делал я и как это делают некоторые мои коллеги. Это может даже усложнить код.
Например, принцип «метод должен выполнять одно действие», или как он там называется, неприменим на практике. Программа распухает неимоверно, при чтении кода приходится скакать по этим методам, теряя нить.
Можно сказать: «это ты так пишешь коряво». Так и есть, но сейчас не об этом. В его примерах тоже разбираешься не сразу.
Подозреваю, что идеальный код в представлении Мартина — это чистый лист в IDE. Но тогда бы не было книги.Imrahil
08.12.2017 10:27Вы сами перечеркнули сказанное) Вы были в восторге пока не усвоили все) А со временем стали считать себя выше того что усвоили) это нормально.
А насчет распухаемости это миф. лучше так чем лапша на 10 экранов которую отрефакторить сложнее чем переписать)
Free_ze
08.12.2017 11:35Для новичка, который не знает разницы между плохим и хорошим, подача такой идеалистической картины вполне может дать альтернативную точку зрения на организацию кода.
Не все советы из этой книги хороши и не следует их слепо выполнять
Справедливо для любой литературы, включая религиозную.
ЗЫ У «дяди Боба» есть годные видеокурсы сблекджекомрефакторингом и юнит-тестами. Они лучше книги (объективно по содержанию), так как сама идея чистого кода там обосновывается практическим применением.
fatronix
07.12.2017 20:22Алгоритмы. Разработка и применение от Клейнберга — тоже очень хорошая книга по алгоритмам.
А про «Чистый код» у меня создаётся ощущение, что все подряд её называют обязательной для прочтения, но при этом никто не читает, будто мем какой-то.Imrahil
08.12.2017 10:32Это нормальная ситуация как и с Кнутом. Все знаю все видели обложку, но… единицы усвоили)
Тот кто часто занимает кодревью, кому нужно упарвлять командой из абсолютно разных разрабов с разным уровнем и кто хочет сохранить весь код (а часто это десятки отдельностоящих пиложений) в условном порядке эта книга помогает приблизиться к мечте) Но естественно не является библией)
З.Ы. Сомневаюст что 99% из нас это одни синьеры-помидоры тимлиды)
А если учесть что одиночек среди нас вообще вагоны, то естественно ограничивать себя чем-то(ведь это все только для меня, да я вообще всю жизнь буду помнить куда я го-ту указал в 1991-м) кажется нам унылым.
FirsofMaxim
Artificial Intelligence
FirsofMaxim
Пардон, очень ждал эту книгу на русском, устал и купил оригинал.
Anrewer Автор
толковая?
heleo
Если не ошибаюсь ей уже 10 лет как издана на русском. Давно ожидали?
FirsofMaxim
Да но это старое издание, тираж ограничен, и нигде я его не нашел, я про русскую версию.
heleo
Я почему и спросил, мне в 11 году удалось купить русскую версию. Не думал что её трудно было так найти, скорее отпугивала цена)