OpenRewrite: Where the code fixes itself (plus all the dependencies)
Details
ABOUT THE SESSION
Automated software refactoring with OpenRewrite and OpenAI
The software industrial revolution has arrived. Software is now 80% open source and third-party and 20% proprietary code that stitches it together into business-critical applications. We are challenged with the ongoing evolution of increasingly large and diversely composed codebases and ecosystems. Dependencies change frequently and evolve at their own pace. Security vulnerabilities can be introduced at any time by anyone. Not updating regularly leads to critical bugs, performance, and security issues.
In this talk, we’ll introduce OpenRewrite, an open-source, automated refactoring and dependency management technology born at Netflix in 2016. It’s built on manipulating the Lossless Semantic Tree (LST) representation of code with recipes (programs) that result in 100% accurate style-preserving code transformations. It is a rule-based, authoritative system.
We’ll also show you how this system can benefit from the suggestive authorship of generative code AI. We can leverage the OpenAI API to assist with code transformations in OpenRewrite recipes. However, there is a tradeoff between creating recipes faster with OpenAI versus accuracy of the recipe because of the probabilistic nature of generative AI and the potential for hallucination. Developers will have to be more diligent checking the transformed code in these instances. We will also show how OpenAI can be used to process the LST, performing in code classification problems and providing natural language descriptions of errors.
OpenRewrite on GitHub: https://github.com/openrewrite/rewrite
Documentation: https://docs.openrewrite.org/
OpenRewrite community Slack: https://join.slack.com/t/rewriteoss/shared_invite/zt-nj42n3ea-b~62rIHzb3Vo0E1APKCXEA
