The Marginal Generator's daily dispatch is a long-term, part-time project to combine my interest in the UK's energy system with a desire to learn the Python programming langauge. Here I provide a brief history of the newsletter, crediting all the tools and advice that makes it possible.
It started with the original Raspberry Pi (2012), no idea what to do with it and the desire for some instant gratification. After stumbling across Matplotlib and NumPy (and at a later date pandas) I thought a fun way of learning Python would be to visualise GB's electricity system using Matplotlib (at the time I was an Economist working for the UK Government's Department for Energy and Climate Change, which subsequently became part of the Department for Business, Energy & Industrial Strategy).
I started with data provided by Elexon through the Balancing Mechanism Reporting Service (BMRS). Very slowly I built a portfolio of code which generated a range of Matplotlib charts on electricity generation, demand, the balancing system and energy prices. The project developed further into finding a way of disseminating the charts in an informative, low cost way to colleagues. I settled on a daily email newsletter (which also required learning some basic HTML, and navigating the slightly different way that all email readers render it).
This is the core of the project today. The Pi downloads a series of data every night, it is processed and cut using a combination of NumPy and pandas code, before Matplotlib code generates the charts. The Pi publishes the charts onto the cloud before circulating the email. Over time the newsletter's content has expanded to include data beyond that published by Elexon, backend improvements, as well as a few redesigns (most recently adopting a new name).
As this is a personal project the newsletter can only be updated and maintained when I have the time (and since I started I've gained a wife and child, and therefore lost nearly all my free time). Feedback is welcome, please do get in touch, but updates and bug fixes are sporadic.
Rob (Aug 2020)