Léopold and Alexandre are both ENSTA Bretagne engineering students with military status. Léopold is currently in his 1st year while Alexandre is in his 2nd year (specialization: Digital systems and Security). As a big fan of programming and cyberdefense, Alexandre particularly founded ENSTA Bretagne’s cyber club "ENS7UXN3T" with which he has already won the BreakTheCode challenge in 2019 and 2020.
He tells us about this action-packed day.
How did this hackathon unfold?
The event was organized over half a day by Accenture, in partnership with Isograd, entirely virtually: that’s why they called it a “hackathome”.
It began with an hour-long conference on the impact digital technology is having on pollution and CO2 emissions in the atmosphere. After these presentations, the organizers explained the subject to us. For four hours, the teams had access to different scenarios as well as a scoreboard which was updated every 5 minutes. A green score meant the team had secured the best score for the scenario in question, compared with the other teams.
What subject did you work on?
Imagine a server catalog with different capacities (CPU, RAM, disk space). During production and use, this is more or less polluting (CO2 released per year) for each scenario outlined. The aim was therefore to come up with a configuration for operating all of the services available within a scenario, over a given number of years, with the least amount of CO2 possible released into the atmosphere.
In this challenge, we therefore had to write algorithms in the language of our choice with a view to finding a configuration that met the specifications (all of the services used CPU, RAM and disk space and had to be able to obtain all three of these resources in their entirety on the same server), with as little CO2 released as possible.
The scoring system was simple: the best proposal in terms of kg of CO2 won a million points, and the other solutions obtained a proportional score. The scores of each scenario were added together to attain the team’s final score. Since there were six different scenarios, the maximum score that could be achieved was 6 million points, which our team managed to reach!
Can you explain what your tasks in the challenge involved?
Our team (which included Léopold, YuNong, a student at ESILV, Adnane, a student at Centrale Supelec and myself) quickly shared out the tasks. I was in charge of designing an abstraction layer for processing the raw data supplied by the scenario and for producing a file matching the configuration obtained that could be understood by the scoring platform. At the same time, the other team members looked for "strategies" for filling the servers with services. This is a bit like a bin packing problem, but by adding a whole set of restrictions.
What have you taken away from this experience?
This hackathon was very full-on. In the space of just three hours, we had to optimize different scenarios ranging from 3 to nearly 100,000 services! We therefore had to think not only about strategies for winning the best score, but also about how to optimize programs so as to end up with these configurations (in other teams, their programs took nearly 15 minutes to run, while ours took 5 minutes). We were quick to take the lead during the first hour and spent the next two hours trying to stay in the lead, against the other teams who were getting ever closer to our score.
The main thing I took away from this event is that the impact that digital technology has on the environment and the world around us is really quite significant. Unfortunately, this fact isn’t a priority for the companies working in the tech industry as a whole. I think that this hackathon made us all realize that it is up to us, the next generation of developers/engineers, to make sure that things change within companies, and that we are beginning to think in terms of ecological impact rather than in terms of raw performance.