cross-posted from: https://discuss.tchncs.de/post/64896415

For additional context, here’s Brian’s previous blog post about the first preview release of Xfwl4, where he describes his history with Xfce and the sponsorship:

https://www.spurint.org/journal/2026/06/xfwl4s-first-preview-release

Here is the entire blog post regarding the LLM usage for mobile users, as it doesn’t format correctly on mobile:

LLMs and Xfwl4

I was planning to write a little about my usage of LLMs while building xfwl4 as a small section of a larger blog post, but I decided I’d rather get it out of the way on its own.

While LLM usage can be polarizing in the context of open source, I don’t really see it that way. It’s a tool, like any other. It has good parts and bad parts. On the bad parts, there are three things that stick out for me: Training Data and Copyright

Among other sources, LLMs were trained on publicly-available data, without the permission of any of the rightsholders of that data. That especially smarts since I have a lot of open source code out there, much of it licensed under the GPL. Is training an LLM on my code copyright infringement? If someone gets output from an LLM that looks substantially similar to my code, and they don’t know and don’t follow my license terms, is that copyright infringement?

And if it goes the other way, if output I get from an LLM looks very much like someone else’s code, did I infringe on their copyright?

I’m not sure! US law seems to suggest that training is fair game, as long as the entity doing the training has legal access to the data they’re training on. As for the rest of it, I’m not sure that’s legally settled yet.

On top of that, it sometimes feels icky that companies like OpenAI and Anthropic are making money off of all this when all that data out there – for which they mostly paid nothing – makes it possible.

I don’t, however, think the best response for myself is to just pretend none of it exists. It’s a tool, and a useful one. Environmental and Social Impact

LLMs need a lot of space, electricity, and water. Communities where data centers are being built, along with the associated power plant upgrades, are often getting stuck with some of the bill for those improvements, which is disgusting.

The secret deals between datacenter companies and utility companies, often with municipalities complicit, are often leaving regular ratepayers out to dry. That’s a local problem, and I hope those local people vote in representatives who will take better care of them. Supply Chain

I don’t need to remind anyone how expensive GPUs and RAM are right now. I was planning to upgrade the mainboard in my laptop this year, which would require new RAM (my current board has DDR4 in it), but the cost of 64GiB of LPCAMM2 DDR5 makes my eyes water.

The consumer RAM market has been hollowed out; several companies have either stopped making consumer-grade RAM entirely, or have severely restricted supply in order to make more money selling to datacenters and AI labs. That’s capitalism at work for you, at the expense of regular folks who need to buy computing hardware for personal use.

But here I am, with a Claude Max 5x subscription for the past year and a half. I’m not comfortable with it, but the utility is just too great for me to take a principled stance here. I like it, and I want it, so I’m using it. Maybe that’s morally questionable, or worse. But, as I said: here I am. xfwl4 and LLMs

So yes, I use Claude quite a bit while developing xfwl4. I don’t vibe-code, ever, and I probably use the LLM to generate less code than most people do. After all, building things with code is my hobby and passion (and I’m lucky I got to do it professionally for a quarter century), and driving an LLM is kinda boring. Research and Planning

Most of my time with Claude Code is research and planning. One great match for LLM use here is helping me understand the finer details of xfwm4, since xfwl4 needs to duplicate all of its behavior. One common prompt of mine:

look at the xfwm4 source in detail and determine everything there is to know about $FEATURE. write up a plan for how to implement it in xfwl4 to notes/$FEATURE.md.

I go do something else for a while, and when it’s done, I read the doc, and then spend a while asking Claude questions about it, and telling it the things I don’t like and what I’d like to be done differently, and it updates the doc. Implementation

Most of the time I’ll start working from the notes doc myself, writing the implementation by hand. My guidelines for plan-writing to Claude are to do things in phases, and so I’ll complete a phase at a time, and then ask Claude to validate what I’ve done. Often, while I’m working, I’ll decide to deviate from the plan, and I’ll have to tell Claude to do the validation based on the outcome I want, not based on adherence to the plan.

