Буквально минут 15 назад закончил подготовительные курсы, которые давались мне перед основной учёбой.
Подробнее:
Как уже писал ранее, я недавно записался и оплатил обучение в одном on-line университете на факультет Android разработки. Старт обучения начинается 1 февраля, и до этого срока нужно было пройти мини курс по основам программирования.
Данный курс охватывает базовые понятия в программировании, такие как постановка задач, алгоритмирование, основы программирования: операторы и функции, ветвления и циклы, массивы и работа с вводом\выводом. Забегая вперед, хочу отметить что всё это я уже знал со времен учёбы в университете и во время моих попыток заниматься самообразованием, ничего нового я для себя особо не подчеркнул (кроме языка на котором были задания).
Курс сделан в формате интерактива. Есть записанный видеоматериал с темой урока. В этой лекции подробно объясняется сама тема с примерами, видео идут по 9-15 минут, и таких видео в теме 3-5 штук. После всех видеоуроков даётся несколько задач для самостоятельного решения. Как только вы выполняете задания, вы должны их загрузить на специальной странице с вашими комментариями к ним. Ваши задания проверяют 3 случайных студента, уже прошедшие эту тему + можно запросить проверку у наставника курса (ментора). Как только ваши задания проверили, вам открывается доступ на следующую тему.
Единственное, что меня смутило в самом начале, что все темы и задания выполняются на языке JavaScript. Так как раньше я его даже в глаза не видел, я первые час-два привыкал в новому для меня синтаксису, но быстро разобравшись начал выполнять задания. Сами домашние задачи в конце уроков не особо выглядели сложными и сводились к простейшей алгоритмике, нужно было лишь немного включить голову.
Почти все задания я выполнял за 1 час или меньше, а оставшееся время думал, как сделать код лучше, написать его более лаконичнее и эффективнее.
Что мне понравилось, так это проверка заданий своих же одногруппников. Мне было очень интересно посмотреть на код других людей, разобраться что они хотели написать и дать пару советов по улучшению (если это требовалось). Запомнился момент, когда открыв код одного одногруппника, я удивился его простоте и эффективности, как говорится намотал себе на ус. Считаю такой подход (проверки заданий с кем учишься) отличной идеей, она окончательно и бесповоротно закрепит пройденную тему и паззл в голове сложится как надо.
Курс был рассчитан на 16 дней (4 блока по 4 дня на выполнения). Возможно тем, кто знакомится со всем этим с полного нуля, этого будет с запасом (ознакомится с темой, погуглить и почитать что нужно и неспеша выполнить). Но мне, как уже знакомому со всеми этими топиками - это дело заняло на 4 вечера по 4-5 часов с перерывами.
В конце курса я сдал мини тест на 20 вопросов по основам программирования и ограниченным временем в 15 минут.
В общем и целом мне очень даже зашло. В моменты решения задач я испытывал то забытое чувство эйфории, когда радуешься, как маленький, решенной интересной задаче. А в конце еще и сертификат дали :) мелочь, но приятно.
Итоги (субъективно): Прошёл курсы с большим удовольствием, получил много положительных эмоций (то чувство, когда после мозгового штурма задачка поддаётся тебе и ты на 7 небе от счастья), было интересно познакомится с новым для себя языком. Очень понравилось проверять других, мозг тут работает сильнее, чем когда пишешь сам.
Ну и немного списочков :)
Минусы:
- В самом начале было немного скучно и не особо интересно.
- Пару тем пробегались уж слишком быстро (благо я их знал).
- Заметил 1-2 некорректных вопроса в итоговом тесте.
Плюсы:
- Повторение - мать учения.
- Интересная подача материала.
- Оптимальные по сложности задачи.
- Возможность проверять чужие работы.
- Система рейтинга студентов (видно свой прогресс на фоне других).
- JavaScript (хоть потрогал его).
- Решая интересные задачи, получал только положительные эмоции.
- Мозг сказал "спасибо" за новую информацию.