Diverse perspectives on AI from Rust contributors and maintainers

A summary of how Rust developers view AI, ranging from its use in research and bug finding to concerns about skill atrophy and code quality.
Starting on Feb 6, the project began collecting perspectives around AI into a shared document. This document is a summary of those comments, authored by nikomatsakis on Feb 27 or so.
The goal of this document is to cover the full range of points made so that we can understand the landscape of opinion and the kinds of arguments on each side. For the most part I attempted to minimize summarization and to let people’s quotes speak for themselves. If you would like to read the original comments, you can find them here.
Be careful when characterizing this summary. The comments within do not represent “the Rust project’s view” but rather the views of the individuals who made them. The Rust project does not, at present, have a coherent view or position around the usage of AI tools; this document is one step towards hopefully forming one.
The discussion is also not split between “AI use on rust-lang crates” and “AI use by Rust developers elsewhere”. Many quotes assume one or the other or both, so care must be taken when interpreting them.
Those who get the best results from AI point out that it takes real engineering to get there. It is not a matter of “AI working well” or “AI not working well”, but a matter of making AI work well:
It takes care and careful engineering to produce good results. One must work to keep the models within the flight envelope. One has to carefully structure the problem, provide the right context and guidance, and give appropriate tools and a good environment. One must think about optimizing the context window; one must be aware of its limitations.– TC
What’s more, the models are constantly improving:
Something that might not be obvious is how much things have changed over the last 2-3 months. At one time, it was hard to justify the use of models for serious work. But the state-of-the-art models are now too good to ignore.– TC
This helps explain why people’s experiences with AI seem to be so different:
I had been struggling with some cognitive dissonance where I see people I deeply respect finding value in these tools while at the same time finding 99% of the value people claim from these tools to be all smoke and no substance and wondering whether that is the case with people like Niko. But from Jayans point I can see how inputs and the way these tools are used can still have an impact which could cause ppl like Niko to have better outcomes vs random people with no engineering background trying to use these tools. – yaahc
Much of the discussion around AI focuses on coding, which obscures the fact that many–though not all–people are using AI successfully for other kinds of tasks. Several people noted that AIs can be helpful when navigating unfamiliar codebases or documentation. Others mentioned using AIs to “rubberduck” or “brainstorm” or to explore ideas interactively. And that LLMs can be useful for finding bugs in code.
Particularly when working with semi-structured data, people noted that AI can make intractable tasks much easier to achieve. While AI can be helpful for non-coding tasks, it doesn’t work equally well across the board. Many people mentioned that AI writing in particular has lots of words and little information or structure.
Experiences using AI for coding are all over the map. Some people found that it was not effective, taking more time to coerce the tool than to write it themselves. But others found a lot of value, feeling empowered to take on problems they previously couldn't. Several people who don’t generally use AI for coding mentioned that it can be helpful for certain specific kinds of tasks like refactoring or boilerplate.
Many commenters mentioned feeling that use of AI coding tools caused their coding skills to “atrophy” or diminish, or that it resulted in them losing a good grip on how the code works. Peter Naur wrote an essay called “Programming as Theory Building” that argues that a program exists not just as source code but as a mental model in the minds of the developers.
Source: Hacker News










