После энергичного ввода кода из окна учебника, прикрепленного к левой стороне монитора вашего ноутбука, вы нажимаете Enter, сохраняете исходный файл и запускаете код. К вашему удовольствию, это работает! Эта игра, клон Instagram, приложение для просмотра фотографий или что-то еще, обещанное в руководстве, любезно появляется на экране. Ну наконец то! Все эти недели, которые вы потратили на изучение языка программирования, следуя инструкциям по созданию любого приложения, подошли к концу. Вы, наконец, научились программировать X-приложение на языке X.

Что теперь?

Всякий раз, когда я изучаю содержание «учебников по программированию», я всегда вздрагиваю. Многие онлайн-руководства для начинающих, которые хотят заняться разработкой программного обеспечения, часто сосредоточены только на синтаксисе языка программирования или конкретной парадигмы программирования. Но умение пользоваться долотом, молотком, пилой и рубанком не сделает вас плотником. То же самое с изучением языков программирования и парадигм; недостаточно сделать из вас программистов. Я не верю, что «учебники по программированию» и видеоролики, посвященные только языкам программирования, полезны для начинающих. Это синоним обучения кого-то использованию рубанка и ожидания плотника в конце.

Как мне тогда научиться программированию?

Начните с изучения основ информатики или вычислительного мышления.

Что такое вычислительное мышление?

В образовании вычислительное мышление (КТ) представляет собой набор методов решения проблем, которые включают выражение проблем и их решений способами, которые может выполнить компьютер. [1]. Он включает в себя умственные навыки и практики для 1) проектирования вычислений, которые заставят компьютеры выполнять работу за нас, и 2) объяснения и интерпретации мира как комплекса информационных процессов.

Прежде чем вы сможете написать программу, вы должны быть в состоянии выразить любую проблему, которую вы решаете, и ее решение в виде вычислительных элементов и процедур, которые управляют этими элементами. Вычислительное мышление позволяет вам, по крайней мере, достаточно понимать вычислительные проблемы, чтобы знать, как их решать. Он отделяет тех, кто знает языки программирования, от тех, кто умеет решать вычислительные задачи.

Как научиться вычислительному мышлению?

Я рекомендую курс CS50x, онлайн-курс Гарварда, который знакомит с компьютерными науками в удобном и удобном для начинающих формате. CS50 обучает вычислительному мышлению и программированию одновременно, создавая основу для решения реальных проблем независимо от того, как они представлены. Я лично взял CS50x в 2014 году и никогда не был так осведомлен в области компьютерных наук. Вы можете найти курс либо на edX, либо на сайте курса.

Есть и другие источники, обучающие вычислительному мышлению (например, MIT’s 6.0001x), которые вы можете изучить, однако я могу поспорить на CS50 для сообщества, ресурсов и творческих материалов, которые вам будут представлены. Поначалу это может показаться сложным (так оно и есть на самом деле), но если вы над этим поработаете, оно того стоит!

Вот и все.