Wednesday, November 8 the Masters of Java 2023 took place in Veenendaal. The annual code challenge for Java Developers of all levels. Organized by NLJUG with, First8 Conclusion, as the main sponsor responsible for the software and the tasks.
Article by: First 8 Conclusion
65(!) enthusiastic developers, divided into 42 teams, were eager to get started. For some, it was an annual reunion, while for others, it was their first time, creating an air of excitement. What kind of tasks would they face? What knowledge would they need?
The Assignments
Participants received 5 entirely different assignments. Each task had a time limit of 30 minutes. You really needed your hardcore Java skills as the tasks ranged from working out algorithms to using both well-known and lesser-known Java APIs. Googling wasn’t allowed, but the duos had access to an extra keyboard.
For each task, participants received a concise Java project in which they could only modify a single file.
Smörgåsbord of equals stuff
A set of three small puzzles revolving around the equals() function in Java. Not all equals() functions are… equal? The three assignments were solved in different sequences depending on the team’s experience.
The Browser Accept-Language Header
The Accept-Language header is a protocol piece to select the correct language on a website. The negotiation occurs via the browser’s Accept-Language header. The task was to build this. The fastest team quickly assembled it manually, while the second team was smarter (but still slower), opting to use the existing Java API.
Pokemon Calculator
In this task, participants had to create a bug. In the famous Pokemon games, there is a calculator with odd behavior when certain languages are selected. Replicating this bug turned out to be quite a challenge, as only three teams managed to get it right in the end.
MoJ Game Server
Fortunately, it turned out that teams were better at fixing bugs than creating them. In this self-diss, teams experienced what it’s like to be on the MoJ organization side. Last year didn’t go entirely smoothly, and in this task, teams had half an hour to find a bug in the MoJ Game Server.
Sudoku solver
A classic: implement a solver for Sudoku by seeking singles, pairs, triples, and quads. They could only use the standard Java SDK; no framework knowledge was necessary. By using some provided tests, teams could check their solutions and sometimes earn extra points. If they thought they had the right solution, they could submit it. If the assignment was correct, they received points for the remaining time plus a bonus.
The Results
As the final task began, the winner was more or less known, but there was certainly suspense for the second place and beyond. The task caused shifts in the rankings. The third-place team from last year became this year’s winner. Last year’s winner landed in second place, and there was a newcomer in third.
- Thomas Withaar and Maarten van der Zwaart | Team OVSoftware | 8,352 points
- Jasper van Merle | Team camel_case | 6,765 points
- Jaap Beetstra and Jeroen Rakhorst | Team Exception Eradicators | 5,938 points
Congratulations to all for this remarkable achievement!
And to the other participants: thank you for your participation, and hopefully, we’ll see you next year at Masters of Java 2024.
First8 Conclusion – Masters of Java 2023 Team
Curious about the tasks? You can find them on First 8’s Github.
Photos and video were taken by Tijn Dekkers. You can view the photos here.
A huge thanks to everyone for their enthusiasm, dedication, and of course, fun during this day. We are already looking forward to Masters of Java 2024!