DEV Community

Daniel Roe
Daniel Roe

Posted on • Edited on • Originally published at roe.dev

Using AI in open source

If you want to use AI to help you contribute to one of the projects I maintain, I would be delighted. But I have rules.

Here's my take: Tech gives superpowers to people.

For good or ill, technology is a force multiplier. It enables. Unlocks.

And I'm thrilled that so-called 'AI' and the careful use of LLMs might empower people to contribute to open source and help them achieve amazing things.

In fact, I'm experimenting with AI in some of the projects I maintain, using maige, dosu and more. I particularly like Copilot Workspace - I think its approach is spot-on in creating code and docs in partnership with human direction.

But I've also seen some (mostly unintentional) bad behaviour. So, on reflection, I think it's important to lay down two key ground rules:

1. Never let an LLM speak for you

If I read a comment or an email or an issue summary or a PR from you, I want to know that I'm hearing your words. I don't care about grammar or spelling - I won't think worse of you for that. I care more about real connection.

A note: AI-generated summaries of PRs are often terrible and LLMs often optimise for long-winded, dense (and inaccurate!) text that is the opposite of what I would consider well-written. Simplicity is an art. The goal is not to sound impressive, but to communicate clearly.

2. Never let an LLM think for you

Go ahead - drop the codebase in an LLM or get it to write the function or test you need. But the final step (and goal) before contributing that to an open source project should always be understanding what it's written.

Use computer aids to point you in the right direction, but always take personal responsibility. Saying, 'I'm not sure if this is helpful, but ChatGPT says ...' is always a cop out. I don't want to see quotes from an LLM in a PR or issue - I want to know what you think.

While I'm only speaking about open-source contribution, I would commend these principles more generally.

If this seems difficult, or feels like it might put you off contribution, please do let me know.

And equally, if you have any ideas for using LLMs to empower contributors or maintainers in open source, I would love to hear them.

I'm optimistic about the future.

Top comments (0)