вторник, 31 июля 2018 г.

Навигатор непрерывного обучения


В чём собственно проблема?

Так уж сложилось, что я - тот самый "вечный студент": учусь я постоянно, многому и останавливаться не собираюсь. Поэтому тема непрерывного обучения мне интересна, и я как её непосредственный участник очень заинтересован в инструментах, которые бы мне на этом нелегком пути помогали. В этот раз я хочу рассказать об инструменте, которого мне не хватает.

Очень часто, говоря о проблемах непрерывного обучения, люди ставят во главу угла учебный контент - надо, мол, разрабатывать курсы по всевозможным тематикам. Курсов должно быть много и они должны быть разные: маленькие, большие, интерактивные и геймифицированные, мобильные и не очень, с VR / AR и без, ну и так далее. В то же время, когда я учусь чему-то необходимому, то не страдаю от недостатка интерактивности и бейджей. Понимаю, что по себе людей не судят, возможно окружающие чувствуют острую потребность именно в новых форматах учебных материалов, хотя я этого не замечал. А вот в чём я потребность ощущаю, так это в управлении своей учёбой. Сейчас поясню.

Пытались ли вы когда-нибудь одновременно изучать несколько слабо-связанных между собой направлений? Вот у меня, к сожалению или к счастью, есть такая проблема:
  • мне нравится программирование и я с удовольствием изучаю новые языки, фреймворки и связанное с этим
  • по работе мне нужно изучать менеджмент, маркетинг, организацию разработки, техническую документацию и кое-что ещё
  • с детства хотел играть на гитаре, поэтому этому тоже уделяю время
  • ещё у меня куча разных идей в голове, которые бы хотелось каким-то образом претворить в жизнь, что можно расценивать как практику, объединяющую первую пару пунктов, и которая тоже отъедает время


И на всё на это у меня не так много свободного времени. Получается, что у меня есть очень ограниченный ресурс - время и есть множество задач, между которыми его надо распределять. И вот тут возникают вопросы:
  1. как подобрать программы обучения, которые дадут максимум эффекта за минимум времени?
  2. как планировать свою учёбу, распределять время каждый день среди всех направлений и учитывать его?
  3. как получать выгоду от результатов? Сюда можно отнести сертификацию, портфолио, резюме, возможные направления дальнейшего развития как в карьере, так и в дальнейшей учёбе.


Вопросы вроде понятные и очевидные, мне, утрируя, не помешал бы своего рода Яндекс.Навигатор + счётчик шагов, но только в обучении.

К слову, коллективный разум (Карен, привет) подсказал мне сервис, который должен был бы закрыть львиную долю моих вопросов (Degreed.com), и, если бы не проблемы с мобильным приложением, которое вообще отказалось нормально работать, я, наверное, был бы вполне им удовлетворён. В десктопной версии есть куча нужного мне функционала, но компьютер не всегда под рукой, поэтому мобильная версия здесь принципиально важна. Тем не менее, такой сервис есть, но искал я его очень долго и, если бы не случайная подсказка, вряд ли бы нашел. Но в процессе поиска я частенько задавался вопросом: "Почему же, уделяя столько внимания созданию учебного контента, почти никто не занимается задачей сопровождения и помощи учащимся?" У меня пока ответа на этот вопрос нет, разве только ощущение, что у людей нет особой потребности в такой поддержке - среди моего окружения планированием и учётом не занимался почти никто.

В общем после неудачи с Degreed, и поисков среди других аналогичных приложений и сервисов, я задумался, а как я сам такое приложение себе представляю. Собственно, своим видением я и хочу поделиться.

Ну поехали...

Итак, я решил плясать от 3 основных групп функций:
  1. Поиск программ обучения
  2. Прохождение программы
  3. Результаты и предположения о выгодах

Часть №0 - Структура учебных объектов

Но прежде чем приступить к описанию функционала надо пару слов сказать о структуре. Я пришел к выводу, что для начала достаточно 3-х уровней учебных объектов:
  1. Отдельные учебные задачи, работа над которыми, как правило, не занимает больше 40 часов
  2. Группы задач, например изучение какого-либо фреймворка или языка программирования. В рамках группы, соответственно, может быть несколько задач
  3. Категория - собственно направление обучения. Будь-то программирование, менеджмент или что-то ещё

Часть №1 - Поиск программ обучения

Программ обучения сейчас предостаточно как формальных, так и не формальных. Особо понравился мне подход некоторых сообществ, например Open Source Society University, которые собирают масштабные программы обучения полностью из открытых курсов и книг. Блеск! Так как же мы выбираем программы обучения из всего этого многообразия? Я поговорил с коллегами, посмотрел в интернете и определил следующие основные критерии выбора:
  • Отзывы других
  • Язык обучения. Английский по-прежнему останавливает многих
  • Содержание программы: рассматриваемые темы и результаты
  • Длительность, интенсивность и расписание
  • Стоимость
  • Помощь в процессе обучения - наставник

