Skip to main content

Kata Ranks

warning

The rank definitions on this page is outdated.

White (Beginner)

8 Kyu

8 kyu kata represent a beginner level. At this level, the kata are only challenging for users new to programming. This includes programming tasks such as:

  • Defining a simple function (i.e. hello world)
  • Basic variable assignments
  • Fixing basic syntax issues
  • Trivial algorithms such as basic if/else statements

7 Kyu

7 kyu kata represent a beginner programming level. At this level, the kata will generally challenge users on their core language and API reference knowledge. Tasks such as:

  • Iterating arrays and returning a subset of values
  • Basic data type manipulations
  • Basic functional or object-oriented concepts
  • Basic Regular Expressions

Yellow (Novice)

6 Kyu

6 kyu kata represent a novice programming level. At this level, the kata will start to include more advanced algorithmic challenges and more complex language features. It includes:

  • Complex language features (closures, scopes, monads, etc)
  • Complex OOP/Functional concepts
  • Basic Design Patterns
  • Complex Regular Expressions

5 Kyu

5 kyu kata represent a novice programming level. At this level, the kata are similar to 6 kyu but more challenging. It includes:

  • Complex language features that require mature OOP/Functional concepts
  • Advanced OOP/Functional concepts
  • Complex Design Patterns
  • Advanced regular expression usage

Blue (Competent)

4 Kyu

4 kyu kata represent a competent programming level. At this level, the kata begin to take some serious thought to complete. They include tasks that may handle:

  • Computer science concepts utilizing complex algorithms
  • Advanced design patterns
  • Understanding intricate business requirements
  • Advanced concepts such as concurrency, parallelism, meta programming and cryptography

3 Kyu

3 kyu kata represent a competent programming level. At this level, the kata are similar to 4 kyu but are more challenging. They include tasks that may handle:

  • Computer science concepts utilizing advanced algorithms
  • Ability to implement advanced requirements in a scalable fashion
  • Basic AI/machine learning algorithms
  • Detailed usage of advanced concepts such as concurrency, parallelism and cryptography

Purple (Proficient)

2 Kyu

2 kyu kata represent a proficient programming level. At this level, kata require a mature understanding of complex programming concepts - concepts such as:

  • Complex AI/machine learning algorithms
  • Reverse engineering techniques
  • Basic interpreters and compilers
  • Basic mini-programs with multiple feature requirements (such as a basic Markdown parser)

1 Kyu

1 kyu kata represent a proficient programming level. At this level, kata are similar to 2 kyu but more challenging. They may include concepts such as:

  • Advanced AI/machine learning algorithms
  • Complex interpreters and compilers
  • Complex Mini-programs with multiple feature requirements (such as a complete Markdown parser)