Developers looking for guidance about APIs may wish to try a search engine prototype called Opiner to assess how their peers feel about specific programming interfaces, based on a limited set of data pulled from Stack Overflow.
Opiner is a sentiment-based search engine. At present, it only knows about technologies associated with the terms JSON and Java. But it can tell you, for example, that about 64 per cent of developers have expressed positive opinions about MongoDB and about 36 per cent have disparaged it. And it aggregates Stack Overflow comments so searchers can review the specific statements people have made about the technology.
The project was developed by Gias Uddin when he was working on his doctorate at McGill University and his PhD advisor, Foutse Khomh, associate professor at Polytechnique Montréal. Uddin is currently a senior data scientist at the Bank of Canada and he also participated in past research about the security risks of code copied from Stack Overflow.
"Using Opiner, developers can search an API by name (e.g., Google GSON) and see all the opinions about the API collected from Stack Overflow in summarized form," Uddin explained in an email to The Register.
"In seven user studies involving both [professional] and novice software developers, we found that Opiner was effective to assist developers to complete diverse development tasks, such as API selection, usage, [and so on]."
The project draws on work to automatically mine the opinions expressed by Stack Overflow users about APIs and to automatically summarize those written reviews. It's described in a previously published research paper, Automatic Summarization of API Reviews.
Flak overflow: Barrage of criticism prompts very public Stack Overflow apologyREAD MORE
In an interview with Stack Overflow, Khomh suggested Opiner can help bridge documentation gaps, because official documentation doesn't always tell developers how to use a given technology effectively. API documentation is often incomplete or missing, a problem Apple developers have been complaining about for years.
Asked about this, Uddin told The Register that the surveys conducted for his research "reveal that developers consider the API reviews in Stack Overflow as a form of API documentation, especially because the reviews offer insights from real-world usage of the APIs, which traditional documentation does not offer."
He pointed one developer who, in response to a survey question, said he seeks out APIs reviews "because those offer 'possibility to get an answer to a specific question (which may not be explained in other sources like the API's documentation).'"
Uddin said he has not spoken with Stack Overflow about improving Opiner further, but that remains a possibility. "I do have plans to expand this research beyond what we have," he said, noting his work obligations. "The major pending question has been the allocation of resources. Once that is addressed, the expansion will take place." ®