pradn
Joined 14 years ago
Joined 14 years ago
We have Jev to prove LLMs that output constrained decisions are useful. Why not make LLMs just output UI natively?
At a fast enough inference speed, you could just connect the network to it.
So an LLM would then just take the network, user input, and output a UI, with tool calls to deal with memory and other resources. In theory, you don't need an OS any more.
If your employer lets you chill, their competitors will not, and win. That's how it goes.
Prompting and reading detailed AI output all day long, trying to tease apart the goods and bads - it's extremely exhausting. You don't get the mental breaks of pressing the compile or test button, or doing small refactors like pulling a logic into its own function. Coding is gone as a pleasure at work.
Still, for a large number of programs - like data-oriented applications - it’s probably a good fit. It might work ok with entity-component game systems as long as you reuse old memory…
What actually limits someone from doing this?
1) You need the hardware to play the games, still. You still need a good enough PC or a console like a PS5 to play all these emulated/cross-compiled games. Though, the cost is moderate these days: a used PS5 goes for $400-500?
2) You need to want to jailbreak your console, giving up "mainstream" features (multiplayer, warranty). This requires some interest and know-how, too. Though the jailbreak steps are easy these days.
3) If you lack a console, your PC needs to be strong enough to play WASM or emulated/cross-compiled games. I suppose for consoles like the Switch, that aren't super powerful, most PCs made the past few years could play a AAA Zelda game in the browser. But playing on PC is often not as fun as on a console, with the couch and controller and all.
I have a hard time people en masse want to give up multiplayer, by jailbreaking their consoles.
But single-player games are probably going to have a harder time.
The video game world is already super top heavy, with mass-market multi-player games (like Valorant), not to mention casino-like gacha games. So the trends may further favor this current track.
What this means is that the only hope for secure applications is security by construction, with formal methods. The race is on for constructing formally verified primitives with more and more expansive guarantees. The Anthropic/Theorem proofs show lack of memory sanitization issues. But that's just one class of problem.
Imagine a chip, a minimal boot loader, a minimal Linux, and an application library stack - all verified with high level guarantees. Then, you can plug in your application development to give you end-to-end verification guarantees. ie: no way to leak credentials at any level from the chip up to the application. No sense in your foundation being so strong if your application has easy RCEs. You need a full stack approach.
I know I'm describing a far off dream world, but it may be what's required to quell the economic "bomb" of so much dev time "wasted" in patching vulns, against actual feature dev / business value generation.
1) It's easy to generate very long docs that explore every conditional, etc. It is probably better overall, because more edge cases are being caught. But, the docs tend to be very long, and often at a lower abstraction level than appropriate for a design doc. At the limit, why not just put all the code in the design doc, too? It's rarely necessary. Though, when the thing we're focusing on is an API, it is appropriate to put the API service proto diff in the design doc...
2) They're harder to read, often for easily discernable reasons. They love doing the "bullet colon sentence" pattern, which often just means you're reading a concept twice. Sometimes, it helps. But I can't help but distrust that pattern more just because its so obviously AI generated. A more pernicious problem is the AI using phrases that are technically correct, but not part of our verbal culture. An example is using "observability workloads" instead of "probers" or "CL submission strata" instead of "CL submission order". Perhaps a Skill and an obedient AI can make these particular problems go away. Perhaps there needs to be a "preferred vocabulary" dictionary distilled from all the teams' docs...
If I generate code or text with AI, I have been adding a bit of hand-written text that tells people what exactly I verified. Like "I've read all the words in this comment", or "I cross checked this data with other similar metrics at X". The trust you get from human validation is the scarce thing now, not the output itself.
I was embarrassed to blurt out factoids based on quick AI-based analysis that turned out to be incomplete at later, deeper inspection. So I've stopped doing that. :)
You need an agent swarm to defend cyber-assets. No way we can respond at human speed.
Another consequence is that every public API with a bug bounty will be pen-tested up til the cost (in expectation) of running the AIs. We already see public AI-discovered vulns being reported to companies.
We've stumbled into general differentiable models..
meet.hn/city/us-New-York
Socials: - x.com/pradnelluru
---