Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Awesome
  3. Katas

Katas

A curated collection of code katas—programming exercises to hone skills through practice and repetition.

GitHubGitHub
3.1k stars223 forks0 contributors

What is Katas?

Awesome Katas is a curated list of code katas—structured programming exercises that help developers hone their skills through practice and repetition. It aggregates kata collections from various sources, covering topics like algorithms, TDD, refactoring, and real-world problem-solving. The project serves as a centralized resource for programmers seeking deliberate practice to improve their coding craftsmanship.

Target Audience

Developers of all levels looking to improve their programming skills, practice test-driven development, learn refactoring techniques, or prepare for technical interviews through structured exercises.

Value Proposition

It provides a comprehensive, organized collection of katas from trusted sources, saving developers time searching for quality practice material. The language-agnostic approach allows flexibility, and the focus on best practices encourages writing clean, maintainable code.

Overview

A curated list of code katas

Use Cases

Best For

  • Practicing test-driven development (TDD) with structured exercises
  • Improving refactoring skills on legacy code simulations
  • Learning algorithms and data structures through hands-on problems
  • Preparing for coding interviews with diverse problem sets
  • Sharpening programming skills in a new language via katas
  • Studying software design patterns through concrete examples

Not Ideal For

  • Developers seeking interactive coding platforms with built-in editors and automated feedback
  • Teams needing ready-to-use code snippets or libraries for immediate project implementation
  • Learners who prefer structured curricula with step-by-step guidance and assessments
  • Absolute beginners requiring hand-holding tutorials with detailed explanations and solutions

Pros & Cons

Pros

Curated Diversity

Aggregates katas from multiple reputable sources like Dave Thomas's CodeKata and SensioLabs PoleDev Katas, ensuring a quality and varied selection without users having to search individually.

Broad Topic Coverage

Includes exercises on diverse topics from supermarket pricing and anagrams to Bloom filters and game simulations, as listed in the README, catering to different skill interests.

Language-Agnostic Design

Most katas are not tied to a specific programming language, allowing developers to practice in their preferred language, which is explicitly stated in the introduction.

Focus on Best Practices

Emphasizes finding good solutions and following best practices over mere puzzle-solving, encouraging deliberate practice for software craftsmanship improvement.

Community-Driven Updates

Open to contributions with clear guidelines, as per the CONTRIBUTING.md link, helping keep the list current and expanding with new resources.

Cons

No Built-in Guidance

The README only provides links to kata descriptions without solutions, hints, or learning paths, leaving users to figure out approaches on their own, which can be challenging for novices.

Lack of Interactive Features

Unlike platforms like Codecademy, it offers no in-browser coding, automated testing, or progress tracking, requiring users to set up their own development environment.

Inconsistent Quality Control

Since it aggregates from various sources, kata difficulty and documentation quality can vary, and some external links might be outdated or broken over time.

Minimal Context for Practice

Assumes prior knowledge of how to approach katas; there's little explanation on methodologies like TDD or refactoring, which might hinder effective skill development without supplemental resources.

Frequently Asked Questions

Quick Stats

Stars3,111
Forks223
Contributors0
Open Issues1
Last commit6 months ago
CreatedSince 2015

Tags

#skill-development#tdd#awesome-list#awesome-lists#practice#learning-resources#coding#training#awesome#algorithm-practice#learning#refactoring#programming-exercises

Included in

Awesome452.0k
Auto-fetched 1 day ago

Related Projects

AwesomeAwesome

😎 Awesome lists about all kinds of interesting topics

Stars458,030
Forks34,417
Last commit5 days ago
Self HostedSelf Hosted

A list of Free Software network services and web applications which can be hosted on your own servers

Stars287,626
Forks13,244
Last commit6 days ago
Free for DevelopersFree for Developers

A list of SaaS, PaaS and IaaS offerings that have free tiers of interest to devops and infradev

Stars120,827
Forks12,607
Last commit3 days ago
Beginner-Friendly ProjectsBeginner-Friendly Projects

A list of awesome beginners-friendly projects.

Stars84,896
Forks7,846
Last commit4 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub