We Turned to an Expert and Asked What a Java Error Is
Just before the clock hit seven in the morning on Tuesday, May 14, several news organizations reported sudden and sharp discrepancies in the election returns shown in the transparency server shared by the Commission on Election (COMELEC) to the media.
In a tweet by GMANewsOnline, national election returns at 5:20 a.m. were at 92.89%, by 5:50 a.m., They dropped to 49.76%. Thirty minutes later however, they went back to 92.89%.
COMELEC Commissioner Rowena Guanzon had a simple explanation for the incident: “Nagka-Java error,” she told GMANews in an interview. (There was a Java error.)
Guanzon associated the server problem with a malfunctioning phone, “it only needed to be restarted,” she said. However, the commissioner did not divulge exactly what kind of problem the program encountered.
So what exactly is Java? On its website, Java is defined as a programming language, a combination of which can run websites and programs. Based on Guanzon's statement, it can be deduced the program transmitting the election results to the transparency server runs on Java.
According to an info site generated by the University of Pennsylvania’s Department of Computer and Information Science, there are generally three kinds of “Java errors” encountered by programmers when coding a program: syntax errors, or when the code written in the program has missing variables or characters, just like how sentences may be incomplete, and thus, have unclear messages; runtime errors, which are like what their name suggests: problems encountered while the program is running; and logic errors or what you call a “bug”, “when the program runs and does the wrong thing.”
Tracy Arciaga-Li of BlockDevs Asia, an organization of software developers and tech entrepreneurs, said Guanzon's statement is “too generic” and fails to describe the kind of technical problem the COMELEC encountered in its server.
“In programming, once you encounter an error you have to know the specific error. Java is a platform, and errors in Java or in any other platforms can be caused by so many things,” Arciaga-Li told Esquire Philippines. “It could be a timeout error, it can be any run time error. Errors can occur if the application was not designed properly.”
Arciaga-Li, who is a software engineer, added “a quality application should have been tested for different scenarios.”
Prior to the incident, the transparency server had already experienced a seven-hour delay in transmitting results. According to Rappler, at 6:15 p.m on May 13, election day, the server only showed the results of 0.4% of the total number of precincts. It was already at 1 a.m. the next day when it showed results of the majority of precincts nationwide or 90% of the total.