Perl to Python with Generative AI for SpiderRock
Read time: 4 mins
SpiderRock Platform is a technology provider based out of Chicago, Illinois, that creates and deploys trading workflows, innovative routing techniques, and risk management solutions. Their clients include large asset managers, proprietary trading firms and trading desks around the world.
SpiderRock’s platform is a multi-tenant, high-performance cloud-based trading system that helps institutional clients source liquidity intelligently and at scale across the global markets.
The client approached Version 1 Innovation & AI Labs for assistance with a large legacy codebase written in Perl that they were keen to convert to a more maintainable Python based solution.
The goal was to identify and implement an innovative conversion solution leveraging Automation and Artificial Intelligence Technologies to reduce time and improve accuracy compared to a manual process.
SpiderRock had a legacy codebase written in Perl, which became difficult to maintain and update. By converting the code to Python, the customer can leverage a more modern and actively supported programming language.
The key challenge of the project was the sheer volume of code that needed to be converted. The codebase consisted of 88 Perl files and over 35,000 lines of code. Manually converting this code would have been costly and time-consuming. If developers are unfamiliar with Perl it can introduce errors too which take time to diagnose and fix.
To solve this problem the team leveraged ChatGPT Plus, which helped accelerate the conversion process and increased overall accuracy. A baseline was established by manually converting Perl files of varying lengths, and five Perl files were then converted using ChatGPT. The translated files were validated by comparing them with the actual output files. The result was up to 87% less conversion time.
The PoV highlighted that the use of ChatGPT can result in significant time savings for the initial conversion process. While this looks promising it is not without limitations. There is a restriction on the length of code that can be processed, which can create bugs that have to manually fixed. For larger lines of code, breaking down the files into smaller parts can yield better outcomes when utilizing ChatGPT. Nonetheless, it remains a valuable resource for developers to improve their Perl/Python skills.
Real Differences, Delivered
Up to 87% less conversion time than for a manual process, saving significant resource.
Augmenting development using Generative AI: SpiderRock can employ ChatGPT to augment the developer’s capabilities when it comes to code conversion or understanding.
Easier Code Maintenance: Python has a more readable and expressive syntax compared to Perl, making it easier for developers to understand and maintain the code, saving the customer valuable time and money.
Future steps & planning: The Version 1 team has provided the next steps required to use generative AI for the conversion process.
About Version 1
Version 1 proves that IT can make a real difference to our customers’ businesses. We are trusted by global brands to deliver IT services and solutions which drive customer success. Our team of difference-makers work tirelessly to provide independent advice and deliver impactful changes to help our customers navigate the rapidly changing Digital-First world we live in. Our greatest strength is balance in our efforts to achieve Customer Success, Empowered People and a Strong Organisation, underpinned by a commitment to our values. We believe this is what makes Version 1 different and more importantly, our customers agree.
News & Insights
Blog: April 20, 2023
What is the Great GPT Tech Off? Version 1 is constantly on the lookout for innovative ideas and ways for its employees to build a culture they are proud to be a part of. In the first quarter of 2023,...
Read time: 9 mins OpenAI’s GPT-4 was released on March 14th 2023 and claims to be one of the best language model AIs in the market today. This is a tall claim given that GPT-4’s peers include Google’s...