Nivel inicial9 min de lectura · Publicado el

Codewars: qué es y cómo empezar a resolver katas

Codewars como un gimnasio: la kata es el ejercicio, los tests marcan si evenOrOdd(7) da Odd en 8 kyu y al terminar ves las soluciones de otros. Codewars: entrena con katasrubentejera.com la kata:el ejercicio8 kyuevenOrOdd(7)→ "Odd" ✔los tests:la máquinadespués:ver a otros
La kata es el ejercicio y sus tests, la máquina que marca si lo has hecho bien: en esta kata de 8 kyu, evenOrOdd(7) debe dar «Odd». Al terminar ves cómo la resolvieron otros y qué soluciones votan.

Quieres mejorar programando, pero en el trabajo no hay tiempo para probar cosas y los tutoriales se quedan en la teoría. Codewars resuelve eso: te da ejercicios pequeños, con tests ya hechos, para practicar un rato cada día.

Es como un gimnasio con entrenador: tú haces el ejercicio, una máquina te dice si lo has hecho bien y, al terminar, puedes ver cómo lo hicieron los demás.

Qué es Codewars

Codewars es una plataforma web de retos de programación, gratuita en su uso básico: resuelves ejercicios cortos (katas) que se comprueban solos con tests y, al completarlos, subes de rango. La web está en inglés y admite decenas de lenguajes, aunque cada kata solo está disponible en los lenguajes a los que se ha traducido. Su lema es «Achieve mastery through challenge» (algo así como «domina a base de retos»). La crearon los mismos fundadores de Qualified, una plataforma de pruebas técnicas para empresas.

Cada reto se llama kata. Una kata es un ejercicio corto con un enunciado y una batería de tests: tu solución es buena cuando los pasa todos. La comunidad escribe las katas, las revisa y vota las mejores soluciones.

Rangos: kyu y dan

Como en las artes marciales, cada kata y cada persona tienen un rango. Hay dos clases, con ocho niveles cada una:

  • Kyu, de 8 kyu (el más fácil) a 1 kyu. El número indica a cuántos grados estás del nivel de maestro.
  • Dan, de 1 dan a 8 dan, el nivel de maestro.

Todo el mundo empieza en 8 kyu. Solo subes resolviendo katas que no hayas resuelto antes en ningún lenguaje. Las katas de tu rango o de uno superior son las que más te hacen avanzar; las muy fáciles casi no cuentan.

Codewars también agrupa los rangos por colores (la columna «Nivel» es orientativa):

Rangos Color Nivel
8 kyu y 7 kyu Blanco Para empezar
6 kyu y 5 kyu Amarillo Intermedio
4 kyu y 3 kyu Azul Avanzado
2 kyu y 1 kyu Morado Experto
1 dan a 4 dan Negro Maestría
5 dan a 8 dan Rojo Maestría

Aparte del rango está el honor: puntos que ganas resolviendo katas, pero también escribiendo katas, traduciéndolas o comentando. El rango mide lo que sabes hacer; el honor, cuánto participas.

Cómo empezar en Codewars

  1. Regístrate en codewars.com/join con correo y contraseña o con tu cuenta de GitHub, y confirma el correo: hasta entonces algunas funciones están limitadas.
  2. Configura el entrenamiento: tu experiencia, los lenguajes que ya conoces y los que quieres practicar.
  3. Elige el enfoque del entrenador: «Fundamentals» propone katas fáciles y es el recomendado si empiezas; «Rank Up» va subiendo la dificultad.
  4. Busca una kata en el catálogo. Filtra por dificultad 8 kyu y, si quieres, por temas.
  5. Pulsa TRAIN y resuélvela.

Tu primera kata, paso a paso

Un ejemplo con una kata de 8 kyu: Even or Odd. Pide una función que reciba un entero y devuelva "Even" si es par y "Odd" si es impar.

Al pulsar TRAIN se abre el editor con dos paneles:

  • Solution: donde escribes tu código. Respeta el nombre y los parámetros de la función que te dan, porque los tests la llaman así.
  • Sample Tests: tests de ejemplo que puedes leer y ampliar con tus propios casos.

Una solución en JavaScript:

function evenOrOdd(number) {
  // Si el resto de dividir entre 2 es 0, es par
  return number % 2 === 0 ? "Even" : "Odd";
}

