Рубрики
Обучение Онлайн курсы

Лидерборд на курсах Степика

А вы знали, что на Степике кроме общего рейтинга знаний/репутации есть еще отдельные рейтинги учащихся для каждого курса? С оговорками, но тем не менее. Если не знали — сейчас узнаете (хотя ценность сего знания сомнительна).

Пример такого внутрикурсового рейтинга можно увидеть, например, на курсе «Поколение Python» по ссылке:

В меню курса слева можно увидеть отдельный пункт «Лидерборд».

Если обратиться к официальной справке Степика, то упоминание лидерборда на курсах можно встретить как минимум здесь и здесь (за информацию спасибо Илье — представителю Степика в дискорде).

В справке Степика указано, что

Лидерборд доступен для платных и Enterprise-курсов (только для клиентов, у которых еще действует тариф Enterprise (отменен с мая 2023 г.))

и использовался по запросу для курсов, которые являются олимпиадами или соревнования. Какое к ним имеет отношение «Поколение» я не знаю, не спрашивайте.

Но фишка в том, что сам по себе такой лидерборд существует для каждого курса. Для того, чтобы убедиться в этом, достаточно добавить в адресную строку слово scoreboard к адресу курса. Должно получится что-то вроде такого:
https://stepik.org/course/127/scoreboard

И получим вот такую картину:

Мда… списка учащихся нет. Зато есть «Ваше место в рейтинге» и «Ваши баллы». Занятно, вот только практической пользы от этого нет. Место в этом рейтинге зависит от количества набранных баллов на курсе. При этом учащиеся с одинаковым количеством баллов делят одно место. То есть, если на курсе всего 30 баллов, как на примере выше, то выполнив все задания и заработав все эти баллы у вас будет первое место. Впрочем — как и у всех остальных, кто прошел курс и выполнил все задания. А если вы прошли курс не полностью, то будете занимать какое-то место в зависимости от того, сколько набрали баллов и сколько всего учащихся на курсе.

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

Рубрики
Обучение Онлайн курсы

Новогодний курс на Степике (декабрь 2023)

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

Осенью 2020 года, после череды созданных на Степике курсов, у меня появилась мысль о создании особого, новогоднего, курса. Праздничного, доброго и веселого. Который бы дарил хорошее новогоднее настроение. Идей о чем может быть такой курс было много. У меня так всегда — идей много, но проблемы с их дозреванием и превращением в полноценные курсы. По разным причинам. Так и тогда. Появилось несколько заготовок. Один курс был наполовину сделан, когда я передумал и начал делать другой. Наполовину его сделал, но решил радикально сменить концепцию. В итоге переделал и он превратился в курс Крылатые выражения — великие и не очень. Кратко о процессе его создания и о том, что получилось в итоге, я уже писал на сайте — Курс, который взлетел.

Каждый раз в последующие годы я хотел сделать что-то подобное. Так было в декабре 21 года, в декабре 22 года. Но как-то не складывалось. Не хотели созревать идеи и превращаться в полноценные курсы. Оставались только заготовки.

Наконец, наступил декабрь 2023 года. Я снова захотел сделать предновогодний курс. Как обычно у меня успело смениться три идеи. Две из них, я надеюсь, в следующем году превратятся в полноценные курсы, уже не праздничные, а самые обычные. А вот самая первая идея в итоге дозрела и я смог это сделать. Создать еще один предновогодний курс — Языки программирования — великие и не очень.

Рубрики
Обучение Онлайн курсы

Мои курсы о программировании на Степике

Как же я пришел к созданию курсов по программированию на Степике? Особенно учитывая, что сам я не являюсь профессиональным программистом (хотя ничего не мешает создавать, в том числе платные, курсы по программированию людям, которые не являются преподавателями).

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

Поэтому неудивительно, что со временем мне захотелось копнуть программирование поглубже. О том, как это было написано здесь.

В процессе обучения я попал на Степик в начале 2017 года. Очень удобный формат обучения — теория с обилием практики — позволил увлечься и начать активно расти (и не только в программировании). Тогда еще курсы там были преимущественно бесплатные, не то, что сейчас.

