Wednesday, February 14, 2018

Coding Kata

I've recently come across a cool website call Codewars. Codewars is a community of developers who code in a variety of languages. Members of the community can create kata which are coding challenges that you can use to practice coding. As you complete more kata (there are hundreds) you can increase you kyu ranking. You can also level up through kumite, challenging another coder (I haven't tried this yet).

If you're not familiar with these words, they all come from karate. In karate two of the main parts of practice are kumite, and kata. Kumite is sparring. There are levels to this depending on your level, three step sparring for beginners, one step sparring for novices, semi-free and free sparring for advanced. Kata is an organized set of movies that one practices to perfect his karate form. Kata also increase in difficulty as the student advances. In Shotokan Karate there are 26 kata that are practiced in the dojo nowadays. To become a 1st degree back belt you only need to know seven of these kata. An over-simplified summary would be that kata is the ideal and kumite is the reality.

As a karateka myself I really enjoy this analogy of coding as kata. Coding challenges really get the gears turning in your head. The puzzles you might be working out may not be a challenge that a developer may encounter normally, but it helps perfect your form and thinking.

No comments:

Post a Comment

Opinion: Rails vs. Django

 Opinion: Rails vs. Django Disclaimer: This is an ongoing piece. I'm probably going to be adding to it as time goes on. So I spent ...