Нужно больше практики.
Если вы хотите больше практических заданий и владеете английским (или хотя бы умеете гуглить перевод), то у меня для вас хорошая новость! Пару дней назад Кирилл подсказал неплохой сайт-тренажер-задачник. Я его опробовал, и теперь опишу свои мысли. Ах да, сервис называется codewars и наверняка кто-то из вас уже слышал о нем.
- Коротко о коудворс
- Что такое ката?
- Как выглядит ката?
- Альтернативные решения задачи
- Кланы
Коротко о коудворс
Для меня лично codewars стал местом, где можно попрактиковать технику написания кода + узнать чужие, более интересные техники. Сервис реализован в стиле «восточных единоборств». Сам сайт уже не просто сайт, а – додзё; задачки – ката ; вы – солдат, воин, а не просто студент-программист, а код-ревью – кумите , спарринг. Восточная тематика создает специфическую атмосферу – здесь хочется непрерывно развиваться и становиться искуссным мастером. Порадовала сегментация задачек-ката по сложности. В общем, заходи и развивайся, самурай!
Что такое ката?
Если по-простому, ката – это практическая задачка. Есть несколько уровней сложности: от 8 kyu до 1 kyu (возможно есть и другие, пока что мне не известные). Причем чем ниже кью, тем сложнее задача. Вот так выглядит страница с выбранной катой:

Верхний блок: Уровень сложности, название, статистика, выбор языка, «Приступить», «Пропустить». Нижний блок: Детали (условие задачи), Решения (открывается после того, как вы решите задачу), Форк каты, Обсуждения, Добавить в коллекцию (Избранное), кнопки расшаривания.
Как выглядит ката?
Ката выглядит вот так:

