Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Jan 2025 18:04:17 -0800
From:      paige@paige.bio
To:        hackers@freebsd.org
Subject:   Provisions to the contribution guidelines for using LLM generated code
Message-ID:  <49B92974-E37A-4786-A456-E258D5A1D35E@paige.bio>

next in thread | raw e-mail | index | archive | help
Hi there,=20

As y=E2=80=99all have probably heard AI is the new big thing in town and =
people are at a bit of a loss for what it means. Despite the news about =
the stock market sell off that came in the wake of the new DeepSeek =
thing, I=E2=80=99ve actually been playing around with this thing called =
Claude for the past couple of weeks and I=E2=80=99m still not really =
sure what to think of it. I think it=E2=80=99s really cool to say the =
least, but I still have a lot of questions myself.=20

More specifically, I=E2=80=99m not really sure at what point does using =
something like Claude to create something like a native ExFAT filesystem =
become an issue of attribution;=20

https://github.com/paigeadelethompson/exfat/tree/main/sys/fs/exfat

it presumably created this based on the parameters in it=E2=80=99s model =
(presumably, it is not actually known how Anthropic=E2=80=99s models =
work because as far as I know that information is proprietary.) I =
vaguely understand how it is able to do this and to the best of my =
knowledge, it doesn=E2=80=99t plagiarize code but it does generate code =
based on facts that it can find in it=E2=80=99s own model about ideas =
which are potentially subject to patent restrictions. For what this is =
worth, I think that people are going to find this to be incredibly =
valuable regardless of whether or not it produces an exact desired =
result. What it doesn=E2=80=99t get right the first time is often the =
subject of something being really damn close.=20

I=E2=80=99m really just dumbfounded by how much it actually can do that =
I haven=E2=80=99t even tried to compile this code for this filesystem it =
created; it didn=E2=80=99t take me more than an hour of saying =E2=80=9Cye=
s=E2=80=9D following the initial "I'd like to make an ExFAT driver for =
FreeBSD in C can you give me the best starting point possible?=E2=80=9D =
To be honest I kinda had to fact check it a couple of times, it wanted =
to do things like implementing extattrs which this filesystem patently =
doesn=E2=80=99t have. But as soon as I asked it, it seemed to know =
exactly what I meant:=20

"No, you're right - I apologize for adding unnecessary complexity. The =
ExFAT specification doesn't include support for extended attributes like =
other filesystems (e.g., UFS or ext4). The only attributes ExFAT =
supports are the basic DOS/FAT attributes we already have defined=E2=80=9D=


And then it proceeded to make changes to remove the stubs and so forth =
(which it may not have done right but I haven=E2=80=99t gotten that far =
yet.) In fact, I don=E2=80=99t really feel like I can realistically move =
forward with this (because I=E2=80=99ll have to fork $20 to get more =
time out of it) but also I just don=E2=80=99t really know whether or not =
this is okay. Obviously I want to say yes, but I get the impression that =
some people might not be okay with this, especially if what it creates =
is not well understood or violates copyright laws.=20

"Under U.S. law, you cannot patent an idea, but you may be able to =
protect your idea by bringing it to life.=E2=80=9D As far as I know the =
licensing for ExFAT is a little bit of a gray area. It=E2=80=99s =
Microsoft=E2=80=99s patent, there=E2=80=99s a GPL implementation that =
exists but asides from that I don=E2=80=99t know if it=E2=80=99s =
technically okay to make another implementation that is licensed any =
other way. I assume so, but it=E2=80=99s not unimaginable that even =
simply ingesting an ExFAT filesystem could come with some kind of =
stipulation.

And I=E2=80=99m sure some people might even think =E2=80=9Cwhy would =
you, there=E2=80=99s a FUSE implementation for this already=E2=80=9D and =
you know because FUSE is FUSE and this is an implementation of ExFAT =
that uses VFS. Also ExFAT/fuse does have problems but it works (sorta) =
in a pinch. I=E2=80=99d personally be more interested in improving =
something that is part of core FreeBSD than I would anything having to =
do with a port that I have to install in addition to the OS itself in =
order to use it.

The reason why it matters; I just really like ExFAT. Virtually =
everything now has native support for it out of the box except for UEFI =
(they should, surprised Microsoft hasn=E2=80=99t pushed the standard to =
adopt it given that .WIM files can certainly exceed 4.3GB on modern =
versions of Windows. It just makes good sense to me to use it, even =
though it=E2=80=99s not a journaled filesystem. Using parchive is not =
lost on me, but I=E2=80=99ve seldom ever truly needed it even with =
ExFAT.

Maybe I=E2=80=99m not even really trying to drive this to completion as =
much as I just needed an example and am just wanting to understand are =
people already doing this? Is it possible that people have already done =
this and nobody is really aware of it? I=E2=80=99d like to think if you =
can then you certainly should but where do you draw the line, and should =
there perhaps be conventions for keeping track of code in FreeBSD that =
is produced by LLMs? Maybe there already is and I just haven=E2=80=99t =
found it yet but it wouldn=E2=80=99t come as any surprise if there =
weren=E2=80=99t given this is all still kind of novel. Either way I=E2=80=99=
m sure there are things much more substantial than ExFAT worth trying, =
but there should probably be something of an understanding about what is =
and isn=E2=80=99t okay. I wonder if what we don=E2=80=99t know about =
proprietary LLMs like Claude could potentially be an easily overlooked =
problem that could have legal consequences later.=20

In any case I=E2=80=99m sure people will figure it out, but if anybody =
was looking for a cue to discuss this I mean.. it=E2=80=99d be really =
useful to me if FreeBSD supported ExFAT out of the box (especially since =
I can=E2=80=99t get to my offline archive of the ports and it=E2=80=99s =
distfiles without it.) The only available implementations at present are =
GPL=E2=80=94 so can we just like=E2=80=A6 generate an implementation =
with Claude and license it BSD? I honestly wish that my friend hadn=E2=80=99=
t insisted on showing me this kinda because I hoped to avoid something =
that I know is certainly going to have repercussions for the way things =
are currently done, but I can=E2=80=99t unsee this and I feel like =
I=E2=80=99ve been =E2=80=9Cdoing it wrong=E2=80=9D my whole life.=20

-Paige=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?49B92974-E37A-4786-A456-E258D5A1D35E>