Jim Laredo
YOU?
Author Swipe
View article: OASBuilder: Generating OpenAPI Specifications from Online API Documentation with Large Language Models
OASBuilder: Generating OpenAPI Specifications from Online API Documentation with Large Language Models Open
AI agents and business automation tools interacting with external web services require standardized, machine-readable information about their APIs in the form of API specifications. However, the information about APIs available online is o…
View article: Analyzing source code vulnerabilities in the D2A dataset with ML ensembles and C-BERT
Analyzing source code vulnerabilities in the D2A dataset with ML ensembles and C-BERT Open
Static analysis tools are widely used for vulnerability detection as they can analyze programs with complex behavior and millions of lines of code. Despite their popularity, static analysis tools are known to generate an excess of false po…
View article: Incorporating Signal Awareness in Source Code Modeling: An Application to Vulnerability Detection
Incorporating Signal Awareness in Source Code Modeling: An Application to Vulnerability Detection Open
AI models of code have made significant progress over the past few years. However, many models are actually not learning task-relevant source code features. Instead, they often fit non-relevant but correlated data, leading to a lack of rob…
View article: Follow the Successful Herd: Towards Explanations for Improved Use and Mental Models of Natural Language Systems
Follow the Successful Herd: Towards Explanations for Improved Use and Mental Models of Natural Language Systems Open
While natural language systems continue improving, they are still imperfect. If a user has a better understanding of how a system works, they may be able to better accomplish their goals even in imperfect systems. We explored whether expla…
View article: A Goal-Driven Natural Language Interface for Creating Application Integration Workflows
A Goal-Driven Natural Language Interface for Creating Application Integration Workflows Open
Web applications and services are increasingly important in a distributed internet filled with diverse cloud services and applications, each of which enable the completion of narrowly defined tasks. Given the explosion in the scale and div…
View article: VELVET: a noVel Ensemble Learning approach to automatically locate VulnErable sTatements
VELVET: a noVel Ensemble Learning approach to automatically locate VulnErable sTatements Open
Automatically locating vulnerable statements in source code is crucial to assure software security and alleviate developers' debugging efforts. This becomes even more important in today's software ecosystem, where vulnerable code can flow …
View article: Learning GraphQL Query Cost
Learning GraphQL Query Cost Open
International audience
View article: Data-Driven AI Model Signal-Awareness Enhancement and Introspection
Data-Driven AI Model Signal-Awareness Enhancement and Introspection Open
AI modeling for source code understanding tasks has been making significant progress, and is being adopted in production development pipelines. However, reliability concerns, especially whether the models are actually learning task-related…
View article: Data-Driven and SE-assisted AI Model Signal-Awareness Enhancement and Introspection
Data-Driven and SE-assisted AI Model Signal-Awareness Enhancement and Introspection Open
AI modeling for source code understanding tasks has been making significant progress, and is being adopted in production development pipelines. However, reliability concerns, especially whether the models are actually learning task-related…
View article: Software Vulnerability Detection via Deep Learning over Disaggregated Code Graph Representation
Software Vulnerability Detection via Deep Learning over Disaggregated Code Graph Representation Open
Identifying vulnerable code is a precautionary measure to counter software security breaches. Tedious expert effort has been spent to build static analyzers, yet insecure patterns are barely fully enumerated. This work explores a deep lear…
View article: Learning GraphQL Query Costs (Extended Version)
Learning GraphQL Query Costs (Extended Version) Open
GraphQL is a query language for APIs and a runtime for executing those queries, fetching the requested data from existing microservices, REST APIs, databases, or other sources. Its expressiveness and its flexibility have made it an attract…
View article: Probing model signal-awareness via prediction-preserving input minimization
Probing model signal-awareness via prediction-preserving input minimization Open
This work explores the signal awareness of AI models for source code understanding. Using a software vulnerability detection use case, we evaluate the models' ability to capture the correct vulnerability signals to produce their prediction…
View article: An Assessment of Intrinsic and Extrinsic Motivation on Task Performance in Crowdsourcing Markets
An Assessment of Intrinsic and Extrinsic Motivation on Task Performance in Crowdsourcing Markets Open
Crowdsourced labor markets represent a powerful new paradigm for accomplishing work. Understanding the motivating factors that lead to high quality work could have significant benefits. However, researchers have so far found that motivatin…
View article: D2A: A Dataset Built for AI-Based Vulnerability Detection Methods Using Differential Analysis
D2A: A Dataset Built for AI-Based Vulnerability Detection Methods Using Differential Analysis Open
Static analysis tools are widely used for vulnerability detection as they understand programs with complex behavior and millions of lines of code. Despite their popularity, static analysis tools are known to generate an excess of false pos…
View article: A principled approach to GraphQL query cost analysis
A principled approach to GraphQL query cost analysis Open
International audience
View article: A Principled Approach to GraphQL Query Cost Analysis
A Principled Approach to GraphQL Query Cost Analysis Open
The landscape of web APIs is evolving to meet new client requirements and to facilitate how providers fulfill them. A recent web API model is GraphQL, which is both a query language and a runtime. Using GraphQL, client queries express the …
View article: Exploring Software Naturalness through Neural Language Models
Exploring Software Naturalness through Neural Language Models Open
The Software Naturalness hypothesis argues that programming languages can be understood through the same techniques used in natural language processing. We explore this hypothesis through the use of a pre-trained transformer-based language…
View article: Learning to map source code to software vulnerability using code-as-a-graph
Learning to map source code to software vulnerability using code-as-a-graph Open
We explore the applicability of Graph Neural Networks in learning the nuances of source code from a security perspective. Specifically, whether signatures of vulnerabilities in source code can be learned from its graph representation, in t…
View article: A Principled Approach to GraphQL Query Cost Analysis Research Paper Artifact
A Principled Approach to GraphQL Query Cost Analysis Research Paper Artifact Open
Artifact for ESEC/FSE'20 research paper, "A Principled Approach to GraphQL Query Cost Analysis".
View article: Alan-Cha/graphql-complexity-paper-artifact: Final
Alan-Cha/graphql-complexity-paper-artifact: Final Open
Artifact for ESEC/FSE'20 research paper, "A Principled Approach to GraphQL Query Cost Analysis".
View article: Permissioned Blockchain Technologies for Academic Publishing
Permissioned Blockchain Technologies for Academic Publishing Open
Academic publishing is continuously evolving with the gradual adoption of new technologies. Blockchain is a new technology that promises to change how individuals and organizations interact across various boundaries. The adoption of blockc…
View article: Permissioned blockchain technologies for academic publishing
Permissioned blockchain technologies for academic publishing Open
Academic publishing is continuously evolving with the gradual adoption of new technologies. Blockchain is a new technology that promises to change how individuals and organizations interact across various boundaries. The adoption of blockc…
View article: Opportunities in Software Engineering Research for Web API Consumption
Opportunities in Software Engineering Research for Web API Consumption Open
Nowadays, invoking third party code increasingly involves calling web services via their web APIs, as opposed to the more traditional scenario of downloading a library and invoking the library's API. However, there are also new challenges …
View article: Statically Checking Web API Requests in JavaScript
Statically Checking Web API Requests in JavaScript Open
Many JavaScript applications perform HTTP requests to web APIs, relying on the request URL, HTTP method, and request data to be constructed correctly by string operations. Traditional compile-time error checking, such as calling a non-exis…