Слева – уровень сложности, название, статистика. Чуть ниже условия задачи и окошко вывода. Сверху справа можно выбрать язык, переключиться на дневной/ночной режим, режим редактора Vim или Emacs, полноэкранный режим. Ниже – окошко для написания решения, часть тестов (да-да, это не все тесты, их на самом деле больше).
Кстати, заметил только что, у меня на 12-дюймовом экране поползла верстка. И кнопки «Запустить Sample tests» и «Подтвердить решение» уплыли вниз за экран, и прокруткой их не достать =( Помогает небольшое сужение экрана по ширине.
Альтернативные решения задачи
Очень классно, что после прохождения каты можно увидеть решения других бойцов. Также интересна сортировка: Лучшая практика – рекомендуем использовать эти решения; креативность – красиво, интересно, но в продакшн лучше такое не писать; новые – новые решения вперед, старые – вначале старые решения. Т.е. сразу учимся и практичности, и креативности.

Кланы
При регистрации можно вступить в определенный клан. У нас он тоже есть — Hexlet. Для чего вступать в клан? Чтобы гордиться тем, что ты часть чего-то большего, а не просто одинокий самурай. Чтобы видеть прогресс других воинов в твоем клане и не отставать. Чтобы потом обсуждать решения ката с ребятами в Telegram-сообществе (чаще всего ники и там, и там одни и те же). А может чтобы посоревноваться и завоевать первое место в своем клане.

Регистрируйтесь на codewars, вступайте в клан Hexlet, практикуйтесь, развивайтесь, соревнуйтесь и становитесь мастерами, а возможно и сенсеями в будущем! Если вы знаете еще какие-то фишки codewars, напишите о них в комментариях.
P.S. Вообще ката, кумите и все остальное – это термины из карате-до, насколько я понял =)
Saved searches
Use saved searches to filter your results more quickly
Cancel Create saved search
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Stage 0. Модуль «Знакомство с Codewars» #444
dzmitry-varabei opened this issue Nov 18, 2021 · 10 comments
Stage 0. Модуль «Знакомство с Codewars» #444
dzmitry-varabei opened this issue Nov 18, 2021 · 10 comments
Comments
dzmitry-varabei commented Nov 18, 2021 •
Есть предложение добавить в stage#0 модуль «Знакомство с Codewars».
- знакомство с платформой
- типовые проблемы при решении задач
- как дебажить задачи,
- советы по решению задач
- лайв кодинг пары задач
- как сабмитнуть результат в RS APP
Нужен ли такой модуль в stage#0?
Были ли у вас какие-либо проблемы с codewars?
Буду рад любым вашим советам и комментариям тут
The text was updated successfully, but these errors were encountered:
Dairin-dei commented Nov 18, 2021
Лично мне бы такой модуль очень помог. Особенно про тесты и дебаг. Стримы у Жана интересные, но для меня часто очень сложные, хотя конкретно этот я не смотрела, к сожалению.
Contributor
Diluks93 commented Nov 18, 2021
Я считаю, что нужен:
- Многие новички сталкиваются с проблемой номер один это решить первую задачку для входа на площадку codewars.
- Стоит объяснить, что такое «kyu».
- Как распределены задачи по сложности.
- Что значит версия node или изучаем язык.
- Сталкивался с вопросами (касается применения # когда используем приватные методы) «почему эта штука (#) не работает, хоть в документации по java script написано, что должна?». В этом случае просто и банально объяснить, что каты могут уже автором не поддерживаться и использовать надо то, что было определено в ES6
- Дополнительно, считаю стоит сказать, что многие (не все конечно), не понимают требований задания, что по итогу от нас ожидают. В этом случае решение — это либо спрашивать в discord, либо методом проб и ошибок искать в тестах ожидаемые результаты.
- Может будет актуально (часто встречаю вопрос «почему в IDE логика / функция работает, а вставляю в codewars и там всё ломается и не работает?») тоже со старта новичкам объяснить, что это codewars и не стоит ожидать, что код в IDE будет работать также как и в codewars (возможно я тяжело объяснил, но было такое, что не работало).
- Обязательно следует отметить, чтобы после решения изучали код предоставленный в Best Practices и старались не подсматривая реализовать его (так я считаю можно быстрее изучить новые фичи ES6 и далее).
- Некоторые каты содержат в тестах строки закомментированного кода об этом тоже стоит сказать.
Модуль однозначно нужен.
Irina-coud commented Nov 19, 2021
Спасибо, что делаете обучение более комфортным! Особенно это важно для новичков!
Могу сказать, что когда я в первый раз увидела задачи, у меня был шок. Для новичка такой вводный модуль по кодварс будет очень полезен. Мне его в своё время не хватало!)
pnv13 commented Nov 21, 2021
Нужен! Как и любой другой подобный модуль, он поможет новичку на старте.
chagins commented Nov 21, 2021
Я думаю, что лишним данный модуль однозначно не будет. Ведь это stage0!
zzhanna commented Nov 21, 2021
Я как человек , пришедший с нуля, скажу , что и модуль нужен и видео обучающее, чтоб прям пошагово , это был такой квест для меня понять , как и что там делать). Да, даже регистрация там и то нужен был Гугл .
PiachkoAliaksey commented Dec 6, 2021
Нужен такой модуль, очень бы помог в решении последующих задач)
Katekarri commented Jan 17, 2022
как человек изучающий все реально с 0 всеми руками за такой модуль
Collaborator
Luffi2539 commented Nov 8, 2022
В модуль с начальными заданиями будет добавлена запись лекции с подробным разбором того что и как необходимо делать
Luffi2539 closed this as completed Nov 8, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
11 participants
Footer
© 2023 GitHub, Inc.
You can’t perform that action at this time.
Ranks
Ranks are used to indicate the proficiency of users and the difficulty of Kata. There are two classes of ranks, Kyu and Dan, which are divided in 8 levels each. By increasing order of proficiency/difficulty:
- 8 Kyu to 1 Kyu
- 1 Dan to 8 Dan
Why the names Kyu and Dan? The terms are borrowed from a system in Japanese martial arts, which is in turn borrowed from the game of Go. Kyu (or Kyū) indicates the number of degrees away from master level (Dan). This is why they count downward. Once you reach master level, we count upward. Black belts in martial arts are Dan level.
User Rank Breakdown
When you visit your profile on Codewars, you can see that you have an Overall rank as well as individual ranks for each language you have completed kata in:


