The Linux Foundation Projects
Skip to main content
By | January 22, 2020

LF Energy Coding Collaboration: January 2020

Written by Justin de Hoop, Alliander

On January 13-15, 2020  in Paris, France, a team of IT specialists at the transmission and distribution level engaged in a collaborative coding event to create open source software for asset monitoring. RTE, Alliander and TenneT worked together through this three-day immersion to learn more about each other’s projects and to gain understanding about joint investment and how to leverage each other’s software talent for faster innovation and uptake.

Curious about the results? Have a look at the daily reports:

Day 1:
Day 1 begins Monday morning at a beautiful location on the famous Champs-Élyseés in Paris. For the next 3 days this will be the home base for the open source collaboration between RTE, TenneT and Alliander. After getting to know each other and some short presentations it is time for the daily stand up. We gather around a full kanban board and divide the tasks. After everything is hooked up and all systems can be accessed it’s time to get started, here we go!

In order to make sure all applications can communicate seamlessly, collaboration between the developers is crucial. It immediately becomes apparent that this is why we came to Paris. After a nice lunch and a walk around the Arc de Triomphe it’s back to an afternoon of coding. The hard work pays off and by the end of the day we are able to celebrate our first success! Simulated messages are collected by Grid eXchange Fabric (GXF) and published on Kafka, ready to be picked up and processed by the other applications. And that’s exactly what will we do, tomorrow. On to day 2!

Day 2:
Despite the ongoing strikes everybody manages to reach the location on Tuesday morning. With a cup of coffee and a fresh croissant in hand, the day starts with a mini retrospective. The retrospective reveals that everyone is very happy with the way we are working together and they are eager to get started on another day of coding. But it’s not all good news as a technical challenge presents itself. For some reason Spark in combination with Kafka, needed for the data analysis, doesn’t seem to be working. The daily stand up is used to discuss how the problem can be solved and then we get started. When it’s almost time to go for lunch the problem still isn’t fixed. But there is other good news; OperatorFabric is now able to display the messages that are posted on Kafka by GXF. This means the first two open source programs are coupled!

After lunch a couple of options to get the analysis part working are discussed. A group of developers gathers around a whiteboard, draws up a solution and sets out to realize it. Meanwhile preparations are being made for tomorrow’s demo. There is not a lot of time left, what will be able to show? We’ll find out tomorrow, on to day 3! But not before day 2 is ended with a nice group dinner.

Day 3
Even after Tuesday nights dinner, everyone manages to be at the location in time for the third and final day of coding. Thankfully, because there is still a lot to do. We agree to stop coding at 11am in order to do a dry-run in preparation of the demo. While the deadline moves ever closer, Olivier Grabette, member of RTE’s board of directors, shows up to show his support to the developers and the open source way of working.

At 11:30, 30 minutes later than planned, the last tasks on the kanban board are moved to ‘done’, it’s time for the first dry-run. Doing this final rehearsal turns out to be a good idea as the analytics solution (without Spark) doesn’t quite seem to be working the way we want it to. The developers set out for the final push and with just a minute to spare the traffic light turns green, then orange, then red, success!

After establishing the online connections for the audience back in the Netherlands the demo is started. After a short introduction on the ‘what’ and ‘why’ of this shared coding event it’s time to show the results. With more than a 1.000 messages per minute, several days of transformer load and temperature values are simulated. The values are displayed on a substation diagram in real-time. In the diagram, next to the transformers, are also 2 traffic lights which indicate the status of the transformer. On day 3 of the simulation 1 of the transformers starts to show anomalies. The measured temperature does not correspond with the value expected in the analytics and the traffic light turns orange. As the value further deviates the traffic light turns red. At this time the system operator is notified through notification in OperatorFabric. This open source application shows a timeline with relevant notifications for the system operator. The application allows him to open the notification and see all relevant information associated with this notification.

The demo is concluded by looking back on the past 3 days of collaboration. It is clear that being together in 1 location was really valuable and further opens source collaboration holds a lot of potential. While everyone speculates on the location of the next collaborative coding event it’s time to thank each other and say goodbye. Until we meet again, maybe at the open source bootcamp at Alliander on February 6th.