Какие тысячи книг надо прочитать, чтоб выявить те «три», которые реально помогли стать хорошим программистом? Хочется поговорить не столько о конкретных книгах, сколько о типах книг. И в чем заключался академический подход к этому в СССР…
В свободное время модерирую JAVA раздел на одном из интернет форумов. Часто приходят ребята и спрашивают посоветовать пару книг или видеокурсов, чтобы быстро изучить язык и быстрей начать программировать и, став профессионалом, зарабатывать на этом. Все-таки, а что значит программировать?
Разработчикам в большинстве случае деньги платят за умение решать комплексные задачи — стартапить распределенные приложения, выявлять узкие места в производительности уже работающих систем, оптимизировать эти узкие места и пр.
Для пользователя программа — это удобная автоматизация бизнес функционала. А для состоявшегося разработчика — это манипуляция ресурсами железяки, под которую он разрабатывает. Как видно из такого определения — язык или технология — это посредник, средство для достижения этих целей. А эффективный программист — это проводник из мира железа в мир человеческого воображения.
Чтоб стать таким проводником, нужно одновременно соприкоснуться с двумя формами:
1. миром железа
2. сторона человеческого восприятия
Ведь именно этим фундаментальным аспектам обучали в высших технических школах СССР. Если освоить хорошо их, то дальнейшие книги сами выстроятся — потребуются знания о методиках разработки, конкретных языках и фреймворках. Выбираться будут из тактических соображений, в зависимости от задачи и изучаются за конечное время.
Как считаете?