Летом 2019 года несколько человек, включая меня, создали курс о программировании на языке Go. А осенью я уже и сам начал пробовать создавать разные развлекательные курсы. Об этом здесь.

И только осенью 2020 года я решил, что достиг той точки, когда уже могу сделать что-то бОльшее. Вспомнилось, как я начинал заниматься написанием учебных материалов для модмейкинга игры TES IV Oblivion, создавая переводы туториалов с английского языка. А незадолго до того я проходил какие-то курсы по программированию на англоязычном сайте Сололерн (я тогда много где их проходил). Подумалось, а почему бы не перевести какой-то из тамошних курсов на русский? Сделать перевод, адаптировать практику под Степик. Курсы изначально были бесплатные, так что мне показалось нормальным взять их в порядке fairuse (это важно в контексте значительно более поздних событий). Тем более, что я тоже не собирался их делать платными.

Таким образом, осенью 2020 были переведены и адаптированы курсы PHP — первое знакомство и Ruby — первое знакомство.

Название в стиле «первое знакомство» я выбрал потому, что курсы на Сололерн достаточно простые и поверхностные. В этом их и плюс и минус. Плюс — их легко проходить. Минус — они все-таки сильно поверхностны. Но для меня это было в самый раз. Я сам хотел познакомиться с этими языками программирования и хотел познакомить с ними других. Поэтому — «первое знакомство».

Позднее, летом 2021 года, я перевел еще и курс по Go, создав Go (Golang) — первое знакомство.

Осенью 2022 года я сделал перевод курса по PHP еще и на украинский язык — PHP — перше знайомство (українською). По многим причинам.

А под самый новый 2023 год я частично запустил уже полностью авторский курс PHP — шпаргалка (cheatsheet), который, из-за определенных обстоятельств, так и оказался до сих пор недоделанным (но он однозначно будет доделан).

Потому что весной 2023 года Степик заблокировал три первых курса «первое знакомство». Подробнее об этой истории можно узнать здесь.

Из плохого — это заставило меня потратить полгода времени совсем не на то, на что планировалось. Из хорошего — я полностью переделываю курсы (остался Ruby, над которым работаю прямо сейчас). И они теперь становятся по настоящему моими. Это дало мне дополнительный опыт и сделало курсы еще лучше. Дало возможность поправить некоторые изначальные промахи, добавить полезный материал и больше практики и задач, учесть пожелания учащихся.

Так что я расту и развиваюсь, несмотря ни на что. А это значит, что раз учусь я, то будут и новые курсы, где я буду делиться тем, чему научился. И желающие смогут на них научиться чему-то полезному.

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

Мне показалось, что моя история вполне подходит под такой формат. Все-таки почти семь лет я буквально живу Степиком, создал более 20 курсов, помог многим людям — разве это не успех?

К тому же буквально на этой неделе я достиг еще одной вехи на своем пути — я стал первым человеком на Степике, который одновременно есть в обоих топах: и в топ-20 по знаниям и в топ-20 по репутации. Первый говорит о моем стремлении к знаниям. Второй — о том, что мои курсы важны и нужны.

Двигаться вперед, помогать другим — Степик дал мне возможность для этого, а я ею воспользовался. Иногда я могу его покритиковать, однако он уже стал для меня родным. С Днем Рождения, Степик!

Рубрики
Обучение Онлайн курсы

О комментариях и уведомлениях на Степике

Практически каждое мое утро начинается со Степика. Я просматриваю уведомления и решаю какие-нибудь задачи.

Уведомлений может быть от нескольких штук (реже) до полусотни (чаще, хотя обычно что-то среднее — 2-3 десятка). И это не за сутки. Это только за ночь.

Даже просто просмотреть их — это какие-то затраты времени. Часть уведомлений — это лайки уроков/комментариев, часть — это публикация решений. Такие я просто просматриваю и отмечаю прочитанным. Далее идут вопросы связанные с какими-то проблемами с решением задач или более общими вопросами о теории.

