The Syrian Olympiad in Informatics (SOI) (Arabic: الأولمبياد المعلوماتي السوري) is an annual informatics competition for students under 20 years old, organized by the Syrian Computer Society.
There are three divisions for students depending on their age: under-12, under-15 and under-20. The under-20 division contest requires solving problems of an algorithmic nature, and the four highest-ranking contestants are qualified to form the Syrian team participating in the International Olympiad in Informatics (IOI), one of the most recognized computer science competitions in the world.
Syrian Olympiad in Informatics Wikipedia
This division mainly concentrates on developing a basis for students to start getting familiar with programming. They study three courses:Scratch:
Contestants learn to develop games, interactive stories and cartoons using Scratch. Since it is intended to be an introduction to programming, it is assigned the largest score in this division, 60% from the total score.C++:
Contestants start learning the basic syntax of C++. 20% of the total score is assigned to it.Boolean algebra:
Contestants have to learn about basic operations of Boolean algebra, also gaining ability to simplify Boolean circuits. 20% of the total score is assigned to it.
This division follows the same courses as the under-12 division, taking more advanced courses in Scratch, C++ and Boolean algebra, and the score distribution is different; 40% for Scratch, 40% for C++ and 20% for Boolean algebra.
The under-20 division focuses on developing skills in algorithm design, as they have to solve complex problems that have an algorithmic nature, by inventing and writing solutions to those problems in C++, that have to meet specific efficiency constraints.