Pull to refresh

Khan Academy будет использовать JavaScript для обучения программированию

Reading time 2 min
Views 9K
Khan Academy — некоммерческий проект, предлагающий тысячи бесплатных учебных виедороликов и курсов по основным научным дисциплинам, от математики и физики до истории и искусствоведения. До сих пор на сайте академии в качестве учебного языка использовался Python. Его часто выбирают для обучения программированию, во многом благодаря его однозначности (“There should be one — and preferably only one — obvious way to do it”) и прозрачности (“Explicit is better than implicit”), однако для первого учебного языка, считает Джон Рейсиг (недавно перешедший из Mozilla Corporation в Khan Academy) очень важны такие качества, как доступность и наглядность. Начать программировать на JavaScript можно в любом браузере не тратя ни секунды на установку, кроме того, всегда под рукой HTML5 и CSS, и можно вместо скучных традиционных чисел Фибоначчи и “Hello world” довольно быстро соорудить простенькую игру или хотя бы нарисовать что-нибудь на canvas'е (привет черепашке из Logo).

Кроме того, JavaScript совмещает объектно-ориентированный и функциональный подходы и знакомит новичка с асинхронным стилем программирования. Его терпимость к ошибкам и отсутствие жёстко заданной модели наследования, за которые JavaScript часто ругают, для учебного языка вполне могут оказаться преимуществом. Впрочем, это уже тема для хорошего холивара. Что важнее — сначала пробудить интерес к программированию и дать почувствовать первые успехи или сразу же прививать строгий “взрослый” подход? Однозначного ответа нет. Плюсы и минусы есть у обоих вариантов.

Зато распространённость JavaScript — это однозначный плюс. В отличие от полностью игрушечного Лого или примитивного Бейсика это полноценный язык, который уверенно выходит за рамки браузера и проникает на сервера, десктопы и мобильные платформы. Навыки программирования на нём можно будет непосредственно использовать на практике. В Khan Academy планируют включить в курс обучения работу с такими библиотеками, как jQuery, Processing.js, Box2D.js

Подробности — в блоге Джона Рейсига и в этом видео:

Tags:
Hubs:
+6
Comments 32
Comments Comments 32

Articles