DataArt successfully organized the International Programming Proggy-Buggy Contest 2025, marking a significant milestone in the event’s history. For the first time, the contest adopted a fully team-based format, a strategic decision aimed at fostering collaboration and knowledge-sharing within the global programming community.
Proggy-Buggy Contest 2025
Key Achievements
- 1,600 participants
- 37 countries represented
- 657 registered teams (554 participated)
- 9 offline hubs across Armenia, Georgia, Kazakhstan, Serbia, and Ukraine
Thanks to automation upgrades implemented by DataArt’s engineering team, scoring and certification were faster and more transparent than ever before.
More female winners than ever before, reinforcing DataArt’s commitment to inclusivity in competitive programming.
This milestone reflects why DataArt continues to invest in early careers and tech education.
Proggy-Buggy is not just a contest — it’s a platform for learning, collaboration, and global connection.
Planning for the next Proggy-Buggy is already underway. Save the date: May 25, 2026. Take your towel and don’t panic!
About The Contest
Proggy-Buggy is the International Programming Contest organized by DataArt. It has been running since 2013, attracting over 15,000 participants from 60 countries. The competition, held twice a year, consists of 13 algorithmic problems that participants must solve within a 42-minute time limit.
The main protagonists of each problem are two creatures, Proggy and Buggy. Proggy is a highly skilled and creative being who writes programs, while Buggy can sometimes cause delays with errors that Proggy must work through. Navigating these obstacles can be challenging, but with patience and understanding, Proggy always finds a solution.
Another concept inspired by the book is the name of our Spring competition. It's called the Towel Contest and is held on Towel Day, celebrated worldwide every year on May 25th as a tribute to the author Douglas Adams by his fans.
It has become a tradition for participants to come to the May competitions with towels. A towel is the most helpful thing an interstellar hitchhiker can have because, as Douglas Adams writes, "Any man who can hitch the length and breadth of the Galaxy, rough it, slum it, struggle against terrible odds, win through and still know where his towel is, is clearly a man to be reckoned with."
So, what do you say? Are you ready to test your skills, learn, and have some fun? 😊
Place and Time
end of October. It is held online, but you can also join from one of our DataArt offices worldwide. The list of locations from which you can join will be published on the registration page about a month before the event.
Registration is required to participate in the competition. Registration opens approximately one month before the start of the competition. One day before the contest, all registered participants will receive two links: one to the contest page, which will become active at the start of the competition, and another to the live stream, where the official start of the competition will be announced.
You can practice solving problems on the Contest Portal. You can use your previous registration or create a new account to access it. To do so, follow the link to one of last year's contests.
The Contest Has Three Types of Participants:
Amateurs
Participants aged 16 and above. May have competed in programming competitions other than international ones, such as university, city, regional, or national-level Olympiads (excluding ACM ICPC International Programming Contests or International School Olympiads in programming at any level).
Professionals
Participants in the National Student (ACM ICPC) or School (IOI) Olympiad in programming and other international programming competitions, but not finalists or winners.
Superheroes
Participants who ranked in the top 10 of the National Student Olympiad (ACM ICPC) or School Olympiad (IOI) in programming and past winners of the Proggy-Buggy Contest in all categories.
Contest Rules
- The Proggy-Buggy Contest 2025 (Autumn Edition) is held only in team format.
- All team members must belong to the same category – Amateurs, Professionals, or Superheroes. The team’s category is determined by the highest category among its members.
- All team members use the same team login and password to access the contest system.
- Teams can participate online from anywhere in the world (except the Russian Federation, as well as other sanctioned territories), or in-person at one of our Partner Hubs.
- Team members may live in different cities or even different countries (except the territory of the Russian Federation, as well as in other sanctioned territories).
- If a team is unable to gather in one room, it is permitted to use instant messengers (Zoom, WhatsApp, Telegram, etc.) solely for communication between participants
- Each team can use only one device from which the solutions will be sent to the server for verification. If the system detects that solutions are being submitted from multiple devices, the team will be disqualified.
- Participants are only allowed to use information published before the start of the contest and must communicate only with their team members and the organizers.
- Participants are not allowed to use support from coaches or third-party participants.
- All teams will have 13 problems to solve and 42 minutes for their completion.
- During the contest, using any online resources — including Google, ChatGPT, or other AI tools — is strictly prohibited. If the system detects AI interference, the team will be disqualified.
- During the contest, all communications must be in English to ensure everyone understands each other.
- You can write your code in any of the languages provided on the server.
- You can solve problems one by one or skip some problems and solve them later.
- You can send the solution to each problem more than once and use different programming languages during the contest.
- Official results will be published 2–3 days after the contest concludes.
- The standings will become available after the official announcement of the results, as answers are automatically scored on the dedicated server.
- Diplomas for Winners and Certificates for Participants will be sent during a month from the official announcement of the results.
- Participants residing in the territory of the Russian Federation, as well as in other sanctioned territories, are not allowed to take part in the Proggy-Buggy Contest.
Offline Hubs:
Armenia
DataArt Armenia Office. 5th Floor, 40/2 Paronyan Street. Yerevan, Armenia
Georgia
DataArt Georgia Office. 5th Floor, 42 Shota Rustaveli Avenue. Tbilisi, Georgia
Kazakhstan
- Astana — Nazarbayev University. Kabanbay Batyr Avenue, 53, Block 7, Auditorium 7e.222. Astana, Kazakhstan
- Almaty — Turan University. Satpayev Avenue, 16a. Almaty, Kazakhstan
- Karaganda — IT Hub Terricon Valley. Alalykin Street, 12/1. Karaganda, Kazakhstan
Serbia
Singidunum University Kumodraška, Kumodraška 261, Beograd, Serbia
Ukraine
- Dnipro — Smart Shelter. Ground Floor, Building 1, 72 Nauky Avenue. Dnipro, Ukraine
- Kyiv — Igor Sikorsky Kyiv Polytechnic Institute. Academic Building №18, 41 Politekhnichna Street. FIOT Hub Kyiv, Ukraine
- Lviv — DataArt Lviv. 5th Floor, 1 Smal-Stotskoho Street. Lviv, Ukraine
- Mykolaiv — Admiral Makarov National University of Shipbuilding. Department of IU&ST, 3 Buznyka Street. Mykolaiv, Ukraine
Proggy-Buggy Contest 2025
Programming Languages and Compilers
To solve any problem, create a console application and select a programming language from the drop-down list.
You can use the following programming languages: C, C++, Free Pascal, Java, Mono C#, Python, Ruby, PHP, JavaScript, etc.
Compilers
Perl 5.30.0
clang C 10.0 [-Wall -O2 -std=gnu11]
GNU C 9.4.0 [-Wall -O2 -std=gnu99]
GNU C++ 9.4.0 [-Wall -O2 -std=c++17]
GNU Fortran 9.4.0
GNU Prolog 1.4.5
GNU Fortran 9.4.0
GNU go 10.5.0
Python 2.7.18
Python 3.8.10
PHP 8.4.6
Mono C# 6.8.0
Mono Visual Basic .NET 6.8.0
.NET C# 8.0.408
.NET Visual Basic 8.0.408
Glasgow Haskell Compiler 8.6.5
Free Pascal 3.0.4
Java JDK 21.0.6
Kotlin 2.1.20
Ruby 2.7.2p137
Rust 1.75.0
Scala 2.13.13
NodeJS 18.17.1
JavaScript V8 version 10.4.0.1 [console: readline]
Winning Categories
The winner is the team who solves the maximum number of tasks with the lowest penalty.
The penalty is the total time used to solve a task, calculated as follows: the total time is the sum of the time consumed for each problem solved. The time consumed for a solved problem is the time elapsed from the beginning of the contest to the submission of the first accepted run, plus 20 penalty minutes for every previously rejected run for that problem. No time is consumed for a problem that is not solved. These rules are consistent with the International Collegiate Programming Contest (ICPC).
All the winners will be granted the Diplomas and Prizes.
We determine the winners in the following categories:
Additionally, we have these extra categories:
- Prize for the first correct answer to a problem with solution.
- Prize for the shortest correct answer to a problem with a solution.
- Prize for the first correct answer to a problem with no solution.
- Honorable Mention for the team or participant with the fewest penalty points.
Frequently Asked Questions
What are the requirements for contest participants?
Can I participate alone if I don't have a team?
How many people can be on a team?
Do individual participants and teams have different tasks?
Should a team be from the same city/country?
Do I need to know English to participate?
How do I obtain my login and password for participation?
How many computers can the team use?
Can I participate online if I registered to participate offline but can't come?
Can I use online resources like Google or ChatGPT?
What else do I need to participate?
What programming languages can I use when solving problems?
What if I can’t solve all the problems in 42 minutes?
Is it possible to solve problems in a different order or revisit previous solutions and correct them?
How are the tasks assessed?
The tasks are assessed according to the ACM ICPC rules. The winner is the individual participant or team that solves the maximum number of tasks with the lowest penalty.
The penalty is the total time used to solve a task, calculated as follows: the total time is the sum of the time consumed for each problem solved. The time consumed for a solved problem is the time elapsed from the beginning of the contest to the submission of the first accepted run, plus 20 penalty minutes for every previously rejected run for that problem. No time is consumed for a problem that is not solved.
What if a task has no solution?
The solution to this problem is the participant's program, which should display the following text on the console: "UNDECIDABLE."
An example of such a program in JavaScript:
console.log("UNDECIDABLE");
A solution to an UNDECIDABLE problem is evaluated in the same way as a solution to any other problem (whether correct or incorrect).
Suppose a participant attempts to cheat by submitting an 'UNDECIDABLE' response to each problem (taking advantage of the permission to submit multiple solutions to the same problem). To prevent such tactics, attempting to classify a solvable problem as 'UNDECIDABLE' results in a penalty of '-1' for that problem.
For example, if a participant has solved problems A, B, and C at a certain point in time and attempted to solve problem D as 'UNDECIDABLE' (which was solvable), then the number of problems solved by the participant would be 2 (1 + 1 + 1 - 1).
If the participant later correctly solves problem D, the score for problem D will be adjusted to 0 (-1 + 1).
In an exceptional scenario, if a participant solved all 13 problems through guesswork, two of which were unsolvable, and subsequently solved the remaining problems correctly, the total number of problems solved would be 2 (2 + 11 * (-1 + 1)).
Is there a system of penalties?
Yes. There are two types of fines:
- A penalty for guessing a problem lacks a solution instead of solving it to confirm. For more details, see the What if a task has no solution section.
- A penalty as an integral part of the final score for the solved problem. For more details, see the How are the tasks assessed section.
When will the results be available?
Will the winners be chosen separately for teams and individual participants?
No. Winners will be determined in the categories: Amateurs, Professionals, Superheroes:
- Honorary 1st place (Team or Individual Participant)
- Honorary 2nd place (Team or Individual Participant)
- Honorary 3rd place (Team or Individual Participant)
Additionally, we have these extra categories:
- Prize for the very first correct solution to a problem.
- Prize for the shortest answer to a problem with a solution.
- Prize for the first correct answer to a problem with no solution.
- Honorable Mention for the team or participant with the most penalty points.
- Honorable Mention for the team or participant with the fewest penalty points.