Онлайн курс Продвинутая работа с ошибками в Go (Golang) от Stepik
Основная цель курса – сделать ваш код по работе с ошибками production ready.
Доступ к каждому последующему модулю открывается только после решения задач и тестов в текущем. Примеры из курса и заготовки для задач лежат в отдельном GitHub-репозитории. Для каждой задачи представлены юнит-тесты, которые она должна проходить – вам не придётся мучиться с вводом-выводом, как это бывает в задачах на других курсах.
Если вы новичок в Go, то точно укрепите свои знания и вдоволь насладитесь примерами боевого кода, которых вам скорее всего не хватает в данный момент. Но предупреждаем, что вероятно вы не сможете осилить все задачи курса.
Если вы сеньор-помидор и практикующий Go-разработчик, то лишний раз познакомитесь с лучшими практиками и узнаете, за что стоит бить по рукам своих коллег, а может даже и себя.
Часто уроки содержат авторские комментарии по смежным темам (таким как тестирование, concurrency, статический анализ кода и т.д.), а каждый модуль снабжён всеобъемлющим списком литературы.
Уровень у меня пока что не сильно продвинутый, как раз осваиваю Go. Местами мне было тяжело, приходилось обращаться к авторам за помощью напрямую, но они быстро направляли на верный путь.
В целом курс не только про ошибки, он также затрагивается кучу смежных тем: конкурентность, тесты, лучшие практики. Так как все это взаимосвязано, после прохождения я стала лучше понимать философию Go. Новичкам курс будет полезен, мне очень понравился, своих денег стоит. Все подробно и доходчиво расписано, в курсе много практических задач. Есть решения от авторов, которые можно сравнить со своим. Модуль «Работа с ошибками в конкурентном коде» оказался самым интересным по задачам, но до него еще надо дойти.
Также понравилось, что в конце каждого урока есть ссылки на дополнительную литературу, благодаря которой можно узнать много нужных вещей.
Предупреждаю, что сначала все-таки идет совсем тяжело, в первом модуле есть Си, а потом начинается Go, становится сильно интереснее.
В курсе куча отсылок к другим курсам авторов, которые еще не готовы.
Все курсы по Go, которые я видел, учат всему, что есть в языке и вокруг. Из-за обилия материала они в основном дают базовый уровень знания. Этот курс сосредоточен только на одной теме, поэтому содержит много полезных деталей, которые сложно найти где-то еще. Хотелось бы иметь его под рукой в виде бумажной книги. Авторы отвечают на комментарии к курсу, в том числе я получил подробное код-ревью на свое решение задачи.