Вопросы связанные с задачами могут быть простыми, когда я захожу в решения и сразу вижу в чем проблема. Быстро и коротко отвечаю. А могут быть сложными, когда человек либо нагородил что-то монструозное, либо наоборот, вроде бы все сделал правильно и совсем непонятно, а что же не так? В такой ситуации я беру проблемное решение и сразу запускаю его на выполнение. Пробую какие-то очевидные и крайние значения подать на вход. Если вижу проблему, в ответе пишу проблемные данные и, возможно, пояснения, в чем именно заключается проблема.

Если же сходу подобрать проблемные данные не получается, уже иду в тесты и смотрю, на каком запоролся учащийся со своим решением. Пробую его и смотрю на результаты. Разбираюсь в чем же загвоздка и далее аналогично предыдущему варианту — пишу в ответе входные данные аналогичные тесту (но никогда не сам тест) и описание проблемы, если оно не очевидно.

Иногда, в особо сложных случаях, приходится долго заниматься отладкой, если ошибка совсем-совсем не очевидна. И иногда они бывают непонятны или загадочны. Из забавного — когда люди умудряются запихнуть в строку на кириллице какой-то символ латиницы или наоборот. Визуально кажется, что все правильно, а на самом деле — нет. Но к такому я уже привык. А вот учащиеся — нет.

Что мне дают ответы на комментарии? Ведь их много и иногда на них приходится тратить довольно много времени. Казалось бы — зачем это мне нужно?

На это есть несколько причин:

1) «мы отвечаем за тех, кого приручили». Уж если я создал курс, то было бы неплохо его поддерживать (по возможности) и помогать учащимся на нем;

2) для меня самого это очень хорошая текущая практика (ага, типа «атомных привычек») и возможность периодически узнавать что-то новое. Ведь мне приходится разгребать много самого разного кода. Да, чаще всего это какие-то банальности, но иногда бывают поистине загадочные и интересные случаи (например, вот такой). А я всегда стараюсь вникать в интересные вопросы, разбираться в них и адекватно отвечать. При этом если это связано с кодом, я всегда его проверяю и перепроверяю. То есть, если я привел в своем ответе фрагмент кода или указал как конкретно работает код — в 99,99% он точно работает именно так.

Хотя я знаю далеко не все, не являюсь программистом и вообще — многому только учусь. Поэтому, увы, иногда я могу и не найти ответа на вопрос. Такое бывает редко, но бывает. Благо, часто находятся другие учащиеся, более продвинутые, которые могут отлично ответить на тот или иной вопрос другого учащегося.

Еще хотелось бы пару слов сказать про удаление комментариев. Обычно я удаляю комментарии трех видов:

1) явные ответы на вопросы и задачи. Такие я удаляю сразу. Если ответ это лишь часть сообщения, стараюсь просто его отредактировать, заменив удаленную часть тремя звездочками, вот так — ***;

2) маты и явные оскорбления. Но такие, слава Богу, бывают крайне редко;

3) вопрос, связанный с заданием, типа — помогите, не знаю как решить или что в таком-то тесте? То есть не имеющий особой смысловой нагрузки для окружающих и если при этом, когда я добрался до комментария, оказалось, что человек задачу уже решил. И забыл этот комментарий за собой удалить.

В общем-то и все. Других причин для удаления комментариев я вспомнить сейчас не могу.

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

При этом я могу в комментариях и поспорить, и поругаться. А могу признать какие-то свои ошибки/поправить что-то в теории или коде. Я всегда благодарен тем, кто находит и адекватно сообщает о найденных ошибках или опечатках.

И да, отвечаю я чаще всего так, как спрашивают. То есть, если вы решили на меня «наехать» в комментарии, то не волнуйтесь, я отвечу ровно так же. Без явных грубостей, но с изрядной долей сарказма, юмора и может быть даже издевки. Но по факту. Извините, но если человек дурак и упорно пытается это доказать и показать всем своим видом, то я не считаю зазорным ему об этом прямо сказать.

В общем вот так это все работает.

Рубрики
Обучение Онлайн курсы

