Привет, Хабр! Сразу хочу сказать, что в первую очередь задачи я решал для себя. Хочу поделиться моим опытом взаимодействия с этой платформой и насколько мне это помогло. Каждый по прочтению этой статьи решит для себя сам, стоит начинать или же нет. А началось мое знакомство в далеком январе 2022 года. За все время я решил почти 200-ти задач и имею 4kyu. Мне кажется главное, что стоит понять, что сайт делится на две категории - базовый и продвинутый. Большинство задач на 6, 7, 8 kyu - базовые. Всё, что меньше - продвинутый.

Разделил сайт я не случайно. Важно понимать, что до продвинутого уровня без набитых шишек - не пройти. Будь ты сеньор, который веками пишет код, или начинающий программист. Они построены не столько на логическое мышление и знание языка программирования, сколько на алгоритмы и математику. Не все, но большинство задач которые я встречал были именно такими. И при общение с коллегами иногда спрашивал какого уровня задачи они решают, если пользуются данной платформой. Не буду врать, встречал и тех кто довольно далеко продвинулся. Но большинство опытные как мне казалось, в своем деле разработчики не могли решить и задачу с 6kyu.

А в чем проблема? В первую очередь, в довольно продвинутых фреймворках (напр., Django, Spring) все необходимые алгоритмы уже реализованы «под капотом». И тебе приходится работать не на уровне, как создать мотор для машины, а скорее как его поставить. Из-за этого люди, которые не стремятся попасть в крупные компании. В целом очень поверхностно знакомы с этим. От чего сложность решения задач растет.

Важную часть с тем, что если у вас что-то будет не получаться мы разобрали. Надеюсь это сохранит вам нервы, и вы не станете сомневаться в своих технических знаниях. Ибо возможно, так глубоко заходить в алгоритмы вам и не понадобится. Поэтому я хочу разобрать именно свой опыт. Помогла мне данная платформа, или трата времени в пустую.

Новичкам

Начнем с базовых на мой взгляд вещей. Мне кажется, что любой программист должен потратить время и решать задачи 7, 8 kyu. Особенно на раннем этапе обучения. Ибо там в большинстве задачи - легкие. Связанные с синтаксисом языка, его особенностями. К тому же вы после решения задачи, можете посмотреть, как ее решили другие люди. Что тоже прибавляет знаний. На начальных этапах с помощью этого я познакомился с некоторыми особенностями своего языка. Но важно понимать, фанатизм к хорошей практике не приведет. Некоторые короткие решения - более сложные на прочтения и понимания кода. Если в этом случае, кажется что практика рабочая. То в довольно большом проекте, такая практика может стать проблемой при чтение.

После того, как вы начнете решать каждую задачу без особых проблем. Ознакомившись с различными фичами вашего языка. Не торопитесь решать задачи сложнее, как по мне лучше углубиться в изучения фреймворка и решению реальных задач. Понимание на таком уровне даст вам базовые представления, но помимо этого есть кучу конструкций, которые не затрагиваются. Не стоит превращать это в фанатизм и пытаться решать задачи 3, 4, 5 kyu. На данном этапе все же рекомендую углубиться в набивание синяков на пет-проектах.

Среднему

На самом деле. Если у вас нет задачи попасть в большую компанию. Кроме, как разминки, после отпуска, когда вы немного подзабыли и нужно освежить память быстро. Сильной потребности в использование такого рода сайта - не вижу. Исключительно, если хотите подтянуть знания алгоритмов на практике, и намного глубже ознакомиться в понимание вашего языка программирования. Но тут уже надо решать задачи хотя бы уровня 5kyu. Насколько мне рассказывали, такого рода задачи очень помогают при собеседованиях в крупные компании.

Мой личный опыт

На раннем этапе, как я говорил - мне это сильно помогло, ибо в процессе обучения без должной практики, можно некоторый материал просто-напросто не запомнить. А за счет практики - шишки набиваются и хочешь не хочешь запомнишь. Вспоминается метафора с крапивой, пока не кольнет - не узнаешь.

Но говорить, то что всем это обязательно - не буду. Ибо аналогов хватает, к тому же не со всем честно по отношению к другим платформам, ибо такого же опыта для честной оценки - у меня нет. Я встречал точно так же людей, которые даже и не знакомы с такого рода платформами, но работают себе спокойно.

Важно понимать, что это лишь один из способов обучения. В какой-то момент, он может облегчить. Особенно на раннем этапе. Но возможно, что и не понадобится в целом вам такое глубокое понимание тех самых алгоритмов. Поэтому в конечном итоге, могу лишь порекомендовать попробовать. Для меня это в какой-то момент было эффективно, сейчас практически - нет.

Комментарии (0)


  1. swcasimiro Автор
    21.09.2025 01:13

    Делитесь обязательно своим опытом, будет очень интересно почитать! На правду не претендую, лишь мое мнение!


  1. totus
    21.09.2025 01:13

    Как по мне — отличный инструмент для «набивания руки» в новом (для себя) языке.

    Использовал его ранее достаточно регулярно с «неписаной целью» выполнять хотя бы по 3 задачи 3 раза в неделю.

    Когда начинал (естественно, с 8-7 kyu), казалось, что всё, что выше 5 — какая-то магия, но упорство и дисциплина/практика доказали обратное.

    https://www.codewars.com/users/arkhireyev


  1. vldmrmlkv
    21.09.2025 01:13

    Как разминка норм, но leetcode лучше - там есть наборы, подходящие для собеседований и всегда это ООП, на codewars задачи уровня 8 и 7 это ну слишком легко, просто разминка. Ещё такие сайты, когда начинаются сложные задачи, а не соревнование "напиши решение в одну строку", не проверяют знание более сложных конструкций ЯП, стандартной библиотеки и т.п., а начинается математика, хитрые условия в задаче, а это к ЯП уже никакого отношения не имеет.


  1. cesare
    21.09.2025 01:13

    Дошел до 1 дана и забросил. Задачи слишком объемные становятся, а знаний особо не прибавляют