The wheel on the left indicates your progress toward your next rank. For example, if you see the 1 dan badge in the wheel and your overall rank is 1 kyu / 70.0% that means you have earned 70% of the progress needed to go from 1 kyu to 1 dan (see required score).
The overall rank increases each time you successfully complete kata you never did in any language before. This increase occurs only one time per kata. On the other hand, you can complete the same Kata in different languages and each one of the related score will increase accordingly.
Note that you cannot gain progress if you forfeited a kata.
Leveling Your Rank
The score used to determine your rank is not the same as for honor. You can’t see your rank score on your profile, but it is visible in the API at the endpoint https://www.codewars.com/api/v1/users/USERNAME .
As said before, the only way to «rank up» is to complete Kata. However, the rank of the Kata you complete makes a huge difference on the evolution of your rank and its progress.
As you can see in awarded score and required score to rank up, if your main goal is to level up your rank, you should aim for completing hard kata above your current user rank. On the contrary, completing a lot of low level kata will give you a lot of honor but will not increase your rank very quickly.
Remember, every kata completion counts toward the rank of that language, but only the first completion of a given kata counts toward your overall rank/score.
Awarded Score by Kata Rank
| Completed | Score Awarded |
|---|---|
| 8 kyu | 2 |
| 7 kyu | 3 |
| 6 kyu | 8 |
| 5 kyu | 21 |
| 4 kyu | 55 |
| 3 kyu | 149 |
| 2 kyu | 404 |
| 1 kyu | 1,097 |
Required Score to Rank Up
| Rank | Required Score |
|---|---|
| 8 kyu | 0 |
| 7 kyu | 20 |
| 6 kyu | 76 |
| 5 kyu | 229 |
| 4 kyu | 643 |
| 3 kyu | 1,768 |
| 2 kyu | 4,829 |
| 1 kyu | 13,147 |
| 1 dan | 35,759 |
| 2 dan | 97,225 |
Note about the conversion between rank score and rank progress percentage:
New users are often surprised when they realized that some kata of rank 4 kyu rewarded them with 5% progress or so, then the amount suddenly dropped to 1.7%. This kind of thing happens each time your rank levels up: since the actual score earned for completing a Kata is constant (see table) while the score required to reach the next level increases a lot, the % awarded for the same Kata rank becomes lower and lower when you level up.
To give you a general idea about the process, here are the approximate percents you may gain when comparing your rank with the rank of the Kata you completed:
| Kata rank — Your rank | % |
|---|---|
| . | . |
| +2 | +30% |
| +1 | +12% |
| 0 | +5% |
| -1 | +1.7% |
| -2 | +0.3% |
| -3 | +0.09% |
| . | . |
Есть ли польза от codewars?
Пользуетесь ли вы сервисом codewars?
Дело в том, что начал решать там задачки, прорешал много задач 8 уровня, захотел сегодня решить задачу 7 уровня и понял, что не знаю как к ней подойти и решить.
Ключевой вопрос, пользуетесь ли вы открытием решений или как в принципе выстраиваете свою работу на данном ресурсе?
- Вопрос задан более трёх лет назад
- 85765 просмотров
1 комментарий
Простой 1 комментарий

а что за задача?
Решения вопроса 0
Ответы на вопрос 12

javascript developer (ReactJS)
2 года назад CodeWars помог мне выучить JavaScript. Сухая теория не заходила вообще, а вот с практикой совсем другое дело. Решал задачки 8-7 kyu. На уровнях выше начинаются уже не основы языка, а больше упор на алгоритмы, знание математики и т.д. На 7 уровне не должно возникать проблем точно.
Пишу код для решение на locahost в своем редакторе или IDE. Дебажу в консоли браузера. Когда вижу, что результат похож на правду, копирую код с редактора в окно для решения CodeWars. Проганяю предложенные тесты. Если все ОК, то сабмит, а если нет, то смотрю результаты тестов и допиливаю решение.
Результаты не открываю пока сам не решу. В топовых и хитрых решения других всегда разбираюсь.
Не стоит сильно зацикливаться на определенной задачи, которая не получается. Возможно не хватает знаний языка программирования. Бывает, что не могу понять условие задачи как таковое. Можно немного заморочиться, но если не идет, то смело откладываю на потом. Неудачи снижают боевой дух, а это ничем не помогает.