Курсы по закреплению лексики китайского языка

В процессе запуска мой второй курс по закреплению лексики китайского языка Лексика из HSK 2 (китайский язык) на Степике. В этом контексте хочется вспомнить, с чего вообще все это начиналось и как я дошел до жизни такой курсов таких.

Увлечение востоком

Еще со времен моих занятий единоборствами мне был интересен Восток. Его культура, философия, история.

При изучении всяких там каратэ, айкидо, ушу и прочих направлений восточных боевых искусств так или иначе приходилось сталкиваться с обилием местной терминологии. Волей неволей нужно было хотя бы немного вникать в язык. К тому же привлекала и экзотика — иероглифы.

В итоге, в какой-то момент (уже когда занятия единоборствами остались в прошлом) мне захотелось поближе познакомиться с японским языком. Были скачаны и в той или иной мере прочитаны всякие там «Пути бесхвостой птички» и «Кандзявые эссе». Потом я пришел на Степик и там тоже были кое какие курсы по японскому. В то же время я попал и на Дуолинго. И там тоже был японский. И я понемногу наслаждался страдал, копошась и пытаясь что-то учить.

Здесь ярко проявилась главная проблема при изучении чего-то нового. Если ты учишь это что-то без какой-либо цели, без необходимости применять получаемые знания где-то на практике — это все путь в никуда. Сегодня ты учишь, а завтра забываешь. Мозг не дурак, он не хочет помнить то, что считает не важным. То, что ему кажется не нужным. А если ты учишь японский и нигде и никак его не используешь и не применяешь — значит он тебе не нужен и его можно со спокойной совестью забыть.

Рубрики
Обучение Онлайн курсы

Что для меня значит Stepik

Тут Степик проводит конкурс и я подумал, почему бы не поучаствовать? Сначала не хотел, но в итоге решил, почему бы не поразмышлять, а что для меня значит — stepik? Хотя я уже писал о том, как пришел на эту площадку для онлайн обучения и как начал создавать курсы, в этот раз речь пойдет немного о другом.

Пять лет назад я совершенно случайно попал на Степик. Искал я тогда курсы по компьютерной безопасности, а их что тогда, что сейчас — днем с огнем не сыщешь. Но все-таки один нашелся. Как раз на Степике.

Я его быстро прошел. Потом сел за курс по питону, дальше больше. И как-то втянулся.

И вот, спустя почти пять лет, что я могу сказать, оглянувшись назад? Что произошло за это время, как изменился я и мое окружение и какую роль в этом сыграл сайт с черной буковкой S на белом фоне?

Всю жизнь я учился. Это началось еще с детства, когда в 6 лет, я прошел всю программу первого класса с девочкой из соседней квартиры, которая была на год меня старше. Она пошла в школу, а я еще нет. Но так как мы проводили очень много времени вместе, то и уроки мы делали тоже вместе. Она — потому что надо было, а почему их делал я — увы, не помню. Но в первый класс я пошел уже имея за плечами почти всю программу этого самого первого класса. Гением я от этого не стал, но жажда к знаниям, возможно, уже тогда пустила во мне свои корни.

Рубрики
Обучение Онлайн курсы

Python-скрипт для парсинга курсов Степика (Stepik)

Несколько лет назад, когда каталог Степика был совсем другим, да и поиск не сильно радовал, задался я целью найти все курсы, которые есть на этой площадке. Для чего набросал на коленке парсер.

Не мудрствуя лукаво, я определил два важных критерия для автоматизации процесса. Первый — название курса. Если названия нет, значит и курса по адресу либо нет, либо доступ к нему закрыт. Второй — количество учащихся. Чтобы можно было отсеять разные курсы-пустышки.

