Hello community,

*TL;DR; I have a proposal that we share a bit more openly how we are using
Gen AI tooling to make us more productive. I thought about creating a
dedicated #gen-ai-contribution-sharing channel in Slack for that purpose*

I've been using various Gen-AI tools and I am sure many of us do and I've
seen people sharing their experiences in various places - we also shared it
a bit here - our UI Translation project is largely based on AI helping our
translators to do the heavy-lifting. I also shared a few times how AI
helped me to massively speed up work on fixing footers on our 250K pages of
documentation and - more recently - make sure our licensing in packages is
compliant with ASF - but also I used Gen AI to generate some scripting
tools (breeze ci upgrade and the check_translation_completness.py script).
Also many of our contributors use various Gen AI tools to create their PRs.
And I know few of us use it to analyse stack-traces and errors, and use it
to explain how our code works.

I thought that there are two interesting aspects that it would be great
that we learn from one another:

1) What kind of tooling you use and how it fits-in the UX and developer
experience (I used a number of things - from copilot CLI, IDE integration
to Copilot reviews and Agents. I found that the better integrated the tool
is in your daily regular tasks, the more useful it is.

2) The recurring theme from all the Gen-AI discussions I hear is that it's
most important to learn where Gen AI helps, and where it stands in the way:
* in a few things I tried Gen AI makes me vastly more productive - I feel
* in some of them I feel the reviews, correction of mistakes and generally
iteration on it slows me down significantly
* in some cases it maybe not faster, but takes a lot less mental energy and
decision making and mostly repetitive coding, so generally I feel happier
* finally there are cases (like the UI translation) that I would never even
attempt because of the vast amount of mostly repetitive and generally
boring things that would normally cause me dropping out very quickly and
abandoning it eventually

I feel that we could learn from each-other. For me learning by example -
especially an example in a project that you know well and you can easily
transplant the learnings to your own tasks - is the fastest and best way of
learning.

Finally - The Apache Software Foundation has this official guidance on
using AI to contribute code [1]  - I think this is a very well written one,
and it describes some border conditions where AI contributions are "OK"
from the licencing, copyright point of view - largely to avoid big chunks
of copyrightable code leaking from GPL-licensed training material. And
while it does not have definite answers, I think when we share our
contributions openly we can discuss things like "is that copyrightable",
where is that coming from etc. etc.  (note that in many cases - when you
generate large chunks of code, you can ask the LLM where the code comes
from and several of the LLM tools even provides you immediately the
references of the sources of code in such cases.

So my proposal is to create a *#gen-ai-contribution-sharing  *in our
slack - where we will share our experiences from using AI, ask when you
have doubts about whether you can submit such a code etc.

WDYT? Is it a good idea ?

[1] Generative Tooling Guidance by ASF:
https://www.apache.org/legal/generative-tooling.html

J.

Reply via email to