Analysis: given the increasing reliance on software for public administration, do we need a government-wide figure to provide advice and guidance?

By Christophe MeudecIT Carlow

In 2011, entrepreneur, investor and software engineer Marc Andreessen famously declared that "software is eating the world". Clearly, this has continued unabated ever since and it is hard to find an area of our lives remaining untouched by algorithms. We are increasingly surrounded by smartphones and laptops. Everyday devices are commonly being marketed as smart because they contain microprocessors and are being controlled by software. Amazon UK current lists over 500 smart doorbells.

But this is only the most obvious part of the invasion. Businesses and governments also run on algorithms and they can no longer function without efficient, accurate and nimble software as a whole new digital world has become a reality in a few short decades.

Yet this new reality is widely misunderstood, even at the most basic level: We hear of 'computer errors', an 'irregular software occurrence' in the Irish Air Traffic Control system and millions of Facebook users having no idea they're using the internetThese confusions are not helped, of course, by the tendency of salespersons to overuse technical terms for marketing reasons such as Web 2.0, cloud computing, Artificial Intelligence, blockchain, Internet of Things etc. Even the humdrum concept of an 'algorithm' has recently been elevated in the media as a fresh discovery.

We need your consent to load this rte-player contentWe use rte-player to manage extra content that can set cookies on your device and collect data about your activity. Please review their details and accept them to load the content.Manage Preferences

From RTÉ Archives, David McCullagh reports for RTÉ News in 2009 on the discussion by the then Government to scrap the controversial electronic voting machines 

But these slippages in languages are not merely academic concerns as they reveal a deep misunderstanding of our new digital reality. This incomprehension, especially by our political decision-makers, has dire consequences for the efficient running of the country. When the Irish government wasted over €50 million in 2009 by believing contractors who told them that electronic voting would make them look good, they displayed an evident lack of understanding in our new situation. Software is not foolproof, software is hackable, software is not cheap.

A similar misplaced blind enthusiasm for software solutions was evidenced in the recent Leaving Cert calculated grade debacle. The clarifications given by ministers to explain the software errors reveal a deep misunderstanding of the nature of software as a product and of its development process at the highest level of decision making. When errors in calculated grades were detected, the fact that the error originated in only one line of code out of 50,000 was widely reported as some kind of supporting evidence of a minor problem in its development process.

All software developers know that newly written software code contains errors and even a single wrong character among millions can play havoc with software accuracy and reliability. This is why thorough testing as well as code reviews must always be applied before putting software into use. No-one would fly in planes if their software had not been tested, yet it appears that this fundamental practice was overlooked in this instance.

We need your consent to load this rte-player contentWe use rte-player to manage extra content that can set cookies on your device and collect data about your activity. Please review their details and accept them to load the content.Manage Preferences

From RTÉ Radio 1's News At One, RTÉ Political Correspondent Micheál Lehane on the errors found in Leaving Cert calculated grades system

When Minister for Education Norma Foley defended the Leaving Cert calculated grade process in the Dail, she said that the Irish Education Research Centre provided quality assurance and verification by running the data in parallel with the contractor. This showed a common blatant incomprehension in how software should be validated before deployment. Running the same code with the same data (even on different continents!) will never reveal the presence of defects in software: it is completely irrational and illogical to expect otherwise; a perfect fit of the definition of insanity.

This dissonance was further heightened by the explanation from Minster Eamon Ryan that 'the predicted results were very close and all the analysis that was done concluded that was what to be expected; the coding error was not seen at that stage back in August'. Relying on overall statistical analysis to verify software is extremely dangerous. It is similar to a bank saying that their mortgage calculations are correct even if 10% are too high and 10% too low because, overall, they balance each other.

The consequences of this latest fiasco still has to unravel fully. While the social and financial impacts have yet to be estimated, it is certain to have caused an enormous increase in stress in thousands of students and their families, and teachers. Lives have been changed forever. It has surely severely undermined public confidence in any such systems.

We need your consent to load this rte-player contentWe use rte-player to manage extra content that can set cookies on your device and collect data about your activity. Please review their details and accept them to load the content.Manage Preferences

From RTÉ Archives, Fergal Bowers reports for RTÉ News in 2005 about the scale of problems with the HSE's PPARS computer system 

Failed tech projects are legion because these projects go wrong in all businesses and in all countries. This is not new. We could have mentioned the PPARS computer system commissioned by the HSE which was halted in 2005 after costing about €200 million. It is also not an issue unique to the Irish government.

As the importance of software grows in all our lives, this fundamental misunderstanding of what software is, never mind how it should be developed, will increasingly have negative consequences. It is reasonable to ask what can be done to ensure that the Irish state can embrace the digital age with competence and confidence. It is not reasonable for non-software engineers to learn by trial and error by making every conceivable software development mistake, while ignoring 50 years of collective learning. 

The recent addition of Computer Science to the Leaving Cert curriculum is a welcome development, but will only ever impact a minority. While we should strive for better ubiquitous education in the fundamental nature of software, any new such improvement would take too much time to have a discernible impact on high-level decision making.

What should be considered urgently is in-house, impartial, software development expertise that ministers and governmental agencies can rely on

The idea of making all software code used by government agencies open source, as was done for the Irish Covid-19 contact-tracing app, so that it can be scrutinised by everyone is a sensible one. This is not just for reliability and correctness reasons, but also because citizens should have the right to see how algorithmic decisions that are impacting so much of their lives are made. But this requirement in itself would not be sufficient, as it can only be done once the code has been written, which is often too late to combat costly project failure or overselling by hired consultants.

Instead, what should be considered urgently is in-house, impartial, software development expertise that ministers and governmental agencies can truly rely upon for advice on any software related matter. In the same way that the government relies on the Office of Public Works for advice on physical properties and infrastructures, or the Chief Medical Officer for advice on public health matters, now is the time to establish an Office of Public Software, headed by a Chief Software Officer, for advice on all things related to software. Failing this, successive Irish governments are bound to repeat the mistakes of the past ad infinitum.

Dr Christophe Meudec is a Software Engineering academic at the Institute of Technology Carlow.


The views expressed here are those of the author and do not represent or reflect the views of RTÉ