Все просто: чтобы стать программистом — нужно научиться программировать. Без разницы, какую цель вы преследуете: успешно пройти интервью или выучить новый язык, — сайты из этой подборки вам помогут прокачаться. Перевод статьи Top Coding Challenge Websites of 2018 автора Trey Huffine.
На чем бы вы не кодили: Python, Ruby, JavaScript, Golang, TypeScript, или еще какой-то язык, вы найдете здесь ресурс под ваши потребности. Чтобы научиться программировать — нужно программировать.
1. Codewars
www.codewars.com
Сodewars программирование — это сплошной фан. Зарабатывайте очки, повышайте свой рейтинг, создавайте кланы. Автор статьи предлагает присоединиться к своему клану (вы можете посмотреть к какому в оригинале статьи). Я же, призываю вас присоединяться к клану HTML Academy, конечно (прим. переводчика). Ресурс предлагает огромную подборку задач на более чем 20 языках программирования. На codewars вы сможете обсудить задачи с другими игроками, а также посмотреть альтернативные решения.
2. HackerRank
www.hackerrank.com
Уровень сложности задач на HackerRank чуть выше, попадаются задания, выходящие за рамки базового программирования. Можно развиваться в нескольких областях, включая алгоритмы, математику, SQL, функциональное программирование, AI и многое другое. Также платформа предоставляет функционал для корпоративного программирования.
3. Coderbyte
coderbyte.com
Отлично подходит для подготовки к собеседованию. Более 200 вопросов на более чем 10 языках. Даны решения многих задач, также вы можете просматривать решения других пользователей. Кроме задач по программированию, ресурс также предлагает курсы по информатике и веб-разработке.
4. CodinGame
www.codingame.com
Это платформа для изучения программирования в игровой форме. Управляйте сценарием игры с помощью кода. Большой выбор языков, обучения по фану. В играх есть описание проблемы и тестовые примеры. Определенно стоит попробовать такой подход в обучении.
5. LeetCode
leetcode.com
Если вы ищете работу — это то, что нужно для того, чтобы прокачать необходимые навыки. Основное направление ресурса — подготовка к техническим интервью. Есть специалист, который оценивает правильность решения заданий. Также вы можете поучаствовать в некой имитации собеседования.
6. Topcoder
www.topcoder.com
Topcoder, вероятно, лучше подходит для продвинутой аудитории. Это один из первых сайтов, посвященных кодированию, который вводит концепцию ранжирования. Вы можете посоревноваться в решении задач с другими разработчиками за денежный приз, а также принять участие в конкурсе «Single Round Match».
7. Project Euler
projecteuler.net
Ветеран среди подобных платформ. Интерфейс, пожалуй, не самый утонченный, но зато там много задачек на разных языках. Большое внимание уделяется математическим задачам. Простой сайт, чтобы быстро начать практиковаться.
8. CodeFights
codefights.com
Много задачек + платформа для поиска работы/разработчиков. Кроме того, у них есть уникальная функция под названием «Company Bots», где разработчики состязаются с официальными ботами программирования от некоторых из самых больших игроков в IT сообщества.