Planning markdown files are critical for any large LLM task.
On the flip side, the perceived barrier is high. Most folks don't have an intuitive sense of how the kernel or "bare metal" environment differs from userland. How do you allocate memory? Can you just printf() a debug message? How to debug if it freezes or crashes? All of these questions have pretty straightforward answers, but it means you need to set aside time to learn.
So, I wouldn't downplay the value of AI for the same reason I wouldn't downplay it with normal coding. It doesn't need to do anything clever to be useful.
That said, for the same reasonss, it's harder to set up a good agent loop here, and the quality standard you're aiming for must be much higher than with a web app, because the failure mode isn't a JavaScript error, but possibly a hard hang.
- have AI reverse engineer Windows WiFi driver and make a crude prototype
- have AI compare registers captured by filter driver with linux driver version and iterate until they match (or at least functional tests pass)
not exactly rocket surgery, and windows device drivers generally don't have DRM/obfuscation, so reverse engineering them isn't hard for LLMs.
Probably a mix of critical thinking, thinking from first principles, etc. You know, all things that LLM's are not capable of.
Usually, the problem with developing a driver isn't "writing the code," it's "finding documentation for what the code should do."
Just like it does when given an existing GPL’d source and dealing with its hallucinations, the agent could be operated on a black box (or a binary Windows driver and a disassembly)?
The GPL code helped here but as long as the agent can run in a loop and test its work against a piece of hardware, I don’t see why it couldn’t do the same without any code given enough time?
In fact most Windows binaries have public debug symbols available which makes SRE not exactly a hurdle and an agent-driven SRE not exactly a tabula rasa reimplementation.
Consider that even with the Linux driver available to study, this project took two months to produce a viable BSD driver.
https://www.reddit.com/r/learnmachinelearning/comments/1665d...
I fully expect that Claude wrote code that does not resemble that of the driver in the Linux tree. TFA is taking on some liability if it turns out that the code Claude wrote does largely resemble GPL'ed code, but if TFA is not comfortable with the code written by Claude not resembling existing GPL'ed code then they can just post their prompts and everyone who needs this driver can go through the process of getting Claude to code it.
In court TFA would be a defendant, so TFA needs to be sure enough that the code in question does not resemble GPL'ed code. Here in the court of public opinion I'd say that claims of GPL violation need to be backed up by a serious similarity analysis.
Prompts cannot possibly be considered derivatives of the GPL'ed code that Claude might mimic.
SPDX-License-Identifier: ISC
Copyright (c) 2010-2022 Broadcom Corporation
Copyright (c) brcmfmac-freebsd contributors
Based on the Linux brcmfmac driver.
I'm going to ahead and say there are copyright law nightmares, right here.
> I'm going to ahead and say there are copyright law nightmares, right here.
I am confused. My first thought was maybe the original Linux driver was GPL'd, but it is not. It is ISC'd. Look here: https://github.com/torvalds/linux/blob/master/drivers/net/wi... // SPDX-License-Identifier: ISC
/*
* Copyright (c) 2010 Broadcom Corporation
*/In this case, they didn't really work from the chip's published documentation. They instead ultimately used a sorta-kinda open-book clean-room method, wherein they generated documentation using the source code of the GPL'd Linux driver and worked from that.
That said: I don't have a dog in this race. I don't really have an opinion of whether this is quite fine or very-much not OK. I don't know if this is something worthy of intense scrutiny, or if it should instead be accepted as progress.
(It is interesting to think about, though.)
I don't work on the Linux kernel, but I do poke around the sources from time to time. I was genuinely surprised to see that some hardware drivers are not GPL'd. That is news to me, but makes commercial sense to when I think deeper about it. When these manufacturers donate a driver to Linux, I don't think GPL is a priority to them. In the case of Broadcom, they probably want their WiFi hardware to more compatible with SBCs to drive sales (of future SBCs that use their WiFi hardware and run Linux). If anything, choosing a more liberal license (ISC) increases the likelihood that their Linux driver will be ported to other operating systems. From Broadcom's commercial view, that is a win to sell more SBCs (free labour from BSDers!).
Also, if the original driver was GPL'd, I am pretty sure it is fair game (from US copyright and software license perspective) to use one LLM to first reverse engineer the GPL'd driver to write a spec. Then use a different LLM to implement a new driver for FreeBSD that is ISC'd. You can certainly do that with human engineers, and I see no reason to believe that US courts would object to separate LLMs being used in the two necessary steps above. Of course, this assumes good faith on the part of the org doing the re-write. (Any commercial org doing this would very carefully document the process, expecting a legal challenge.)
I do think this blog post introduces a genuinely (to me!) novel way to use LLMs. My favourite part of that blog post was talking about all of the attempts that did not work, and new approaches that were required. That sounds pretty similar to my experience as a software engineer. You start with preconceived notions that frequently shattered after you walk down a long and arduous path to discovering your mistakes. Then you stop, re-think things, and move in a new intellectual (design) direction. His final solution of asking LLMs to write a spec, then asking other LLMs to proof-read it is highly ingenious. I am really impressed. Please don't view that "really impressed" as my thinking that the whole world will move to vibe coding; rather I think this is a real achievement that deserves some study by us human engineers.
It's a bhyve VM running alpine Linux and you pass through your WiFi adaptor and get a bridge out on the freebsd host.
What is interesting is it seems like the work resembles regular management, asking for a written specification, proof reading, etc.
That's how I've been using the bot for years. Organize tasks, mediate between them, look for obvious-to-me problems and traps as things progress, and provide corrections where that seems useful.
It differs from regular management, I think, in that the sunk costs are never very significant.
Find a design issue that requires throwing out big chunks of work? No problem: Just change that part of the spec and run through the process for that and the stuff beneath it again. These parts cost approximately nothing to produce the first time through, and they'll still cost approximately nothing to produce the second time.
I'm not building a physical structure here, nor am I paying salaries or waiting days or weeks to refactor: If the foundation is wrong, then just nuke it and start over fresh. Clean slates are cheap.
(I don't know if that's the right way to do it, or the wrong way. But it works -- for me, at least, with the things I want to get done with a computer.)
It sure seems like AI agents can sidestep all that by claiming ignorance on license matters.
Still not as bad as the guy who paid for a commercial license for some Linux driver, fed it into Claude to get it to update it to the latest Linux, and then released it as GPL! That's definitely not a grey area.
Absolutely mental behaviour for a business. What were they thinking?
Yeah, but that only works for so long as the AI doesn't brute force a command that hard-bricks the device. Say, it causes a voltage controller to give out way too high voltages by a command, burns e-fuses or erases vital EEPROM data (factory calibration presets come to my mind here).
That sounds quite naive and it isn't that simple. Even the author expressed caution and isn't sure about how robust the driver is since he hasn't seen the code himself nor does he know if it works reliably.
Even entertaining the idea, someone would have already have replaced those closed source Nvidia drivers that have firmware blobs and other drivers that have firmware blobs to be open replacements. (Yes Nouveau exists, but at the disadvantage of not performing as well as the closed source driver)
That would be a task left to the reader.
This is false. To "brute force" a driver, you'd need a feedback loop between the hardware's output and the driver's input.
While, in theory, this is possible for some analog-digital traducers (e.g WI-FI radio), if the hardware is a human-interface system (joystick, monitor, mouse, speaker, etc.) you literally need a "human in the loop" to provide feedback.
Additionally, many edge-cases in driving hardware can irrevocably destroy it and even a domain-specific agent wouldn't have any physics context for the underlying risks.
For instance: A microphone (optionally: a calibrated microphone; extra-optionally: in an isolated anechoic chamber) is a simple way to get feedback back into the machine about the performance of a speaker. (Or, you know: Just use a 50-cent audio transformer and electrically feed the output of the amplifier portion of the [presumably active] speaker back into the machine in acoustic silence.)
And I don't have to stray too far into the world of imagination to notice that the hairy, custom Cartesian printer in the corner of the workshop quite clearly resembles a machine that can move a mouse over a surface in rather precise ways. (The worst that can happen is probably not as bad as many of us have seen when using printers in their intended way, since at least there's no heaters and molten plastic required. So what if it disassembles itself? That's nothing new.)
Whatever the testing jig consists of, the bot can write the software part of the tests, and the tests can run as repetitiously as they need to.
This isn’t quite a fair example, these are so massively complex with code path built explicitly for so many individual applications. Nvidia cards are nearly a complete SoC.
Though then again, coding agents 1 year ago of the full autonomous sort were barely months old, and now here we are in one year. So, maybe soon this could be realistic? Hard to say. Even if code agents can do it, it still costs $ via tokens and api calls. But a year ago it would have cost me at least a few dollars and a lot more time to do things I get done now in a prompt and 10 minutes of Opus in a sandbox.
AI is notoriously bad at dealing with bugs that only cause problems every few weeks.
https://github.com/torvalds/linux/tree/v6.18/drivers/net/wir...
I don't know why it has not been brought in the BSDs (maybe license), but they do are a bit more careful with what they include in the OS.
My mom and dad, my brother who drives a dump truck in a limestone quarry, my sister-in-law, none of them work in tech or consider themselves technical in any way. They are never, ever going to write their own software and will continue to just download apps from the app store or sign up for websites that accomplish the tasks they want
Billions of dollars of stock market value disappeared because of the concern AI can create core SaaS functionality for corporations instead of them spending millions of dollars in licensing fees to SAP, Microsoft, etc.
This not about tinkering.
SaaS As We Know It Is Dead: How To Survive The SaaS-pocalypse! - https://www.forrester.com/blogs/saas-as-we-know-it-is-dead-h...
Why SaaS Stocks Have Dropped—and What It Signals for Software’s Next Chapter - https://www.bain.com/insights/why-saas-stocks-have-dropped-a...
Jim Cramer says AI fears have made the stock market fragile - https://www.cnbc.com/2026/02/23/jim-cramer-says-ai-fears-hav...
For most people the main difference will be: Will it run and solve my problem? Soon we will see malware being put into vibe coded software - who will wants to check every commit for write-only software?
If I want to buy more tickets the same day, the ai agent will likely reuse the same code. But if i buy tickets again in one year, the agent will likely rebuild the code to adjust to the new API version the ticket company now offers. Seems wasteful but it’s more dynamic. Vendors only need to provide raw APIs and your agent can create the ui experience you want. In that regard nobody but the company that owns your agent can inject malware into the software you use. Some software will last more than others (e.g., the music player your agent provided won’t probably be rebuilt unless you want a new look and feel or extra functionality). I think we’ll adopt the “cattle, not pets” approach to software too.
We have compilers creating binaries every single day. We don’t say thats wasteful.
Even now, with OpenClaw and all of the spinoffs, it's possible to have n agent do this today.
[1]: https://claude.com/blog/equipping-agents-for-the-real-world-...
Like what are we even doing here...
It's harder to buy one plane ticket for the lowest cost amongst all the different ways that plane tickets can be bought, and harder yet to do so with a lack of specificity.
So, for instance: Maybe I don't have a firm plan. Maybe I'm very flexible.
Maybe all I want to do is say "Hey, bot. I want to go visit my friend in Florida sometime in the next couple of weeks and spend a few days there as inexpensively as I can. He's in Orlando. I can fly out of Detroit or Cleveland; all the same to me. If I drive to the airport myself, I'll need a place to keep my car at or near the airport. I also want to explore renting a car in Orlando. I pack light; personal bag only. Cattle class is OK, but I prefer a window seat. Present to me a list of the cheapest options, with itinerary."
That's all stuff that a human can sort out, but it takes time to manually fudge around dates and locations and deal with different systems and tabulate the results. And there's nuances that need covered, like parking at DTW is weird: It's all off-site, and it can be cheaper and better to rent a room for one night in a nearby hotel that includes long-term parking than to pay for parking by itself.
So the hypothetical bot does a bunch of API hits, applies its general knowledge of how things flow, and comes back with a list of verified-good options for me to review. And then I get to pick around that list, and ask questions, and mold it to best fit my ideal vision of an inexpensive trip to go spend time with a friend.
In English, and without ever dealing with any travel websites myself.
"Right. So I go to the Detroit on Tuesday and check in at the hotel any time after noon, and take the free shuttle to the airport the next morning at around 0400 to the Evans terminal. Also, thanks for pointing out that this airport is like a ghost town until 0600 and I might want to bring a snack. Anyway, I get on the flight, land at Orlando, and they'll have a cheap car waiting for me at Avis. This will all cost me a total of $343, which sounds great. If that's all I need to know right now, then make it so. Pay for it and put it on my calendar."
(And yeah, this is a problem that I actually have from time to time. I'd love to have a bot that could just sort this stuff out with a few paragraphs.)
A related fallacy is that great things are easier to build when you can rapidly create stuff. That isn't really how great ideas are generated, it's not a slot machine where if you pull the lever 1000 times you generate a good idea and thus a successful piece of software can be made. This seems like a distinctly Silicon Valley, SFBA type mentality. Steve Jobs didn't invent the iPhone by creating 1000 different throwaway products to test the market. Etc etc.
- You have to work; you can't stay online all day waiting for the tickets to go on sale
- You have your agent watch for when the tickets go on sale
- Because the agent has its own wallet, it spends the 6 hours waiting for the tickets to go on sale and buys them for you
- Your agent informs you via SMS, iMessage, email, Telegram or whatever messaging platform of your choice
Yes agentic wallets are a thing now [1].
[1]: https://x.com/CoinbaseDev/status/2023893470725947769?s=20
One of the benefits that I see is as much as I love tech and writing software, I really really do not want to interface with a vast majority of the internet that has been designed to show the maximum amount of ads in the given ad space.
The internet sucks now, anything that gets me away from having ads shoved in my face constantly and surrounded by uncertainty that you could always be talking to a bot.
But if the LLM needed to write bespoke code to buy the tickets or whatever, it could just do it without needing to get you involved.
It’s like we usually say: companies should focus on their core value. And typically the ui/ux is not the core value of companies.
Huh? The user experience is basically ALL of the core product of a company.
If it's so easy for an AI to create ticket purchasing software that people can generate it themselves, then it's also true that the company can also use AI to generate that software for users who then don't need to generate it themselves. Obviously I think neither of these things are true or likely to happen.
Thats the case now, but I think it’s because there’s no other way around it nowadays. But if agents in the future provide a better or more natural ui/ux for many use cases, then companies core value will shift more into their inner core (which in software translates typically to the domain model)
> If it's so easy for an AI to create ticket purchasing software that people can generate it themselves, then it's also true that the company can also use AI to generate that software for users who then don't need to generate it themselves.
I think the generation of software per se will be transparent to the user. Users won’t think in terms of software created but wishes their agents make true.
Might be quite awhile before you can do this with large systems but we already see this on smaller contextual scales such as Claude Code itself
The thought of converting an app back into a spec document or list of feature requests seems crazy to me.
Then it becomes code: a precise symbolic representation of a process that can be unambiguously interpreted by a computer. If there is ambiguity, then that will be unsuitable for many systems.
If you’re worried about them achieving the 98%, worry no more, due to the probabilistic nature it will eventually converge on 9’s. Just keep sending the system through the probabilistic machine until it reaches your desired level of nines
I need a way to inventory my vintage video games and my wife's large board game collection. I have some strong opinions, and it's very low risk so I'll probably let Claude build the whole thing, and I'll just run it
Would I do that with something that was keeping track of my finances, ensuring I paid things on time, or ensuring the safety of my house, or driving my car for me? Probably not. For those categories of software since I'm not an expert in those fields, but also it's important that they work and I trust them, I'll prefer software written and maintained by vendors with expertise and a track record in those fields
Months of effort and three separate tries to get something kind of working but which is buggy and untested and not recommended for anyone to use, but unfortunately some folks will just read the headline and proclaim that AI has solved programming. "Ubiquitous hardware support in every OS is going to be a solved problem"! Or my favourite: instead of software we will just have the LLM output bespoke code for every single computer interaction.
Actually a great article and well worth reading, just ignore the comments because it's clear a lot of people have just read the headline and are reading their own opinions into it.
Nothing to do with AI, or even the capabilities of AI. The person intentionally didn't put in much effort.
The part to do with AI is that it was not able to drive a comprehensive and bug free driver with minimal effort from the human.
That is the point.
So hardware drivers are not a solved problem where you can just ask chatgpt for a driver and it spits one out for you.
Yes and that's what I'm pointing out, they vibe coded it and the headline is somewhat misleading, although it's not the authors fault if you don't go read the article before commenting.
But it does have to do with AI (obviously), and specifically the capabilities of AI. If you need to be knowledgable about how wifi drivers work and put in effort to get a decent result, that obviously speaks volumes about the capabilities of the vibe coding approach.
Well, people with the domain knowledge exist, yet they have not yet written this driver... why not?
Because there is other code those experts want to write, and they don't have time to write it all... but what if they could just give a fairly straightforward prompt and have the LLM do it for them? And if it only took minor tweaks to the prompt to have it write drivers for all the myriad combinations of hardware and software? At that point, there might be enough time to write it all.
Just because people exist that can DO all the work doesn't mean we have enough person-hours to do ALL the work.
Then pretty soon they wouldn't be the experts anymore?
Aren't you just describing every vibe code ever?
To think about it, that is probably my main issue with AI art/books etc. They never put in any effort. In fact, even the competition is about putting least effort.
The hype people are excited because they're guessing where it's going.
This is notable because it's a milestone that was not previously possible: a driver that works, from someone who spent ~zero effort learning the hardware or driver programming themselves.
It's not production ready, but neither is the first working version of anything. Do you see any reason that progress will stop abruptly here?
Puts all criticism in a new perspective.
If Windows XP were fully supported today I still wouldn't use it, personally, despite having respect for it in its era. The core technology of how, eg OS sandboxing, security, memory, driver etc stacks are implemented have vastly improved in newer OSes.
The original "worst" quote is implying SOTA either stays the same (we keep using the same model) or gets better.
People have been predicting that progress will halt for many years now, just like the many years of Moore's law. By all indications AI labs are not running short of ideas yet (even judging purely by externally-visible papers being published and model releases this week).
We're not even throwing all of what is possible on current hardware technology at the issue (see the recent demonstration chips fabbed specifically for LLMs, rather than general purpose, doing 14k tokens/s). It's true that we may hit a fundamental limit with current architectures, but there's no indication that current architectures are at a limit yet.
After we landed on the moon people were hyped for casual space living within 50 years.
The reality is it often takes much much longer as invention isn't isolated to itself. It requires integration into the real world and all the complexities it meets.
Even moreso, we may have ai models that can do anything perfectly but it will require so much compute that only the richest of the rich are able to use it and it effectively won't exist for most people.
Yeah, money and energy. And fundamental limitations of LLM's. I mean, I'm obviously guessing as well because I'm not an expert, but it's a view shared by some of the biggest experts in the field ¯\_(ツ)_/¯
I just don't really buy the idea that we're going to have near-infinite linear or exponential progress until we reach AGI. Reality rarely works like that.
I do agree that exponential progress to AGI is speculation.
Read what I wrote.
I'm saying is if you bet AGAINST [LLM] scaling laws--meaning you bet that the output would peter out naturally somehow--you've lost 100% so far.
100%
Tomorrow could be your lucky day.
Or not.
That is a position to take.
I think of it as just another leap in human-computer interface for programming, and a welcome one at that.
That's sort of the idea behind GPU upscaling: You increase gaming performance and visual sharpness by rendering games at lower resolutions and use algorithms to upscale to the monitor's native resolution. Somehow cheaper than actually rendering at high resolution: Let the GPU hallucinate the difference at a lower cost.
> Given that literally no one is enforcing this
Presumably Apple's lawyers would enforce it.
GPL-wise, I don't know how much is inspiration vs "based on" would this be, it'd be interesting to compare.
This looks like my Company peers, as long as there is any existing implementation they are pretty confident they can deliver, poor suckers that do the "no one has done it before" first pass don't get any recognition.
And it's incredible that they got a somewhat working wifi driver given just how little effort they put in.
I have no doubt that a motivated person with domain knowledge trying to make a robust community driver for unsupported hardware could absolutely accomplish this in a fraction of the time and would be good quality.
How is this not copyright laundering?
Also, the "spec" that the LLM wrote to simulate the "clean-room" technique is full of C code from the Linux driver.
This is atrocious C code.
pcie.c
/*
* BAR0 register access
*/
uint32_t
brcmf_reg_read(struct brcmf_softc *sc, uint32_t off)
{
return (bus_space_read_4(sc->reg_bst, sc->reg_bsh, off));
}
Is sc null? Who knows! Was it memset anywhere? No! Were any structs memset anywhere? Barely! Does this codebase check for null? Maybe in 3% of the places it should!All throughout this codebase variables are declared and not initialized. Magic numbers are everywhere AND constants are defined everywhere. Constants are a mix of hex and int for what seem to be completely arbitrary reasons. Error handling is completely inconsistent, sometimes a function will return 5 places, sometimes a function will set an error code and jump to a label, and sometimes do both in the same function depending on which branch it hits.
All of this is the kind of code smell I would ask someone to justify and most likely rework.
Or I'm just a dumbass, I suppose I'll find out shortly.
**Decision**: Use C for kernel interactions, Zig for pure logic only.
https://github.com/narqo/freebsd-brcmfmac/blob/be9b49c1bf942...What's more interesting to me is the licensing situation when this is done. Does the use of an LLM complicate it? Or is it just a derivative work which can be published under the ISC license [1] as well?
This isn't a news to be in here.
If you’re a macOS fanboy presumably you don’t care about Linux support.
Read my previous comment again!! If you buy a genuine display and install it, it won't work because Apple locks the hardware ID via firmware. It must be installed by Apple only.
No other vendor does that, the Linux community always found its way to get a non-supported hardware working.
Windows until recently with the AI slope, was the only major OS used everywhere so why many vendors only have Windows driver, I understand theirs "Why bother?"
Apple publishes repair guides for this (e.g., https://support.apple.com/en-us/120768) as does iFixit. Genuine parts are available for purchase and tools are available to rent by individuals (see https://support.apple.com/self-service-repair, which specifically mentions display replacement). Skill and patience are required; replacement by Apple is not.
Which has dwindled in number so much as to practically not be problem anymore. There is even a Linux-only or Linux-first attitude with some vendors.
Buying Apple to run Linux borders on stupidity nowadays because of the vast better options fit for purpose.
Like buying a gasoline vehicle then complaining it can't run on diesel. It wasn't designed to.