Perl to Python with Generative AI for SpiderRock
Read time: 4 mins
Client Profile
Customer Name: SpiderRock
Established: 2006
Customer Since: 2021
Employees: 200
Sector: Financial Services
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.
Solution
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.
Outcomes
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.
Ready for your transformation?
We do things differently because our people are our difference. We make decisions that are right for our customers, giving them the solutions and advice we would want to receive.