Senior Junior. Курсы от программистов для программистов
Сделали свою платформу курсов для программистов — с актуальной теорией и множеством практики. Сейчас доступны Python и Rust.
6К открытий9К показов
Признавайтесь, кто ведет секретный бэклог фреймворков и языков, в которых бы разобраться, но никак не доходят руки? Изучение нового кажется интересной идеей, но ровно до того момента, пока этим не займешься. То времени не хватает, то мотивации.
Какие вообще есть варианты?
- Курсы из разряда «%lang_name% с нуля». Имя им легион. Но многие ли из них ориентированы на разработчиков, а не вайтишников? Снова слушать про класс
Employer
и отличие циклаfor
отwhile
как-то непродуктивно. - Книги. Серьезные, профессиональные книги. Проблема не в том, что они толстые и скучные. Просто нужно обладать воистину железной силой воли, чтобы не только дочитать до конца, но и прорешать задачи. Отдельный вопрос, как убедиться, что закодил решение без багов.
- Документация и, опционально, заныривание в исходники. Отличный подход, хоть и не самый эффективный. Жаль, он не дает представления о распространенных в сообществе лучших практиках, о нюансах, на которые наталкиваешься в промышленной разработке.
Итак, однажды вечером собрались четыре разработчика и задались вопросом: как в идеале должна выглядеть площадка для изучения новых языков и технологий? Сошлись на следующем:
- Самое важное — это практика. Ее нужно много. Но маленькими порциями. Пусть теория чередуется с емкими задачами в online IDE на этой же странице.
- Задачи должны быть разноплановыми. Писать код. Рефакторить код. Анализировать, как отработает код. Все как в жизни.
- Концентрированная, свеженькая теория. Без лирических отступлений, опасных упрощений, академеческих дебрей. Прочитать и смочь ревьюить реквесты!
- Курсы должны быть опенсорсными. Чтобы любой желающий мог сообщить об ошибке, предложить реквест с исправлением, заменить скучную задачу на более жизненную. И даже опубликовать собственный курс!
…Так и родилось описание проекта Senior Junior, который мы в свободное время пилим почти полтора года. Эхееей, на прошлой неделе мы выкатили альфа-версию!
Что из себя представляет Senior Junior?
Senior Junior — это площадка с опенсорсными курсами для разработчиков. Повторю, для разработчиков. Вайтишники, осторожно! У нас нет сертификатов, гарантий трудоустройства и лозунгов «освойте с нуля». Зато у нас есть актуальная теория в связке с непрерывной практикой в online IDE.
Тексты курсов и задачи выложены на гитхаб. На данный момент мы почти дописали курс по Python и приступили к курсу по Rust.
Курсы можно проходить на сайте и в Telegram-боте. Между ними легко синхронизировать прогресс! А что, очень удобно: дома начал главу на сайте с десктопа, продолжил уже в метро из бота.
Как устроен проект
Мы публикуем главы курсов в формате md. Тексты размечаем через markdown-it-attrs.
На фронтенде md рендерится в HTML с помощью библиотеки markdown-it. В Telegram-боте форматированный текст подготавливает самописный парсер. CodeMirror используется для интегрирования online IDE в веб-страницу.
Бэк выглядит примерно так:
На данный момент у нас есть:
- 27 глав по Python и 2 главы по Rust. 160 задач. Все они в открытом доступе.
- Площадка senjun.ru и Telegram-бот для прохождения курсов. Согласно принципу «подчеркивай достоинства, скрывай недостатки» все исходники пока надежно спрятаны.
- 4 разработчика, вложившихся в проект и готовых его развивать: Аня Беккер, Дима Шипилов, Володя Хацкевич и Оля Хлопкова.
О настоящем и будущем
Позади полтора года работы. За это время мы запилили бэкенд и клиент-сайд, выкатились на прод и пережили пару итераций тестирования, сбора фидбэка и фиксов.
За нашими спинами не стоят многомиллионные бюджеты корпораций. И это восхитительно. Потому что корпоративные рамки, требования и бизнес-цели нас не сковывают. Не ждите от нас навязчивых фичей, которые бесят аудиторию, зато помогают менеджеру закрыть KPI. Вместо пуш-уведомлений и автоматических подписок мы с удовольствием добавим фичи, которые будут полезны пользователям.
Не скромничайте, выходите на связь:
- Оставляйте фидбэк. Форма для заполнения есть в конце каждой главы курсов senjun.ru.
- Добавляйтесь в группу в Telegram.
- Заводите баг-репорты, открывайте пул-реквесты на GitHub.
Какие у нас планы?
Допишем главы по Python и Rust. Параллельно будем добавлять новые курсы. Golang, линуксовый shell script, Kotlin? C++ за 21 год, почему бы и нет? Carbon, как только появится первый релиз языка? А как насчет узкоспециализированных тем вроде теории компиляторов?
Итак, кто что заказывает?
6К открытий9К показов