Попасть в программирование с давних пор было большой проблемой не только из-за нехватки доступных ресурсов, но и из-за их недоступности (до 10 лет назад цены на Интернет фактически были ограничены, а сейчас он все еще присутствует во многих местах. , а книги по программированию всегда были дорогими). Кроме того, многие руководства предполагают, что учащийся может вкладывать много времени или ресурсов или знаком с абстрактными концепциями, такими как командная строка. К счастью, в последние годы мы стали лучше справляться с этим. С появлением JavaScript многие общие задачи могут быть решены с использованием только браузера, что резко снижает требования к изучению языка программирования.

Что касается фактического обучения, я большой поклонник рабочих программ NodeSchool, которые по сути представляют собой небольшие модули npm, разработанные, чтобы познакомить вас с языком или концепцией, предлагая вам самостоятельно решать упражнения. Однако они по-прежнему полагаются на то, что вы знакомы с командной строкой или изучаете ее, а инструменты, используемые для их создания,… по меньшей мере, устарели. Итак, что, если бы существовала альтернатива этому, которая не только использовала бы обновленные инструменты, но также почти полностью работала в браузере, делая ее доступной для таких платформ, как Glitch?

Входить…

Веб-квест! Проект, над которым я работал примерно 2 месяца после того, как меня вдохновил твит, который написала Дженн Шиффер (который я, разумеется, не могу найти). В некотором смысле это переосмысление того, каким должен быть рабочий покупатель, но приспособленное специально для Интернета.

«Рабочие покупатели», созданные с помощью веб-квеста, называются «Линии заданий», и самое крутое в них то, что они работают почти исключительно в браузере! Все, с чем вы знакомы по рабочим программам NodeSchool, работает прямо в браузере, от выбора упражнения до проверки и запуска вашего решения. Единственное, что вам нужно сделать самостоятельно, это написать решение и сохранить его в файл.

Положительные и отрицательные

Я считаю, что у этого подхода много сильных положительных сторон. Самый большой из них (и тот, который меня больше всего радует) заключается в том, что эти цепочки заданий можно запускать прямо в Glitch! Никакой реальной настройки не требуется, он напрямую интегрируется с инструментами Glitch, чтобы создать беспроблемный опыт. Я создал пример, который вы можете посмотреть: https://glitch.com/edit/#!/webquest-example. Не стесняйтесь взглянуть на код, чтобы понять, как структурирована строка квеста, а затем войдите в пользовательский интерфейс веб-квеста (нажмите Показать) и попробуйте выполнить упражнение, выбрав файл solutions/1.js.

И наоборот, у этого подхода есть и недостатки, самым большим из которых является то, что вы не так хорошо знакомы с инструментами, которые будете использовать, поскольку многое абстрагируется из-за веб-интерфейса. Это сильная сторона для покупателей NodeSchool, но я думаю, что это во многом зависит от того, какой тип покупателя вы делаете. webquest предназначен для семинаров, ориентированных на Интернет, в то время как NodeSchool также фокусируется на более низкоуровневых семинарах.

Призовите руки

Вот где мне нужна помощь. Я создал веб-квест в качестве доказательства концепции, а это означает, что мне нужна помощь, чтобы преобразовать его в действительно пригодное для использования программное обеспечение. Сейчас это версия 0.1.4, и я хотел бы когда-нибудь довести ее до не-бета-версии. Если вы заинтересованы в участии, загляните в репозиторий GitHub. Код может потребовать всевозможного рефакторинга, некоторые части сломаны и, вероятно, есть много ошибок. Я всегда готов помочь вам, если вы хотите разобраться в кодовой базе, и вы можете связаться со мной на канале #webquest в Freenode IRC или просто написав мне в Twitter.

Подписывайтесь на меня на GitHub или Twitter.