Quantcast
Channel: Artificial Intelligence News, Analysis and Resources - The New Stack
Viewing all articles
Browse latest Browse all 426

5 Creative Ways Developers Are Using AI

$
0
0
creative dev

Now that AI is seeing widespread use in the tech sector — along with a corresponding increase in the number of available AI-powered coding platforms, tools, and services — developers are grappling with how they can best use AI to help them achieve their programming tasks and objectives, using it to become more productive while handling some of the more onerous and time-consuming programming tasks.

To that end, I spoke with several developers to get their take on some of the creative ways they are using AI. While many are using tools like GitHub Copilot, Claude 3 Opus, Pieces for Developers, and Codeium to help generate code and automate tasks, developers have been exploring other ways AI can help them be more productive.

1. Code Testing and PR Reviews

“I know one person that uses AI to write unit tests for the code they write,” said Shane Thomas, a veteran software engineer and co-founder of Audiofeed. “This saves them a lot of time writing the same types of tests over and over again. They still have to validate the results, but they seem to be having good results from it.”

While using AI for unit tests has upsides, other experts (like Swizec Teller, a Technical Lead at Tia) have urged caution when relying on the use of AI for testing. In a note posted on X, Teller suggests that developers should use AI for testing in some cases, like using AI to generate large quantities of “varied production-like inputs.”

Devs are also using AI to simulate code reviews, which can help developers prep for reviews with their human colleagues. “I know someone that uses AI as a first pass for pull request reviews for his teammates,” says Thomas. “He told me that he has received comments from other engineers on the thoroughness of his PR reviews… but many of his notes were first flagged by AI.”

2. Learning Paths

Education and learning is another area where developers are putting AI to good use.

“I’ve been using ChatGPT to create a learning path for me as I go deeper into prompting,” said Bekah Hawrot Weigel, a technical AI advocate at OpenSauced. I’ve given it instructions for what we should do every day and asked it to come up with an activity that we can discuss.”

3. Automating Repetitive Tasks

Another creative use of AI by devs is to automate some of the most onerous and time-consuming development tasks, such as helping with code maintenance and tracking obscure bugs by analyzing complex code. In a recent article for The New Stack, Tabnine CTO and co-founder Eran Yahav suggests that AI will help remove some of the drudgery.

“AI coding tools automate so many tasks that developers are likely to discover that some of the skills they’ve acquired will no longer be needed,” wrote Yahav. “But that’s OK, because many involve drudgery that developers will be happy to let go.”

4. AI-Powered Search for Programmers 

While all developers rely on search and AI tools to help them solve code problems, some have been using new AI-powered tools to help find human expertise.

“I’m biased here because I work for OpenSauced, but we’ve created a tool called StarSearch that allows you to find the ‘stars’ in the open source space by indexing various forms of developer activity, including git history,” said Weigel. “For example, you can ask it to help you find Tailwind Developers who also know Rust. It’s a great example of how AI can go beyond code completion and provide deeper insights into open source, enhancing developer discovery and collaboration.”

5. Generating Documentation and Data Models 

“Some of the really awesome [examples] I use all the time are [using AI to] write unit tests, documentation, and to help with data models and name generation,” said Mark Widman, CTO and founding engineer of Pieces for Developers.

The New Stack contributor Jon Udell has also written about using AI to improve documentation and has detailed his experiences with using an LLM-powered tool like Unblocked to enhance the creation and maintenance of code documentation.

“Writing documentation from scratch is as uncommon as writing code from scratch. More typically, you’re updating or expanding or refactoring existing docs,” wrote Udell. “My expectation was that an LLM-powered tool primed with both code and documentation could provide a powerful assist, and Unblocked did.”

Caution and Concerns

While Widman has enjoyed seeing all the progress from OpenAI in general (and the OpenAI API in particular) — especially how the latter it is moving closer to developer workflows — he cautions that lots of work remains to be done to improve upon what has been done so far. “I believe they still have a long way to go with regard to data privacy, additional operating system support, [and reducing the large] latency cost.”

I’ve already touched a bit on the work that AI vendors have yet to make on the data privacy front — see the “cons and caveats” section in my last article focused on AI-powered dev tools — but developers should have other concerns when they’re considering creative uses for AI. One danger is relying too heavily on AI for too many tasks, which could translate into lower code quality and devs being unable to perform development tasks without the assistance of AI.

In 2023, GitClear published a study that showed that AI assisted-development was putting a “downward pressure on code quality,” was creating “disconcerting trends for maintainability,” and highlighted that “...the percentage of lines [of code] that are reverted or updated less than two weeks after being authored — is projected to double in 2024 compared to its 2021, pre-AI baseline.”

AI-Assisted Programming: Is the Best Yet To Come?

Despite the caveats and potential downsides, the inexorable advance of technology means that there will be even more AI-powered developments in the future that programmers can look forward to and creatively adapt to their bespoke needs. Kristian Ranstrom, owner of Rainstorm Technologies and an experienced software developer, points to how upcoming tools like GitHub Copilot Workspace can take developer productivity to new heights.

“It’s not open to the public yet, but I’m pretty excited about Copilot Workspace,” said Ranstrom. “I’m on the waitlist for that and I’m excited to see how it will speed me up.”

Widman encourages developers to examine how AI is being used in other ways outside of software development for inspiration, and then adapting and applying those examples for developers. He also believes that even more creative use cases will emerge, thanks to the pioneering work of AI researchers and developers.

"One of the most important things I live by is that we build on the shoulders of giants, so there is no harm in seeing what is currently out there and applying to your field to help improve processes, save time [and] money, and many more amazing things!"

The post 5 Creative Ways Developers Are Using AI appeared first on The New Stack.

We spoke with developers to find out their creative uses of AI, including PR reviews, creating learning paths, and generating data models.

Viewing all articles
Browse latest Browse all 426

Trending Articles