En JavaScript, los tests de Codewars usan Mocha y Chai, con describe para agrupar e it para cada caso. Añadir uno propio en Sample Tests es así:

const { assert } = require("chai");

describe("evenOrOdd", () => {
  it("devuelve Odd para los impares, también negativos", () => {
    assert.strictEqual(evenOrOdd(7), "Odd");
    assert.strictEqual(evenOrOdd(-1), "Odd");
  });
});

Ese caso con -1 no está puesto al azar. En JavaScript, -1 % 2 da -1, no 1. Si hubieras escrito number % 2 === 1 ? "Odd" : "Even", el -1 saldría par. Comparar con 0 evita la trampa.

Después:

  1. TEST ejecuta los tests de ejemplo. Repite hasta que salgan en verde.
  2. ATTEMPT ejecuta la batería completa, que incluye tests ocultos. Si falla un caso que no ves, muestra por consola los datos que llegan a tu función y añádelo a Sample Tests para reproducirlo.
  3. Con todo en verde, envía la solución (Submit). Ganas honor y avanzas en tu rango.
Lo mejor de una kata empieza cuando la terminas.

Después de resolverla: mira otras soluciones

Al enviar tu solución puedes ver las de los demás. La propia documentación de Codewars lo considera una de las mejores formas de aprender. Las soluciones reciben dos tipos de voto:

Best Practices

  • Equilibran legibilidad y eficiencia
  • Es el código que querrías en tu proyecto
  • La más rápida no gana si nadie la entiende

Clever

  • Soluciones ingeniosas o sorprendentes
  • Enseñan trucos del lenguaje
  • No las esperarías en código de producción

Si te atascas, puedes desbloquear las soluciones sin resolver la kata, pero renuncias a la recompensa. Y si el enunciado no se entiende o un test está mal, déjalo en la sección de comentarios de la kata (Discourse).

¿Quieres ver una kata resuelta y comparada con la solución más votada? Mira Kata Codewars: devolver el cuadrado de cada dígito de un número, una kata de 7 kyu.

¿Cuánto cuesta? Codewars Red

Entrenar en Codewars es gratis. Cuando lanzaron la suscripción Codewars Red, en 2016, anunciaron que la web seguiría siendo gratuita para todo el mundo. Red añade extras:

  • Estadísticas ampliadas y comparar tu progreso con otros.
  • Navegación sin anuncios.
  • Acceso a funciones en beta.
  • Una insignia en el perfil.

En noviembre de 2026 cuesta 5 $ al mes, 24 $ cada seis meses o 40 $ al año. Para practicar no la necesitas.

Codewars y la IA

Un asistente de IA resuelve una kata de 8 kyu en segundos. Si se la pides, tendrás la kata en verde y el rango subirá, pero no habrás practicado nada: es como ir al gimnasio y pedirle a otro que levante tus pesas.

El enfoque IA Limpia lo plantea al revés: primero la resuelves tú, con tus tests, y después usas la IA como usarías la pestaña de soluciones, para comparar y preguntar por qué otra versión es más legible o más eficiente. Es un criterio de esta web, no una norma de Codewars.

Para quién es y alternativas

Codewars encaja si ya conoces lo básico de un lenguaje y quieres soltura: ejercicios cortos, para un rato al día. Si aún no sabes programar, empieza por un curso; si buscas que alguien revise tu código, mira otra opción.

Plataforma En qué se diferencia Precio
Exercism Ejercicios por lenguaje (85) con mentoría humana Gratis
Advent of Code Un calendario de puzzles cada diciembre, en cualquier lenguaje Gratis

Por dónde seguir

¡Gracias a Isaura por su post! Su guía, en inglés, explica cómo crear la cuenta, resolver la primera kata y pedir ayuda a la comunidad: hackmd.io/s/BJLHdzMbe. La interfaz que describe es de 2018 y algunos pasos han cambiado.

Fuentes

Comprobado en noviembre de 2026 en las fuentes oficiales de Codewars:

La solución y el test de ejemplo se han ejecutado tal como aparecen, con require, en Node 24.21.0, Mocha 12.0.3 y Chai 6.3.0. La comprobación de -1 % 2 también se ha ejecutado en Node 24.21.0.