Парсер написан на python и выложен на github`е. Там еще есть что доделать и переделать. Однако им можно пользоваться. Думаю особо полезен он может быть для тех, кто активно учится на Степике.

Так или иначе, скачать (или посмотреть ужасный исходный код) его можно здесь:
https://github.com/IgorLutiy/stepik_title_parser

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

Рубрики
Обучение Онлайн курсы

Анализ безопасности веб-проектов

Где-то и когда-то я уже писал о том, как попал на Степик в начале 2017 года. Однако в той статье я не упомянул, что именно я тогда искал и почему оказался на Степике. Который еще только начинал набирать обороты.

А искал я на тот момент материалы по инфобезу. В частности пытался найти адекватные онлайн-курсы по этой теме. Но они не находились (скажу больше, их и сейчас единицы, по крайней мере бесплатных и толковых).

Поэтому я читал статьи, листал «Хакер», находил сайты с CTF и пробовал хватать с миру по нитке с переменным успехом. Но нужно было что-то обобщающее и фундаментальное. Какая-то основа. Ничего подобного мне в руки так и не попало, но зато я нашел курс Анализ безопасности веб-проектов

И это был (и есть) отличный курс. Да, там не разжевывали мелочи, но мне это уже не настолько было нужно. Зато там была пробежка по разным темам, интересные и полезные короткие видео, а главное — для закрепления всего этого были отличные практические задачи. При этом во многом заметно интереснее большинства стандартных CTF`ов.

Многие задачи были достаточно сложные, приходилось сидеть, думать, копаться в дополнительных материалах, детально изучать все комментарии. Пригодилась и виртуальная машина с Линуксом. Но было безумно интересно. Жаль, что ничего подобного я после так и не нашел. Так что курс по своему уникальный. В нагрузку, в конце еще можно посмотреть на полезные ссылки по теме в комментариях учащихся.

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

Рубрики
Обучение Онлайн курсы

Китайский язык. С чего начать на Степике?

Итак. Предположим, что вы настолько же безумны как и я, и решили изучить китайский язык. Ну или хотя бы попробовать изучить. За спрос не дадут в нос.

При всем этом вы еще и активный учащийся платформы Stepik. В таком случае мне есть что вам сказать. Об этом и будет данная небольшая заметка.

На Степике есть где-то около 5 курсов по изучению китайского языка для начинающих (естественно, я пробовал все — хотя не все успешно). Но среди них один выделяется особо. Мне он понравился больше других. Понравился своей простотой, качеством и тем, что реально дал заметный толчок в обучении. Это курс КИТАЙСКИЙ ЯЗЫК. Уровень 1.

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

Начну наверное с самого главного — с благодарности автору курса. Проделана большая работа и это отличный курс для начинающих.

И немного подробнее.

На мой взгляд это лучший курс для начинающих изучать китайский на Степике. Всё разложено по полочкам, материал дается постепенно и он несложный. То есть вы не застопоритесь в каком-то архи сложном месте и не бросите курс (скорее всего). В отличии от некоторых других (тоже хороших, но…).

В начале каждого урока дается подробная информация о иероглифах, что позволяет лучше их запоминать. И вообще, я после этого курса наконец-то смог сдвинуться с мертвой точки в изучении китайского на Дуолинго. Лучше стал воспринимать произношение, стало более понятно чтение пиньиня. В принципе появилось какое-то элементарное понимание языка, чего раньше не было.

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

Еще раз спасибо автору за отличный курс!

При этом у автора есть продолжение, КИТАЙСКИЙ ЯЗЫК. Уровень 2. которое несколько сложнее (и я его еще не прошел), но это и понятно. Язык в принципе не самый простой. Однако при наличии подобных курсов — изучение даже сложных вещей может приносить истинное удовольствие. Как говорится — много маленьких шагов приведет нас к одной большой цели.

Учите китайский, учите на Степике и учите на курсе, про который я рассказал выше. Это круто и интересно.

За сим — 再见

Рубрики
Обучение Онлайн курсы

Курс, который взлетел

Небольшая история о курсе, который взлетел. Историю которую надо было рассказать еще перед новым годом, но с другой стороны — тогда это была бы совсем иная история.

А началось все с того, что в конце прошлого года я решил — почему бы не сделать небольшой предновогодний курс? Праздничный, одновременно веселый и полезный, с душой так сказать. Год близился к своему логичному завершению, настроение было хорошее и вот хотелось что-то такое сделать.

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