Once it’s done, I’ll use /code-review and let Claude spawn sub-agents to do a full review of the new code. This usually finds some problems, even problems that the “main” Claude instance didn’t find during its validation. I usually keep running /code-review again and again after finding and fixing issues, until there aren’t any left. I actually haven’t been doing /code-review for very long, maybe 6-8 weeks, as I didn’t know about it. I wish I’d done it from the start, as it’s very useful.

Sometimes I will have Claude write some code for me. Usually it’s when there’s a lot of boilerplate, or if there’s work that feels repetitive and tedious. Claude is generally a great fit for that, and I can both manually review the output and have a subagent do an independent review. I’ll usually keep CC in manual mode and approve every edit after reading it, but for some more mechanical changes, I’ll let it sit on auto for a while, and review when it’s done.

Occasionally I’ll have it write more substantial code for me, usually for bug fixes, and occasionally for small features. I find it does a pretty decent job here, but I keep it on manual mode and often ask it to write the code in a different way, or take a different approach. Bug Fixing

Whenever there’s a bug, I’ll start looking into the code myself (I want to keep my debugging skills from atrophying), but in parallel I’ll also ask Claude to look into it, either by describing the problem, or pointing it to a Gitlab issue, if there is one.

I’ll admit that it’s rare for me to find the issue faster than Claude does, and there were some issues where I was completely lost, and Claude figured out something in 10 minutes that probably would have taken me days. Tests

xfwl4 doesn’t have many unit tests, but I’d like to improve that at some point. Of the unit tests that do exist, they were al written by Claude. I’ve always found testing to be tedious, and never did a very good job of it. Claude’s tests are generally much more comprehensive than tests I’d write myself.

I’ve heard stories of people saying that Claude will change or delete failing tests instead of actually fixing the problem that makes the test fail, but that hasn’t (yet) happened to me.

xfwl4 also has a test-clients sub-crate that has a bunch of Wayland and X11 client apps for manual testing of various compositor features. I wrote the first Wayland test, using smithay-client-toolkit, but for the rest of them, I told Claude to write them for me, using my first test as a template. My LLM Strategy

I don’t really have one. I just run the best model available for everything (Opus 5, at the time of this writing1). I don’t write skills or other bits of automation. I expect some of that is indeed valuable, but I’m just not interested in it, so I don’t do it.

My usage isn’t high enough to ever hit my 5-hour or weekly limits on the Max 5x plan, so I just don’t worry about it. I started out with the Pro plan, but very quickly started hitting limits in the first 1-2 hours of the 5-hour windows, so I eventually upgraded after trying out extra usage for a bit and deciding I’d be spending more going down that route.

As I said above, I don’t vibe-code. I care about code quality and about understanding what I’ve built. I care about being able to maintain it in the future, manually, without needing an LLM to do everything for me. And That’s It…

That’s it, I guess. I don’t think I would have made anywhere near as much progress with xfwl4 without an LLM. It’s easily saved me months of time, not in writing code (for non-trivial things, I can usually write it just as fast or faster), but in tracking down problems and helping me figure out solutions, whether that’s in Claude reading and reasoning about my code to find something that’s wrong, or in adding tons of targeted debugging prints to gather the information we need, and then sifting through the log file for me to do analysis.

I know this blog post is a tiny drop in an ocean of people writing about their LLM use, but I expect some folks might be curious about the development process behind xfwl4, so I figured a sort of disclosure was in order.

