Higher Preference Of PHP Over JAVAAug 07, 2015
The U.S. General Accounting Office(GAO) developed its own Web-based survey application using a combination of the open source PHP scripting language and the commercial C language. The GAO chose PHP over Java for a couple of reasons, not the least of which was security.
"Java had some security issues for us, so that was off the table. PHP was just a better fit for us because of its ability to embed things with HTML pages," says Kevin Dooley, senior IT specialist at the GAO and mastermind behind its survey application. "And of course it was free to try out, which makes a big difference."
As a congressional agency, the GAO conducts Web-based surveys, polling anywhere from 50 to 22,000 government employees at a time, as well as carrying out audits of all the executive agencies. In the mid-1980s, the GAO used its DOS-based Computer-Aided Telephone Interviewing system to do this work. When the agency wanted to upgrade the system, it researched systems built around commercial software and found nothing that fit its needs — until Dooley discovered the more attractive open source combination of the MySQLdatabase and PHP.
What clenched the decision was that many agencies the GAO interacts with do not allow Java on browsers for security reasons, nor do they allow cookies to be stored on machines.
“That really narrowed down the field when we were looking for Web survey software, especially when you are looking to deploy that software on Linux-based machines,” Dooley explains. “So this is why we developed our own solution.”
Using the C language, Dooley wrote a compiler that reads a questionnaire script form that generates “a ton” of PHP code. The software is hosted largely on two-processor, Intel-based servers running various distributions of Linux, and four contractors administer the Linux-based server farm full-time.
“We have people at remote locations around the country, like forest rangers with dial-up connections from the middle of Alaska,” Dooley adds. “So we were also looking for software that is very lightweight, that only produces HTML pages. We don’t need the heavy Java-based applications that have to get piped through before they can start running.”