В общем этот функционал я представлял себе как-то так:

Да, и важно, чтобы каждый желающий мог составить свою программу, если не нашел ничего подходящего, и поделиться ею с другими. Только представьте, если бы на вопрос: "Как ты этому научился?" можно было бы просто скинуть ссылку на свою программу и статистику прохождения. Ну круто же.

Часть №2 - Прохождение программы

За основу функционала поддержки в процессе обучения я бы взял то, что увидел у нескольких сервисов по формированию привычек, вроде coach.me, skillbull, things43(он же drimsa.com, хотя и этот сайт вроде уже закрылся). А предлагают они следующее:
  • различные игровые механики: учёт потраченного времени, периодичности выполнения действий, сравнение со средними и топ-показателями других участников. В некоторых приложениях, вроде Habitica, игрофикация вообще возведена в абсолют - твоя задача прокачивать игрового аватара за счёт реальных достижений, но мне такой подход не очень близок.
  • социальную поддержку - вокруг формирования навыка выстраивается целое сообщество, где процесс и сложности обсуждают, люди жалуются и помогают друг другу
  • наставничество - "волшебный пендаль" или совет бывалых в переломных ситуациях
Для меня главный мотиватор - это количество уже потраченного на задачу или направление времени. Поэтому, эту часть функционала я бы сделал так:

Часть №3 - Результаты

Cамый сложный раздел. Главный результат учёбы для меня - это осознание пройденного пути и изменений. Вот я чего-то не умел, а теперь умею или могу решать задачи на уровень выше, или смотрю на что-то по-другому. Но внутреннее ощущение оно на то и внутреннее - представить его в каком-то осязаемом виде или оцифровать невозможно.

Я могу лишь запечатлеть в приложении:
  • сам факт моего обучения во времени, который уже выше так или иначе показан
  • если есть какие-то осязаемые результаты, то можно добавить их фото/видео/аудио, ну или ссылку на какой-то сторонний ресурс, например на тот же гитхаб, формируя за счёт этого некое цифровое портфолио
Дальше, в порядке бреда, ещё пара гипотез о возможном развитии:
  1. Допустим, некоторые программы обучения могут быть интересны работодателям. Почему, скажем, компаниям не заинтересоваться мотивированным и целеустремленным учеником, активно и ритмично занимающимся нужной в бизнесе темой? Можно глянуть на то, как меняется их портфолио во времени и сделать нужные для себя выводы. В интерфейсе это достижение можно отразить, например, какой-то особой отметкой в статистике:
  2. Совсем уже гипотетическое и фантастическое предположение. Представим, что в программы обучения по разным направлениям могут входить одни и те же компоненты. Например, в области разработки ПО есть смежные специальности:
    • есть Computer Science - собственно программирование в деталях. Там вам и математика продвинутая, и разноуровневые языки от ассемблера до языков высокого уровня, вроде Python. В общем, тру-программирование
    • есть Software Engineering - это больше о процессе разработки: как собрать требования, как организовать разработку, как управлять качеством
    • есть что-то вроде Технологического предпринимательства или управления, где добавляется разного рода менеджмент и маркетинг.
    Во всех специальностях есть общие темы, есть свои собственные. Имея достаточно данных о содержании программ обучения, отзывы и результаты учащихся, статистику их обучения, мы можем построить некий сетевой график обучения по специальностям и спрямлять траекторию обучения, чтобы она занимала минимум времени при максимуме эффекта. Ну и можно получить рекомендации, например, по смене профессии - в кого проще переучиться. Тот самый Яндекс.Навигатор для обучения. Останется подавать на вход результаты профориентации и рекомендуемые маршруты готовы.

С небес на землю

Продолжать дальше не буду. Нафантазировать можно много чего. Но реальность такова, что у того же Degreed, существующего больше 6 лет, получившего больше $40млн инвестиций, меньше 50 тысяч скачиваний мобильного приложения, а реальных пользователей приложения, видимо и того меньше и это на мировом, а не российском рынке. И основные надежды у них связаны не с обычными пользователями, а с корпоративными. Печально, но похоже, обычным людям эта тема, действительно, неинтересна.

Ну а для себя я написал простенького бота для учёта времени, вот приделаю к нему немного графиков и буду доволен :)

Upd.: Я-таки сделал бота, который реализует часть функционала приложения - отслеживание времени, потраченного на занятия. Доволен, как слон. Приглашаю всех желающий с ним познакомиться - в телеграмме его название trackway / Username - @trackway_bot / Ссылка - https://t.me/trackway_bot