Дугаев о мире будущего Почему приличный человек должен уметь программировать
Изучение языка JavaScript как способ борьбы с кашей в голове.
В прошлом году все тренировались фотографировать телефонами, а в этом, наверное, научатся программировать. По крайней мере такой вывод можно сделать из стремительного взлета Codecademy — сайта, где прямо в браузере учат языку JavaScript. Убил пару часов — изучил все основные концепции программирования: переменные, условия, циклы, функции. Получил за это несколько шевронов. Профит!
Таких онлайн-школ для юных программистов — интерактивных и с видео — только за последние полгода появилась пара десятков, причем как минимум одна рассчитана специально на домохозяек. Но Codecademy еще и придумали перед Новым годом питч: мол, почему бы в этом году не пообещать себе научиться писать код? И как-то это у них удачно выстрелило. Теперь определять с помощью ЭВМ длину собственного имени (так выглядит самое первое задание) учатся полмиллиона человек.
Все это хороший знак, потому что программированию давно пора войти в моду. В эпоху, когда большую часть времени люди проводят с электронными устройствами в руках, стыдно хотя бы в первом приближении не понимать, как эти устройства работают. Культурный человек должен уметь писать хотя бы скрипты для iTunes. К тому же программирование становится важным социальным навыком. Если когда-то желания девушек сводились к вещественным доказательствам невещественных отношений, то теперь все они хотят блоги, желательно не такие, как у других, и с применением библиотеки jQuery. Не индуса же им нанимать из Хайдарабада, прости господи.
«Это кунг-фу для мозгов, только им можно заниматься, уплетая гамбургеры с кока-колой»
Здесь надо отметить, что никакому настоящему программированию Codecademy научить не может, потому что настоящее программирование — то, которым занимаются между сеансами игры в пинг-понг потные юноши с волосами в пучок да и те джентльмены в Хайдарабаде, — всегда зависит от задачи и контекста. Одно дело писать приложения для айпэда, другое — систему управления ракетами средней дальности, третье — интеграцию с соцсетями для сайта про котиков. Codecademy вряд ли устроит вас в «Яндекс». Зато она может дать представление о том, как это вообще бывает: пишешь в окошке команды, а машина на них реагирует.
А это, между прочим, замечательное ощущение, которое бывает, например, когда выиграешь в шахматы, или достроишь железную дорогу величиной с комнату, или совершишь ловкую товарно-денежную операцию, в которой задействованы сразу четыре стороны. Это божественное чувство упорядочивания хаоса — и к тому же неплохое средство от эндемичной каши в голове. Научившись структурировать код, понемногу начинаешь точно так же относиться и к собственным мыслям. Это кунг-фу для мозгов, только им можно заниматься, одновременно уплетая гамбургеры с кока-колой. И Codecademy — самый дешевый способ это кунг-фу испробовать, хотя бы и с не самым просветленным учителем («Они учат плохому, — поморщился мой друг-программист. — Меняют состояние глобальных переменных в функции»).
Давайте, друзья, бунт машин не за горами. Начните изучать языки наших будущих хозяев сегодня. JavaScript — лишь первый шаг; а впереди еще C++, Lisp, Python, Ruby. Java, Perl, PHP, C#. COBOL, Fortran, Groovy и F#. Ada, M, Logo и Visual Basic. И все это начинается с простого симулятора игры в очко. Тоже, между прочим, важный социальный навык.
На Codecademy можно поиграть в настоящего программиста