Программирование во многом связано с вашей способностью придумывать новые и интересные идеи. Но иногда из-за большого количества времени, потраченного на решение общих проблем, мы забываем о креативности. Для того, чтобы помочь программистам развивать свои навыки и дать возможность использовать свои творческие способности, существуют сайты, на которых размещаются интересные задачи, пишет tproger.ru.
Предлагаемые программистам задачи имеют большое значение для:
- изучения новых подходов;
- получения опыта в решении критических проблем;
- поддержания остроты ума и сосредоточенности.
В статье представлены самые интересные и популярные сайты, которые помогут вам не только улучшить навыки, но и, возможно, найти хорошую работу.
[topcoder]
Вы получаете возможность зарабатывать реальные деньги. Сайт поддерживается сообществом почти в миллион кодеров, и среди задач, с которыми вы можете столкнуться, есть много сложных. Некоторые энтузиасты могут найти [topcoder] довольно трудным.
Вы можете принимать участие в ежедневных и еженедельных соревнованиях, которые крайне сложны и требуют хороших интеллектуальных навыков для решения поставленных задач. Это стоит затраченных времени и усилий, так как все ваши успехи в конце дня отражаются в вашем резюме.
HackerEarth
HackerEarth работает, как SaaS приложение, позволяющее сделать автоматическую оценку технических и логических навыков кандидатов. Он также помогает компаниям в поиске талантов, выступая в качестве сообщества разработчиков и места отбора лучших из лучших.
На сайте часто появляются новые задания, и вы можете записаться на соревнование за несколько недель, чтобы подготовиться и заранее знать, когда начнется соревнование и с чем вам придется иметь дело. Как и на topcoder, на этом сайте размещаются продуманные задачи, решение которых может впоследствии пригодится в вашей карьере.
Coderbyte
Coderbyte — проект, финансируемый Kickstarter и ориентированный на программистов любого уровня.
Сайт был создан в 2012 году Дэниэлом Боровски (Daniel Borowski) и с тех пор превратился в самостоятельное сообщество программистов, которые любят в свободное время решать задачи.
Вы также можете задавать вопросы на форуме, если чего-то не понимаете. Сообщество активно, и вы непременно получите ответ.
Project Euler
Сообщество Project Euler насчитывает несколько сотен тысяч пользователей с момента первоначального запуска десять лет назад. Каждую неделю появляется новая задача, при этом на сайте есть уже более 450.
Для решения задач вам придется использовать навыки критического мышления. Цель такого подхода — помочь вам повысить мастерство и узнать больше о языке, который вы используете.
Daily Programmer
Если вы хотите узнать больше о программировании и принятии решений, то сабреддит Reddit’s Daily Programmer будет крайне полезен для вас. Каждую неделю появляется три новых задачи, к тому же на сайте уже есть несколько сотен.
Каждое предлагаемое вами решение рассматривается членами сообщества, так что вы получите фидбек по вашему подходу.
Codility Train
Вы получите несколько заготовленных и продуманных задач, решение которых вы можете предоставить на различных языках программирования. Задачи сортируются в соответствии со сложностью. В каждой дано подробное объяснение о том, что должна выдать программа, а также дается лимит времени, отведенного на решение.
SPOJ
Sphere Online Judge — это сообщество, в котором размещено несколько тысяч задач по программированию, которые вы можете решать целый день. SPOJ поддерживает почти все языки программирования. Помимо этого, есть форум, на котором большое сообщество программистов готово помочь вам.
CodeChef
CodeChef был создан Directi с целью объединить сообщество разработчиков и обеспечить платформу для практики, конкуренции и улучшения навыков. На сайте размещен большой набор задач, а также можно получить доступ к исходным кодам решений, созданных другими участниками сообщества.
Задачи разбиты на несколько категорий сложности, а также у сайта есть большое сообщество программистов.
CodeEval
Вы можете присоединиться к CodeEval в качестве разработчика, который хочет показать свои навыки программирования работодателям и коллегам. Вы можете принять участие в соревнованиях по нескольким направлениям, целью которых является создание продукта/приложения — и получить денежные призы. Кроме того, вы получаете доступ к задачам по программированию, которые могут быть решены и добавлены в ваше резюме, чтобы в дальнейшем произвести хорошее первое впечатление на ваших потенциальных работодателей.
HackerRank
На HackerRank есть раздел задач, связанных с искусственным интеллектом, что дает опытным программистам возможность применить свои навыки в столь прогрессивной области знаний. Сайт работает при поддержке таких компаний, как Y Combinator, SVAngel и многих других.
Talentbuddy
Talentbuddy является дружелюбным сайтом, где вы можете применить свои навыки в принятии решений. Задачи представлены в форме интервью, в котором вам нужно выбрать правильный ответ из нескольких вариантов. Возможно, социальный аспект сайта немного раздражает, но, в целом, на нем размещены действительно сложные задачи.
Codewars
Codewars — архив с задачами для программистов. Концепция проста: выбираете понравившуюся задачу, решаете и получаете очки опыта, если ваша функция или алгоритм пройдет тесты. Так же вы можете просмотреть решения других участников.
Сами задачи достаточно интересные, и, что немаловажно, дают уникальный опыт.
Rosalind
На Rosalind размещены задачи, касающиеся биоинформатики, которые вы можете решать с комфортной для вас скоростью.
FightCode
На FightCode вам сначала нужно запрограммировать своих собственных роботов, а затем использовать их для борьбы с роботами других членов сообщества. Подход типа «запрограммируй–и–играй» (code-and-play) полезен для тех, кто не знаком с таким методом, или, возможно, просто хочет повеселиться.
Релоцировались? Теперь вы можете комментировать без верификации аккаунта.