{"id":18468021,"url":"https://github.com/bnymellon/codekatas","last_synced_at":"2025-05-15T15:03:40.975Z","repository":{"id":39620127,"uuid":"105218129","full_name":"BNYMellon/CodeKatas","owner":"BNYMellon","description":"Code Kata collection for JVM Languages and Libraries.","archived":false,"fork":false,"pushed_at":"2025-05-01T15:01:28.000Z","size":1599,"stargazers_count":408,"open_issues_count":0,"forks_count":157,"subscribers_count":32,"default_branch":"master","last_synced_at":"2025-05-01T16:22:15.926Z","etag":null,"topics":["eclipse-collections","java","java-17","java-20","java-21","java-lambda","java-streams","java-time","kata","kotlin"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BNYMellon.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.MD","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-09-29T01:57:57.000Z","updated_at":"2025-05-01T15:01:34.000Z","dependencies_parsed_at":"2023-02-14T09:30:43.457Z","dependency_job_id":"61d607bf-14f7-499f-b96b-5a0a8352d785","html_url":"https://github.com/BNYMellon/CodeKatas","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BNYMellon%2FCodeKatas","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BNYMellon%2FCodeKatas/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BNYMellon%2FCodeKatas/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BNYMellon%2FCodeKatas/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BNYMellon","download_url":"https://codeload.github.com/BNYMellon/CodeKatas/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254364270,"owners_count":22058878,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["eclipse-collections","java","java-17","java-20","java-21","java-lambda","java-streams","java-time","kata","kotlin"],"created_at":"2024-11-06T10:04:19.795Z","updated_at":"2025-05-15T15:03:40.930Z","avatar_url":"https://github.com/BNYMellon.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![][actions img]][actions]  \n[![][solutions actions img]][solutions actions]\n\n# **What is a Code Kata?**\n\n* A hands-on programming exercise which helps hone your skills through practice.\n* Code Katas are usually set up as a series of unit tests which fail.\nYour task is to make them pass.\n\n\u003cbr\u003e\n\u003cp style=\"text-align: center;\"\u003eI hear and I forget.\u003cbr\u003e \nI see and I remember.\u003cbr\u003e \nI do and I understand.\u003cbr\u003e \n\u003cbr\u003e\n\u003cb\u003e-- Confucius\u003c/b\u003e\u003c/center\u003e\u003c/p\u003e\n\n## Katalogue\n\n* [Java Lambda Kata](./java-lambda-kata) - Practice and learn Java 8 lambdas with simple exercises\n* [Deck of Cards Kata](./deck-of-cards-kata) - Practice using Java 8 Streams, Eclipse Collections, \nGuava, Apache Commons and/or Vavr on a simple domain\n* [Donut Kata](./donut-kata) - Practice and learn more advanced Eclipse Collections APIs using Java or Kotlin\n* [Calendar Kata](./calendar-kata) - Practice and learn the APIs in the Java 8 Date/Time and ThreeTen-Extra libraries.\n* [CodePoint Kata](./code-point-kata) - Read a secret message from a file into memory, translate it and then write out the revealed message to a file.\n* [JMH Kata](./jmh-kata) - Experiment with the Java Microbenchmark Harness by running and writing micro-benchmark performance comparisons.\n* [Pitest Mutation Kata](./pitest-mutation-kata) - Practice and learn how to improve the quality of your tests by hunting mutants.\n* [Kata of Katas](./kata-of-katas) - Practice and learn advanced methods in Eclipse Collections.\n* [Coffee Shop Kata](./coffee-shop-kata) - Practice and learn the latest Java features while comparing them with the older ones.\n\n## Other Katas\n* [Eclipse Collections Katas](https://github.com/eclipse/eclipse-collections-kata) - Practice and\n   learn [Eclipse Collections](https://github.com/eclipse/eclipse-collections) Data Structures and Algorithms with seven code katas\n\n\n## What you will need to build the katas\n1. Java 21\n2. Maven 3.6.1+\n3. IDE of your choice\n\n[actions]:https://github.com/BNYMellon/CodeKatas/actions?query=workflow%3A%22Code+Katas+CI+Build%22\n[actions img]:https://github.com/BNYMellon/CodeKatas/workflows/Code%20Katas%20CI%20Build/badge.svg?branch=master\n[solutions actions]:https://github.com/BNYMellon/CodeKatas/actions?query=workflow%3A%22Code+Katas+CI+Solutions+Build%22\n[solutions actions img]:https://github.com/BNYMellon/CodeKatas/workflows/Code%20Katas%20CI%20Solutions%20Build/badge.svg?branch=master\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbnymellon%2Fcodekatas","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbnymellon%2Fcodekatas","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbnymellon%2Fcodekatas/lists"}