The Search for a Transparent National Budget
Since September, I’ve been working on a fascinating project to create an online interactive visualization of the Georgian Budget (it’s currently in Beta, so let us know if you find any bugs). I’m a web developer at JumpStart Georgia, and my colleagues and I have spent many hours making sense of budget data that we obtained from the Ministry of Finance (MoF). Of all the projects I’ve worked on at JumpStart, this has been the most fulfilling, both because it’s presented me with some difficult technical challenges, and because our goal seems worthwhile. After all, it’s just common sense: the average Georgian citizen (or any citizen, for that matter) should have an easy way to learn about their government’s spending habits.
Last week, my colleague Nino Macharashvili and I had the privilege to meet with representatives of the Ministry of Finance, including the Deputy Minister of Finance, and discuss the budget data we used to create our online data portal. We showed the Ministry officials our portal and explained how we hope it will help journalists and others to engage with Georgia’s national budget.
We were delighted to hear that the Ministry plans to build their own budget data portal and to provide access to the country’s official budgetary data via an application programming interface (API). If you don’t know what that is, don’t worry—I’ll explain what an API is in this blog post, and why my colleagues and I hope that the government will follow through and create an official budget API.
When Nino began work on this project last year, she sent the government Freedom of Information (FOI) requests to obtain financial data about the Georgian budget in a format that was easy for us to work with. All of the Georgian government’s budget data is currently available online, on the sites mof.ge and treasury.ge. However, data transparency is not solely about making data available; it is also about the formats in which data is released. The budget documents available for download via the government’s sites are all PDFs, which are notoriously difficult to work with. Luckily, most of the data we received—monthly and yearly financial data about Georgia’s overall budget, its agencies, and the agencies’ programs—was in spreadsheet format. My colleagues Jason Addie and Eric Barrett managed to extract the rest of the data we needed from the government’s PDFs with some technical voodoo.
Having obtained this data, I set about creating an automated process for cleaning and preparing it for use on our data portal. Our researcher Teona Tomashvili translated names of hundreds of programs and agencies into English, so that non-Georgian speakers could use our portal as well. After some behind-the-scenes work that involved a whole lot of calculation, merging, and headaches, we were able to gain insight into the nation’s finances over the past five years.
When Nino and I met with officials from the Ministry of Finance, they expressed their concern to us that the data on our site could go out of date. Our plan from the beginning was to send periodic FOI requests to the government and update our site with new data as we receive it. The officials explained to us that the Ministry of Finance often revises the financial info it has already published—both how much they plan to spend and how much was actually spent. Sometimes, they said, they publish this new data in new documents, while at other times, they simply replace the old documents that they had previously published.
The officials at the Ministry shared their opinion with us that it is JumpStart’s responsibility to ensure that all of the data on the budget data portal is up to date. They suggested that we hire someone whose job it will be to check that the data is always consistent with official documents. On the face of things, this might seem like a reasonable request. We created the data portal—isn’t it our job to make sure the data is the latest available?
My colleagues and I disagreed with this assertion for a couple reasons. Small organizations like JumpStart do not have the resources to hire someone simply to track changes in the government’s budget data. If we were to automate this process of double checking, then we would have to setup a script to download all budget data PDFs every day, extract their data (remember, it’s difficult to work with PDFs), and compare their data with our database. Were the government to change the locations or formats of the PDFs, the automated process would fail; and besides, our data would only be up to date once every day.
More importantly than lack of resources, we don’t believe that it is JumpStart’s responsibility to track these changes. We will do our very best to keep our data up to date, of course. But when the government revises its own budget data, they cannot reasonably expect every single person who ever downloaded a budget document from a government website to know that the data can change, or to always check for updated data.
Remember that thing I mentioned a while ago called an API? Well, an API would solve this exact problem in an ideal manner for all parties involved. All an API would mean in this case is that any person with some technical skills could use the internet to programmatically ask the government questions like, “How much was spent by the Administration of the President of Georgia during each month since 2012?”, or maybe, “How was Agriculture spending divided among programs in 2016?” An API would provide access to the most up-to-date, official Georgian budget data. Other governments create APIs as well—APIs from around the world cover such topics as health in the UK, tourism in Estonia, and my personal favorite, the US’s data on meteorite landings. If the Ministry of Finance lacks the time and resources to create a custom budget API at this moment, then they can take the intermediate step of publishing their data in read-only Google Spreadsheets, which have a built-in API and the ability to view the revision history.
If the Georgian government creates a well-designed budget API, we will gladly hook it up to our portal, so that we can show everyone who enters our site the most up to date information. This kind of direct access to such important financial data would be a fantastic development not just for our site but for the nation. Until that time comes, we will continue to issue periodic FOI requests to obtain newly updated data for our site.
If the Georgian government does create an official budget API, it will probably make me a little sad, because a lot of the code I’ve written over the past half year will be useless. Yet, it won’t have been a waste, because we’re optimistic that this budget portal will encourage the Ministry of Finance to improve the public’s access to their data. To be truly transparent, the Georgian government would do well to make all of its data public (excluding private and classified data), in formats that are accessible and standardized. An official budget API would be a great place to start.