Go легче учить на реальных задачах, но придумать задачу порой сложнее, чем решить. Собрали идеи по уровням, каждую можно закрыть за вечер.
Для старта
• Утилита командной строки. Го собирается в один бинарник, раздавать удобно.
• Поиск дубликатов файлов по хешу, свой аналог
grep, конвертер csv в json. Освоите флаги, чтение из потока и работу с файлами.Конкурентность
• Чекер доступности сайтов опрашивает адреса параллельно, десять штук проверяются за время самого медленного ответа.
• Пул воркеров покажет, зачем каналы и как ограничивать нагрузку.
• Кэш с временем жизни объяснит, почему доступ к карте без блокировки ломает программу.
Сеть и сервисы
• Сокращатель ссылок закроет тему HTTP сервиса и роутинга.
• Прокси научит перехватывать трафик.
• Телеграм бот даст практику с внешним API и вебхуками.
Ближе к продакшену
• База ключ значение с журналом на диске покажет как организовать долговечность данных.
• Rate limiter познакомит с токен бакетом.
• Сборщик метрик научит работать с системными вызовами.
Берите задачу, которая пригодится вам самим. Начните с утилиты и усложняйте.
💬 Делитесь своими идеями для проектов
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека Go-разработчика
#GoTalk