This is the sixth year of the Software Quality Award. The maximum prize is still the same—$4,096. The rules are still the same. Read on. Previous years are here: 2015, 2016, 2017, 2018, 2019.
This year we do it together with KaiCode, sponsored by Huawei.
Here is the form to fill out.
Rules:
One person can submit only one project.
Submissions are accepted until September 1, 2020.
I will check the commit history to make sure you’re the main contributor to the project.
I reserve the right to reject any submission without explanation.
All submissions will be published on this page (including rejected ones).
Results will be announced October 15, 2020 on this page and by email (or maybe a bit later).
The best project will receive $4,096 (I may split this amount among a few projects and may give away a smaller amount!).
Final decisions will be made by me and are not negotiable (although I may invite other people to help me make the right decision).
Winners that received any cash prizes in previous years can’t submit again.
Each project must be:
Open source (in GitHub).
At least 4,096 lines of code (
cloc
without any arguments) and at least 16,384 hits-of-code.At least one year old (the age of the first commit).
Object-oriented (that’s the only thing I understand).
The best project is selected using this criteria.
What doesn’t matter:
Popularity. Even if nobody is using your product, it is still eligible for this award. I don’t care about popularity; quality is the key.
Programming language. I believe that any language, used correctly, can be applied to design a high-quality product.
Buzz and trends. Even if your project is yet another parser of command line arguments, it’s still eligible for the award. I don’t care about your marketing position; quality is all.
By the way, if you want to sponsor this award and increase the bonus, email me.
There were 67 projects submitted. 33 of them participated in the competition (in alphabetic order):
altiore/lorder.ui
—@fellahi-alibtraceio/btrace
- @iakunincatalyst-team/catalyst
—@iakunincoderaiser/cloudcmd
—@razzwancrocinc/sql-boot
—@iakunincybercog/laravel-love
—@ziyavakhobovdecorators-squad/eo-yaml
—@iakuninembox/embox
—@fellahi-aliflyimg/flyimg
—@ziyavakhobovgentee/gentee
—@fellahi-aligulpjs/gulp
—@razzwanhdouss/jeometry
—@iakuninigorwojda/android-showcase
—@iakuninimrafaelmerino/json-values
—@fellahi-alijavascript-obfuscator/javascript-obfuscator
—@iakuninmcjtymods/rftoolscontrol
—@fellahi-alinesbox/tic-80
—@iakuninonqtam/doctest
—@fellahi-aliopenfeign/feign
—@fellahi-alipixelpusher/liveprinter
—@iakuninpmed/v8pp
—@fellahi-alireactos/reactos
—@fellahi-alireinterpretcat/vrp
—@iakuninscalikejdbc/scalikejdbc
—@iakuninscommons/scommons-react-native
—@fellahi-alistiffstream/restinio
—@iakunintraccar/traccar
—@fellahi-alityvik/geopuzzle
—@fellahi-alivictorx64/devrating
—@fellahi-aliwentout/mnemonica
—@razzwanyuriykulikov/alarmclock
—@fellahi-aliz7zmey/php-parser
—@iakunin
Disqualified (either too small or too young or some other violation of the rules):
32xlevel/iscanner
—@iakunina5kin/xentica
—@iakuninbrucegithub/namespace-protector
—@iakuninchaqmoq
covid19cz/erouska-android
—@iakunindgroup/lazylead
dotenv-linter/dotenv-linter
—@fellahi-alifagnermartinsbrack/jack-the-moneylender
—@Razzwanfleksl/avatar-maker
—@fellahi-aligeftimov/android-pathview
—@iakuniniakunin/codexia-bot
ibitcy/eo-locale
ligi/survivalmanual
mangstadt/print-from-phone
mayokunthefirst/instant-weather
msaaddev/github-interact-cli
muhammad-usama-aleem/glasses-to-aid-the-blind
munusphp/munus
—@ziyavakhobovnexinput
pikvm/pikvm
popovevgeniy/swgf
pric/pric
r57zone/easynotes
reddec/trusted-cgi
retejs
—@fellahi-alirey5137/jsonbatch
rus4j/trigger-collections
sgjava/java-periphery
stagedml/stagedml
tolsi/dataragon
totumonline/totum-mit
—@ziyavakhobovtrueopenvr
wildfish/crispy-forms-gds
yiisoft
- https://github.com/ZiyaVakhobovpholser/junit-quickcheck
(already won the award in 2016)
My hot list is this (I review each of them myself):
coderaiser/cloudcmd
(first review by @razzwan)
- Commits are not linked to issues, which makes history hard to track
- Release procedure is not automated (I didn’t find the script and/or the logs of each release)
- Many code comments are written in Russian (WTF?); not every function documented
- I’m not sure this really is OOP… I wasn’t able to find classes or objects (maybe it’s just me)
- Test coverage is not visible anywhere (I think it’s not under control)
decorators-squad/eo-yaml
(by @iakunin)
- Looks cool, no complaints
hdouss/jeometry
(by @iakunin)
- Looks cool, no complaints
victorx64/devrating
(by @fellahi-ali)
- Looks cool, no complaints
It’s hard to make the decision. Three projects are very good and they all deserve the prize.
15 Nov 2020: I finally made the decision. This year there are three winners. Each of them gets $1,024.
Here are your badges:
Put this code into GitHub README
(replace ???
with your GitHub name in the URL):
<a href="https://www.yegor256.com/2019/11/03/award-2020.html">
<img src="//www.yegor256.com/images/award/2020/winner-???.png"
style="height:45px;" alt='winner'/></a>
Thanks to everybody for your participation! See you next year.