It’s been a little over a month since the first preview release of xfwl4, and I’ve fixed many issues and added new features since then. Hopefully I should have a new preview release in the next week or so, but you can clone the git repository to check out the current state of things for yourself, whenever you want.

  • Kaligalis@lemmy.world
    link
    fedilink
    arrow-up
    19
    arrow-down
    40
    ·
    23 hours ago

    So what? As long as they do proper QA, using AI is fine.

    I use Claude Code with the Fable model too. It is pretty good. It still does hallucinate once in a while. And it still does logical fallacies sometimes. But I mitigate that by using the natural neuronal network in my head to analyzing the generated code (and yes, I am the bottleneck).

    • ProdigalFrog@slrpnk.netOP
      link
      fedilink
      English
      arrow-up
      38
      arrow-down
      6
      ·
      edit-2
      23 hours ago

      Besides the potential risk of unknowable copyright infringement and the dangers that poses to FLOSS projects as I mentioned in another comment here:

      Simply using an AI that’s run on a corporate data centers encourages the construction of yet more data centers, with all of the environmental/climate negatives they bring, as well as local harms they induce on the people living near them, such as increased electricity rates.

      Using corporate AI directly helps the financial situations of the big tech companies that host them (by boosting usage/user numbers, they are able to attract more investment capital), most of which are owned by right-wing CEO’s who are more than willing to collaborate with and fund fascist governments to ensure that they are not regulated in search of both maximum profits. Some of these companies, such as Nvidia, Palantir and Oracle, genuinely appear to be seeking to use these tools for what would previously be considered crackpot conspiracy theory levels of public control and surveillance.

      But if someone is absolutely determined to use them regardless, I would hope they either use a locally run LLM, or use a distributed model like AI Horde, as at the very least that does not encourage the construction of corporate data centers nor boost their financial prospects.

      • sicktriple@programming.dev
        link
        fedilink
        arrow-up
        9
        arrow-down
        30
        ·
        edit-2
        22 hours ago

        This virtue signaling needs to stop. Yes, the implications for AI are extremely dangerous and foolhardly. Taking out the pitchforks on Brian, an extremely talented and well regarded engineer in the FOSS world, is completely missing the point. It’s akin to blaming drivers of gas vehicles for global warming. The impetus for change are on the systems that put these things in place, not a FOSS dev building a WM. The incentive structure of limitless growth at all costs in the IT sector and the unfettered power projection of capital are to blame here. Until you’re willing to do something to stand up to that, then we’re all just waving our dicks in the wind here. Posting is not praxis.

        We get it, you correctly arrived at the conclusion AI is bad. Welcome to the club. Brian Tarricone is a professional and I have no reservations of the quality of this code. You might as well boycott the linux kernel because guess what, AI generated code is in there too.

        • patlefort@lemmy.world
          link
          fedilink
          arrow-up
          21
          arrow-down
          5
          ·
          22 hours ago

          Classic “it doesn’t affect me” (yet), so it’s fine. Maybe you’ll change your tune when you run out of drinkable water because data centers are pumping it on top of climate change.

          • sicktriple@programming.dev
            link
            fedilink
            arrow-up
            11
            arrow-down
            19
            ·
            edit-2
            22 hours ago

            How on Earth could you derive “I don’t give a shit” from “stand up to systems of oppression, don’t castigate individuals”? Do your eyes even work?

            This type of name and shaming just doesn’t scale. You can’t recycle your way out of climate change. This type of thinking places the responsibility on the individual, who by very nature is powerless and who’s individual actions have essentially no effect on outcome.

            These types of sentiments don’t scale well into change, but it certainly allows the person making the post to feel good and to let others know they think the right things.

            • ProdigalFrog@slrpnk.netOP
              link
              fedilink
              English
              arrow-up
              19
              arrow-down
              7
              ·
              edit-2
              22 hours ago

              Refusing to use the tools that profit the very thing we want to stop is part of standing up to it, how is that not obvious?

              • refalo@programming.dev
                link
                fedilink
                arrow-up
                5
                arrow-down
                7
                ·
                edit-2
                19 hours ago

                Use of literally any electronic or battery-operated device on the planet uses metals sourced from child and/or forced labor somewhere in the world. Unless you’re prepared to move off the grid and live in the woods, these type of arguments at higher levels are endlessly pointless IMO.

                • ProdigalFrog@slrpnk.netOP
                  link
                  fedilink
                  English
                  arrow-up
                  8
                  ·
                  edit-2
                  18 hours ago

                  It’s definitely worth buying used wherever possible, and to repair electronics whenever possible to avoid unnecessary consumption (part of why Right to Repair is so important). Similarly, it’s quite beneficial to switch to plant-based meats to avoid both unnecessary animal suffering and the carbon emissions and resource wastage that goes with industrial animal production (especially as those resources become more and more scarce due to poor crop yields and drought from climate change).

                  It’s often not possible to do either of those things 100%, such as it not being possible to be completely vegan/vegetarian due to a family member that isn’t on board with it, but it’s still beneficial to do what they can, even if it’s only 20, 30, or 50%.

                  Corporate AI usage, on the other hand, is one of those things that truly is completely avoidable with virtually no effort, and was something we all got along fine without just a few years ago. There are even more ethical self-hosted or decentralized non-corporate alternatives.

                  Someone deciding to ignore the harmful externalities of corporate AI is making a choice to prioritize their own convenience over helping prevent our planet from becoming extremely unpleasant for billions of people and animals to live on, or the financing of a fascist surveillance state.

              • sicktriple@programming.dev
                link
                fedilink
                arrow-up
                6
                arrow-down
                10
                ·
                edit-2
                22 hours ago

                We’re not talking about you, you can do whatever you want. I’m talking about publicly naming and shaming developers for using what is now a widely accepted tool.

                Creating a callout post isn’t standing up to anything, it’s just noise. You get special internet points for it, but it doesn’t mean anything and again, diverts responsibility from the people who built this fucking Torment Nexus in the first place.

                • ProdigalFrog@slrpnk.netOP
                  link
                  fedilink
                  English
                  arrow-up
                  10
                  arrow-down
                  3
                  ·
                  edit-2
                  21 hours ago

                  The developer made this public post of their own volition, presumably for others to read and make up their own mind on. It’s not naming and shaming to alert others their DE is going to be AI coded in the future, or to point out the potential downfalls of the project adopting AI.

                  • sicktriple@programming.dev
                    link
                    fedilink
                    arrow-up
                    5
                    arrow-down
                    9
                    ·
                    21 hours ago

                    Come on now, you didn’t just cross post this over here without adding your own editorializing. We understand your take, it colors your opinion, thats ok. Don’t walk it back now. Own it.

        • ProdigalFrog@slrpnk.netOP
          link
          fedilink
          English
          arrow-up
          16
          arrow-down
          2
          ·
          edit-2
          22 hours ago

          You created an account a few minutes ago just to say individuals shouldn’t bear any responsibility whatsoever, and worse, that advocating for reducing the problem in a meaningful way is virtue signalling?

          • sicktriple@programming.dev
            link
            fedilink
            arrow-up
            3
            arrow-down
            15
            ·
            edit-2
            22 hours ago

            Your comment just so happened to grasp my attention. There’s simply no need to resort to ad hominem.

            Is the BP oil spill my fault because I drive a car to work?

            • ProdigalFrog@slrpnk.netOP
              link
              fedilink
              English
              arrow-up
              13
              arrow-down
              3
              ·
              22 hours ago

              All of us can try to take steps to reduce our fossil fuel use, either by trying to drive less, using public transport if available, or using an e-bike if viable. Individually the contribution is small, but collectively it can add up to help reduce demand, thus reducing the financial incentive to invest in oil or drill for more.

              • sicktriple@programming.dev
                link
                fedilink
                arrow-up
                3
                arrow-down
                12
                ·
                edit-2
                18 hours ago

                Of course we can, but that’s not how history works. People do what they will do based on their conditioning and material conditions. Of course not always, but enough where we can derive conclusions. Scolding and finger wagging isn’t going to fix this problem. If you think one sliver of the population of Earth gives one single solitary fuck about reducing their carbon footprint, I have a bridge to sell you.

                Look, I respect you and your take, I’m not trying to be an asshole. I just genuinely don’t think your approach is a viable method of achieving what you’re saying.

            • kaidenshi@lemmy.world
              link
              fedilink
              arrow-up
              8
              arrow-down
              2
              ·
              21 hours ago

              Where is the ad hominem? If you’re going to pretend to speak Latin, at least know what the fucking words mean, you absolute potato.

              And in case it wasn’t clear, that was an example of ad hominem.

              • sicktriple@programming.dev
                link
                fedilink
                arrow-up
                2
                arrow-down
                7
                ·
                edit-2
                20 hours ago

                The above commenter was calling into question my character because I had just created my account today. The definition of ad hominem I’m familar with:

                “Attacking a person’s character or motivations rather than a position or argument.”

                The commenter seems to imply that because I created my account recently, that my argument is therefore somehow not valid. I would consider that the be an attack on my character or motivation, rather than addressing my position. Would you agree or no? May have been a bit of an editorial stretch on my part, but it certainly doesn’t call for you actually calling me names and insulting me. I’m just here for some banter. Your comment is obviously malicious, and I think you’re better than that.

                Edit: yep, downvote and move on. Exactly what I thought. Classic potato behavior.

        • BassTurd@lemmy.world
          link
          fedilink
          arrow-up
          7
          arrow-down
          5
          ·
          20 hours ago

          Nah, fuck Brian. He’s an AI using twat. No care for the environment, people, or IP that’s been stolen.

          This AI apologizing needs to stop. Yes, the implications for AI are dangerous and foolhardy. Full stop.

          • sicktriple@programming.dev
            link
            fedilink
            arrow-up
            5
            arrow-down
            7
            ·
            edit-2
            20 hours ago

            How easy it is to have maximalist positions on the internet, where they never have to come into contact with reality.

            Why should I take what you have to say seriously when you can’t even be bothered to read the entirety of my post where I agree AI is bad and this doesn’t make it go away

            • BassTurd@lemmy.world
              link
              fedilink
              arrow-up
              2
              arrow-down
              2
              ·
              9 hours ago

              I read your whole post, I just responded to the part I cared to respond to. You’re saying you don’t like AI then defending it out the other side of your mouth. You don’t have to care about anything I say at all. This is the Internet where there are many things you can read and not take seriously.

              • sicktriple@programming.dev
                link
                fedilink
                arrow-up
                1
                arrow-down
                1
                ·
                3 hours ago

                If you are interpreting what I said as a defence of AI, then this conversation is useless because you are deliberately misinterpreting it at best, or at worst being deceitful in your rhetoric. Good day.

          • sicktriple@programming.dev
            link
            fedilink
            arrow-up
            5
            arrow-down
            8
            ·
            edit-2
            20 hours ago

            I suppose you’ll be moving off of Linux then, as the kernel devs have made their stance on AI quite clear.

            • Ghoelian@piefed.social
              link
              fedilink
              English
              arrow-up
              3
              ·
              12 hours ago

              Yeah, I don’t agree with Linus’ stance at all. But the alternatives are macos and windows lmao, hardly a fair comparison. I do need some form of os on my PC, and Linux is still the best option. I don’t need xfce or xfwl however, I’ll just pick a different DE.

    • MagnificentSteiner@lemmy.zip
      link
      fedilink
      English
      arrow-up
      5
      arrow-down
      3
      ·
      edit-2
      6 hours ago

      It doesn’t hallucinate because it’s not a living thing.

      It also doesn’t do logical fallacies because it’s incapable of reasoning or any kind of thinking at all.

      Stop anthropomorphising LLMs.

      ETA: Uh-oh, guess I triggered the people who think ChatGPT is their friend xD