An experiment is underway to use AI to translate the application from GTK2 and OpenGL to GTK4 and Vulkan

Christian Schaller, head of the Fedora Desktop Team and the desktop systems development group at Red Hat, published the results of an assessment on the suitability of large language models in the development of graphical applications for Linux. As an experiment, he used the AI assistant Claude to translate the outdated graphical application Xtraceroute to modern technologies.

The Xtraceroute application, which visualizes the path of network packets on a 3D globe, was originally written using GTK1 and OpenGL and was ready to be ported to GTK2 in the early 2000s, but it hadn’t been updated for 20 years. Thanks to the use of the AI assistant, it took Christian about five hours to port this application to GTK4 and the Vulkan graphics API.

Previously:

An experiment is underway to use AI to translate the application from GTK2 and OpenGL to GTK4 and Vulkan

Now:

An experiment is underway to use AI to translate the application from GTK2 and OpenGL to GTK4 and Vulkan

Then Christian utilized AI to create a new application based on the prepared port, demonstrating the locations of Red Hat offices on the globe and displaying company news at the bottom of the window. Christian also suggested using AI to automate the verification of GNOME Shell extensions and to generate patches considering the changes made in new releases of GNOME Shell.

An experiment is underway to use AI to translate the application from GTK2 and OpenGL to GTK4 and Vulkan

According to Christian, there is skepticism and negativity in the community regarding the use of AI, and with the conducted experiment, he wanted to show other open-source developers that they should not ignore the opportunities that AI provides to simplify the development process. For example, AI saves time by eliminating the need to parse API documentation, track API changes, and find the right calls, as well as significantly simplifies test writing.

At the same time, AI is viewed as a tool to assist in development, but it does not absolve developers of responsibility for the added code and requires thorough checks and quality control. As an example, there was an attempt to generate code for embedding PDF document display support in an application. The AI suggested code using the WebKit browser engine for rendering, which worked but introduced a huge new dependency. After clarifying the task, the AI provided code that used the compact libpoppler library for rendering PDFs.

Currently, leading AI assistants operate in the form of external online services, which raises concerns related to security and confidentiality. To address this issue, Red Hat is developing its own code generation tool, Granite.code, based on the open-source large language model Granite, allowing developers to run an AI model on their own machines. This project currently lags behind systems like Claude, Gemini, and ChatGPT in capabilities, but it addresses the issue of data transfer to third parties and eliminates the dependency of workflows on external services.

Source: opennet.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster