Skip to content

Commit 34cd694

Browse files
committed
Refactor file paths and fix typos in 2024 and 2025 pages.
1 parent 63eae5d commit 34cd694

File tree

7 files changed

+107
-112
lines changed

7 files changed

+107
-112
lines changed

REUSE.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ path = [
3030
"Gemfile.lock",
3131
"README.md",
3232
"renovate.json",
33-
"xlsx/kaicode-2024.xlsx",
33+
"xlsx/*.xlsx",
3434
]
3535
precedence = "override"
3636
SPDX-FileCopyrightText = "Copyright (c) 2025 Yegor Bugayenko"

images/2025/faststream.svg

Lines changed: 16 additions & 0 deletions
Loading

images/2025/novops.svg

Lines changed: 16 additions & 0 deletions
Loading

images/2025/pytorch_optimizer.svg

Lines changed: 16 additions & 0 deletions
Loading

pages/2024.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ breadcrumbs:
1414
---
1515

1616
In KaiCode'24, we received **412 applications**.
17-
After a three-phased review of them, the jury
17+
After a three-phase review of them, the jury
1818
made a decision to reward three projects:
1919

2020
![perfect](images/2024/toqito.svg)
@@ -526,7 +526,7 @@ The software we created for filtering repositories works as follows.
526526
* [for repository action workflows](https://docs.github.com/en/rest/actions/workflows?apiVersion=2022-11-28#list-repository-workflows)
527527
where it checks if amount of action workflows >= 1
528528

529-
2. Then it manually clone every repository using `git clone` and checks if:
529+
2. Then it manually clones every repository using `git clone` and checks if:
530530
* amount of directories >= 10
531531
* amount of files >= 50
532532
* amount of files with more than 1k lines < 10
@@ -548,7 +548,7 @@ The software we created for filtering repositories works as follows.
548548
3. Then it excludes all the repositories that are not matching the criteria
549549

550550
The second group consisted of XXX that were manually reviewed
551-
by one of jury members and were classified as "not enough quality" to
551+
by one of the jury members and were classified as "not enough quality" to
552552
compete for the trophy:
553553
{: .count-them}
554554

pages/2025.md

Lines changed: 55 additions & 108 deletions
Original file line numberDiff line numberDiff line change
@@ -17,84 +17,59 @@ breadcrumbs:
1717
- participants: Participants
1818
---
1919

20-
KaiCode is an annual open source festival,
21-
started in [2015](https://www.yegor256.com/award.html).
22-
23-
This is how it works: First, you submit your open-source repository to us.
24-
Then, our jury will review it. If your repository wins, we give you
25-
a monetary reward and a laurel badge that you can attach to your
26-
[README file][readme].
27-
28-
In order to get into the competition, your repository must be:
29-
30-
* Hosted on [GitHub](https://github.com)
31-
* Larger than 4,000 [SLOC](https://en.wikipedia.org/wiki/Source_lines_of_code)
32-
* Older than 12 months (since the first commit)
33-
* Younger than 60 months (since the first commit)
34-
* Not yet a winner of KaiCode
35-
36-
To win, your repository must demonstrate the highest
37-
quality of code and development processes.
38-
In particular, the jury pays attention to the following
39-
(in no particular order):
40-
41-
* Clean code
42-
* Design choices
43-
* [Coding conventions](https://en.wikipedia.org/wiki/Coding_conventions) control
44-
* [Static analysis](https://en.wikipedia.org/wiki/Static_program_analysis)
45-
* [Unit testing](https://en.wikipedia.org/wiki/Unit_testing)
46-
* [Integration testing](https://en.wikipedia.org/wiki/Integration_testing)
47-
* [Code coverage control](https://en.wikipedia.org/wiki/Code_coverage)
48-
* [Requirements](https://en.wikipedia.org/wiki/Requirements_engineering)
49-
* Documentation
50-
* [Git branching](https://git-scm.com/book/en/v2/Git-Branching-Branches-in-a-Nutshell)
51-
* [Bug](https://en.wikipedia.org/wiki/Bug_tracking_system)
52-
and [issue](https://en.wikipedia.org/wiki/Issue_tracking_system) tracking
53-
* [Code reviews](https://en.wikipedia.org/wiki/Code_review)
54-
* [Continuous Integration](https://en.wikipedia.org/wiki/Continuous_integration)
55-
* [Releases](https://en.wikipedia.org/wiki/Software_release_life_cycle)
56-
and [semantic versioning](https://semver.org/)
57-
* [Licensing](https://en.wikipedia.org/wiki/Open-source_license)
58-
59-
This doesn't matter:
60-
61-
* How popular is your product?
62-
* What programming languages do you use?
63-
* What is the license?
64-
* What is the programming paradigm (OOP, FP, etc.)?
65-
66-
One GitHub user may submit only one project.
67-
68-
Neither jury members nor festival organizers are
69-
allowed to submit their projects.
70-
71-
We reserve the right to reject any submission without an explanation.
72-
73-
## Rewards
74-
75-
There are three nominations:
76-
77-
![perfect](images/laurel-perfect.svg)
78-
Perfect Product:\
79-
$2,048
80-
{: .laurel}
81-
82-
![excellent](images/laurel-excellent.svg)
83-
Excellent Product:\
84-
$1,024
85-
{: .laurel}
86-
87-
![awesome](images/laurel-awesome.svg)
88-
Awesome Product:\
89-
$512
90-
{: .laurel}
91-
92-
The money will be sent to you in Bitcoins.
20+
In KaiCode'25, we received **112 applications**.
21+
After a three-phase review of them, the jury
22+
made a decision to reward three projects and the steering committee agreed:
23+
24+
![perfect](images/2025/faststream.svg)
25+
The [ag2ai/faststream](https://github.com/ag2ai/faststream) project (4.3K★),
26+
a Python library that simplifies the process of writing producers and consumers for message queues,
27+
demonstrated **perfect** software development practices:
28+
code style control,
29+
continuous integration,
30+
automated testing,
31+
versioning and releases,
32+
issue triaging,
33+
and contribution management discipline.
34+
Source files are small, well formatted, and properly documented.
35+
However, licensing is not under control according to SPDX requirements.
36+
**$2048** was the reward.
37+
{: .winner}
38+
39+
![excellent](images/2025/pytorch_optimizer.svg)
40+
The [kozistr/pytorch_optimizer](https://github.com/kozistr/pytorch_optimizer) project (319★),
41+
an optimizer for PyTorch written in Python,
42+
showed us an **excellent** codebase:
43+
well formatted and documented code,
44+
CI,
45+
automated testing,
46+
coverage control.
47+
However,
48+
style checking is not part of CI,
49+
build pipeline is rather weak,
50+
there is a lack of clarity in package management,
51+
and no license control of source files.
52+
**$1024** was the reward.
53+
{: .winner}
54+
55+
![awesome](images/2025/novops.svg)
56+
The [PierreBeucher/novops](https://github.com/PierreBeucher/novops) project (418★),
57+
a universal secret and configuration manager written in Rust,
58+
showed us **awesome** coding practices:
59+
issue triaging and community support,
60+
continuous deployment,
61+
automated testing.
62+
However,
63+
they don't have a style checker in the CI pipeline,
64+
module placement is a bit chaotic,
65+
PRs don't go through the full build pipeline,
66+
branching is a bit messy,
67+
and no badges in the README.
68+
**$512** was the reward.
69+
{: .winner}
9370

9471
## Steering Committee
9572

96-
These people help us decide who deserves the rewards:
97-
9873
![iakunin](https://github.com/iakunin.png)
9974
[@iakunin](https://github.com/iakunin)
10075
{: .jury}
@@ -109,11 +84,6 @@ These people help us decide who deserves the rewards:
10984

11085
## Jury
11186

112-
Each member of the jury reviews up to four projects. In
113-
each review we expect to see "good", "average", or "bad" mark in front
114-
of every quality dimension listed above.
115-
The sum of all marks constitutes the final mark of a project.
116-
11787
![h1alexbel](https://github.com/h1alexbel.png)
11888
[@h1alexbel](https://github.com/h1alexbel)
11989
{: .jury}
@@ -154,22 +124,6 @@ The sum of all marks constitutes the final mark of a project.
154124
[@maxonfjvipon](https://github.com/maxonfjvipon)
155125
{: .jury}
156126

157-
## Important Dates # {#dates}
158-
159-
Project submission:\
160-
~~31 May~~ 9 June 2025 ([Anywhere on Earth][AoE])
161-
162-
Authors notification:\
163-
~~1~~ ~~10 July 2025~~ 30 July 2025
164-
165-
## How to Submit # {#submit}
166-
167-
Submission is closed. See you [next year](/2026.html).
168-
169-
You may submit more than one repository, but only one of them may win.
170-
We may reject some repositories without review, if they are coming from the
171-
same owner.
172-
173127
## Participants
174128

175129
We received **112 applications** (excluding duplicates and broken submissions).
@@ -279,7 +233,7 @@ The software we created for filtering repositories works as follows.
279233
* [for repository action workflows](https://docs.github.com/en/rest/actions/workflows?apiVersion=2022-11-28#list-repository-workflows)
280234
where it checks if amount of action workflows >= 1
281235

282-
2. Then it manually clone every repository using `git clone` and checks if:
236+
2. Then it manually clones every repository using `git clone` and checks if:
283237
* amount of directories >= 10
284238
* amount of files >= 50
285239
* amount of files with more than 1k lines < 10
@@ -301,7 +255,7 @@ The software we created for filtering repositories works as follows.
301255
3. Then it excludes all the repositories that are not matching the criteria
302256

303257
The second group consisted of XXX that were manually reviewed
304-
by one of jury members and were classified as "not enough quality" to
258+
by one of the jury members and were classified as "not enough quality" to
305259
compete for the trophy:
306260
{: .count-them}
307261

@@ -351,23 +305,18 @@ candidates for the prize:
351305
* [TrianguloY/URLCheck](https://github.com/TrianguloY/URLCheck)
352306

353307
Then, we asked our jury to review all projects manually. Every project
354-
was reviewed by two jury members.
355-
The results of reviewing will be published soon.
356-
If you think that your project was disqualified by mistake or undeservedly underestimated - email us, we'll review it once again with special attention.
308+
was reviewed by two jury members. The details are here:
309+
[kaicode-2025.xlsx](/xlsx/kaicode-2025.xlsx)
357310

358311
## Sponsors
359312

360313
![yegor256](https://github.com/yegor256.png)
361314
[@yegor256](https://github.com/yegor256)
362315
{: .jury}
363316

364-
We are still forming the board of sponsors.
365-
If you are interested in joining, please [email us](mailto:[email protected]).
366-
{: .firebrick}
367-
368317
## Organizers
369318

370-
These people organize KaiCode (in alphabetic order):
319+
These people organized KaiCode (in alphabetic order):
371320

372321
![maxonfjvipon](https://github.com/maxonfjvipon.png)
373322
[@maxonfjvipon](https://github.com/maxonfjvipon)
@@ -377,8 +326,6 @@ These people organize KaiCode (in alphabetic order):
377326
[@volodya-lombrozo](https://github.com/volodya-lombrozo)
378327
{: .jury}
379328

380-
If you are ready to help, please [email](mailto:[email protected]).
381-
382329
[form]: https://docs.google.com/forms/d/1nUlL2xvL1OOy3LoVF-g7MfB-9yeG68XB2wXW4MAoWrY
383330
[AoE]: https://en.wikipedia.org/wiki/Anywhere_on_Earth
384331
[readme]: https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-readmes

xlsx/kaicode-2025.xlsx

242 KB
Binary file not shown.

0 commit comments

Comments
 (0)