Well, you have to either capture/eliminate/persist side effects and control the environment tightly, or it's limited in what it can do.
In a distributed or concurrent system, for full granularity, that can require specialized timing or virtualization techniques up to ensuring fully atomic snapshots and deterministic execution environments (and whether or not that properly models the SUT in real environments, or introduces bias/breaks the reproducibility in a way you care about)
Otherwise if you're only running against fixed checkpoints you have something closer to traces that maybe you could re-run or test against, in some cases, if you put in the work to set it up. In distributed systems that can be a lot of work so it's a bit vague if left unspecified. Because it's not enough to merely replay something if things can drift or don't accurately model the real system
For the sort of architecture described in the blog post, you're persisting the program rather than a log, so you only need idempotency between any two checkpoints. For a lot of apps that's easy to achieve if write the snapshot into the same transaction the user is using for application data, and if you create/propagate idempotency tokens to other services.
You don't need specialized timing or virtualization techniques.
> Well, you have to either capture/eliminate/persist side effects and control the environment tightly, or it's limited in what it can do.
You really need to read up on durable executions before commenting. Your comment reads as if you are completely oblivious to them. Their whole point is benefiting from an execution model where your workflow is comprised of idempotent pure functions whose inputs and outputs are tracked by the durable task persistence.
It's a problem I've spent a lot of time on, just not through the products marketed like temporal. I commented on the article because it's about program replay with checkpointing which is similar to what I worked with/mentioned.
I didn't see the article mention idempotency anywhere, and you didn't in the original response to the guy who said it just sounded like a buzzword; atomic snapshotting with deterministic execution is literally how you make a program continuation an idempotent function!
And the article is about solving the problem at the language runtime level so it doesn't even do that. So it would be reasonable to assume it is a buzzword if it does not have the essential property you mentioned and I was referring to. I was not even intending to disagree with you but just add what would make it less of a buzzword in this kind of case.
Good model. Anybody interested in actually training models or designing agentic systems should be doing this.
My company started around working on this problem because it's the basis for how you train programming models/reliably deploy LLMs to do specific tasks. It allowed me to build a much better mental model for LLMs because I saw how weirdly fickle/inconsistent/picky they could actually be outside of a "chat" where it feels like they have a coherent persona or consistent knowledge/capability.
Initially I thought of it as a search over prompts for capability at completing specific tasks, but now I think the speed/reliability and operations (eg can I switch models without degrading perforamnce?) benefits are even bigger benefits for most users.
A little "secret" since labs are making it harder to even use their models in this way and it's important that it be more widely understood: distribution-aware replay/re-sampling is a key technique in post-training LLMs. But it's also something that allows you to automatically identify the best model for some subset of your tasks, which can save you a lot of money.
Cars use AI for steering control (et al) and technology very similar to RLVR (hold the RL), eg property-based testing and formal verification, to prove the soundness of their embedded systems. Most of us in San Francisco trust Waymo with our lives more than human uber/Lyft drivers
As long as you can verify/test and take accountability for the thing you put your name on there’s no reason not to treat it as a process or search problem rather than one you assemble yourself by hand. The only problem is that it’s ironically much harder and more engineering than most “software engineers” are willing or able to do.
I spent several years working on permutation testing/experimentation and creating e2e verification of infrastructure because at scale, or when reliability/correctness are critical, you cannot rely on a single person’s mental model, or for the world to not drift around a system as it works now. That kind of system is what allows you to use LLMs or engineers who don’t know everything about it to improve or change it. It’s more science than art, which is often (but not always) what you want
But when nobody will die from your decision (and to be clear I think security is extremely important, but moreso for banking/healthcare than a private wow server), then “shoddy” becomes a matter of reputation/taste vs value/marketability.
The demand curve is different because it’s low stakes, like throwing a bad party or oversalting food. And part of the problem in software to begin with is too much LARPing about scale/engineering for things that don’t need it, as well as lack of accountability or care for things that do.
You can still be an “engineer” working on a game, it’s just more about making the game fun than making it safe. Or, you create a process for making and test hundreds of experimental bridges, and refine/invest additional time in understanding and verifying the safety of the best one.
Strong agree. I think the fundamental challenge of working in fields that increasingly become AI-enabled will be the ability to understand and direct large or intricate systems without prior knowledge/the advantage of having built the model as implemented. That’s already how it works in complex domains or large businesses.
It does require a different kind of ego/abilities than before. My (negative) framing of the whiplash effect is that it’s a reckoning of “process fetishism”/a bad kind of careerism in the tech hiring market (because for the labor market to work, candidates need to be evaluable and sortable by businesses, and many people build an identity/optimize for legibility around “best practices” or very particular “technologies” which might get them a job).
Ultimately, you need to know and learn/be responsible for stuff, and be able to help people with your labor, not be “a type of person” that isn’t effective at the task of helping. But at the same time knowing things and being able to take accountability/help people remains critical, especially because that’s what people will want to pay for even as “time spent typing it in” decreases.
Personally, I think it will be a good thing because software and “tech” will become a more strongly domain-driven/enabling medium for real-world or specialized things. IE it is the end to “software for its own sake” or “willingness to type it in and play with Jira/jenkins/frameworks” and the beginning of something that is more applicable or knowledge-building rather than “being the X for Y at Z”. Harder but more fun :)
They're not selling it to you/it doesn't come out of your salary?
They're selling it to your employer. You're literally not even the customer for this product. There's no need to get angry that they're charging enterprise/vendor rates for a product.
And it's free for up to 100k devices. If you are running anything on 100k devices you should be able to afford $0.50/device and. If you aren't then why do you care? It's still a very customer-permissive and flexible business model so I cannot understand why this is upsetting or offensive
I deploy browser extensions to millions of devices, and small local models that I can run in that space are incredibly appealing.
But the "per user" model is just especially difficult to justify here, and comes with a TON of fucking downsides like usage tracking, feature availability, and product structure (ex - is a trial user a user? how long? etc...)
---
And it's not even like they're justifying it with model download support or caching... they shove it entirely onto hugging face, or have you self serve.
As their literal target audience - I'd rather buy the weights for a fixed price (even a high one), and not let them influence my product design decisions with saas style pricing.
I genuinely think big tech co's top leadership have very sophisticated strategies/positioning that they simply cannot communicate or explicitly canonize due to their position as spokespeople for the company (and society writ large, news media, investors, customers, employees, vendors). Of course there are a lot of bozos and incompetent people flailing around and a lot of work ultimately gets wasted (which understandably bothers line employees a lot), but is inevitable and even necessary to eg hedge product strategy/comp and take risks on ideas and people.
It would not really be useful to have that conversation with employees because it's incredibly distracting (now product strategy is up for debate with way too many cooks in the kitchen), and very few employees have the exposure or skills to meaningfully contribute even if they think they do. I saw it firsthand at Google TGIFs.
Meta's strategy seems to be "personal agents" quite consistently. Remember they tried to buy Manus? And note that Muse Spark and the meta AI platform products clearly seem to prioritize web search, computer/browser use, and vision/language tasks over coding, which is something that had to bake for a long time. Also, this product launch itself is pretty interesting:
1. It's clearly a fast follow to the current FOTM hype startup Instinct with a much more comprehensive implementation and integration with their other agent products.
2. It's kind of like openclaw, which got a lot of non-developers very excited but was basically consistently unusable. Except this agent's compute runs remotely and presumably has slightly more sane development practices. IMO it's the first main openclaw-like product that has made it to the "just works" level of usability.
3. The focus on ecommerce is actually really really important, because Meta is trying to capture the intent/demand-driven purchasing flow that Google currently owns through search. Controlling the top of funnel is what enables google to make hundreds of billions of dollars per year on search ads. Meta is an advertising company and Google's search ads business is the most lucrative and centralized/well-defended advertising market in human history.
So it is actually a really big deal that Meta is trying to go after it (at least, the CUJ, it's possible that they'd monetize the agent-driven UX differently than search ads) because it's probably their best shot at disrupting that market and one of the few growth opportunities that would actually make a dent on their balance sheet. Obviously Meta is not going to lay out all that strategy stuff explicitly because for all intents and purposes it's a distraction and shifts the conversation in an unproductive direction (the strat behind the product, rather than the product itself). But it's pretty clear if you look for it.
Edit: Actually I thought about the advertising business more and I think in the short term this is partially about attribution/conversion. In 2022 the Apple tracking changes cost Meta $10B in lost conversion metrics; an agent-driven and proxied purchasing flow has built-in attribution and funnel measurement which is very valuable in its own right!
> very sophisticated strategies/positioning that they simply cannot communicate
It's Matryoshka nested parallel construction for corporate strategy.
There's a real, coherent, aggressive strategy that only a few in the inner concentric circle know, that's ring-zero.
Then there's the strategy that ring-zero tells ring-one, which isn't the real strategy, but it's sufficient to get EVPs and VPs to execute in rough alignment with the true, ring-zero strategy.
Then ring-one does the same dance with ring-two, etc.
I’m pretty sure if you asked my mom what problems AI could help solve for her, navigating website’s purchasing/account flows and directly answering questions about the contents of her email would be #1 and #2.
And my mom doesn’t use AI products like chatgpt because she’s not a student, nor agents because she doesn’t work in tech. To her AI, is no different from those chatbots websites pop up in the corner, the ones you never seek out or interact with intentionally, because you don’t need what they offer.
So I actually think this kind of marketing is quite helpful for regular people who mostly just use their phones to buy stuff, looking things up, navigate life, and entertainment. My mom doesn’t give a shit about APIs or sandboxing, or benchmarks and to her it literally is a hassle to manage a million one-off accounts and confirmation codes and receipts when she just wants to buy something on her phone. She would not assume AI is capable of that or know how to set it up locally.
that’s not even getting into the fact that the top 10% controls 50% of consumer spending in the US and primarily purchases convenience + health + experiences, whereas the other 90% primarily prefers to buy aspirational/identity based goods that evoke their mental model of a higher status lifestyle. It’s why the same bustling lifestyle archetype you criticize is literally used exclusively in car ads, housing marketing materials, consumer electronics, home goods, etc. Because normal people want to feel and/or look good not spawn subagents
I think they just want to show you ads and help you buy stuff. The incentive is actually to keep the data to themselves so they can monetize access to it via ads.
The shopping experience is significantly less hostile than Amazon’s 1P digital storefront and I kinda don’t care if fb knows that I want to buy a computer.
The only thing to worry about is that they want you to install a native app. But this UX would be difficult to provide for free via the web due to the obvious abuse potential of giving free access to LLMs + remote compute + browser and tool use. And I think as long as you use it to shop or automate web tasks (and give them access to the top of funnel for customer intent, the $300B/yr thing Google monetizes) they don’t really have any reason to abuse your data.
Try asking it to find a good deal for you for <item> across multiple sites. Then tell it to use the browser to navigate through the two most promising sites to confirm pricing and availability, and prepare comprehensive breakdown with its findings.
People shop a lot on the internet, actually. Between that and ads for the things people shop for, it’s pretty much the backbone of the Internet economy.
I bet they would purchase more things than they currently do, and seriously break the economics of Google/Amazon search ads (about $300B of yearly spending just for those two), display ads, and internet-first e-commerce sites if they could just ask an agent working for them to help research/source/purchase things without all the navigation and dark patterns in the middle. Personally I would probably spend at least $1k/yr more on snack/beverage subscriptions alone if it had less friction.
> working class peasant consumer
You mean the majority of people in the world? Most people only their computers to entertain themselves, look things up, buy stuff, and complete tedious tasks (taxes, email, etc) they’d rather not do.
How much do you and your peers spend a year on online shopping and how much do they pay out of pocket for SAAS or AI tokens? And how many of your offline purchases had a significant amount of associated online research involved despite technically completing offline? (Houses, cars, schools, hardware) Yeah that’s pretty much where all the money in the global software industry comes from
In a distributed or concurrent system, for full granularity, that can require specialized timing or virtualization techniques up to ensuring fully atomic snapshots and deterministic execution environments (and whether or not that properly models the SUT in real environments, or introduces bias/breaks the reproducibility in a way you care about)
Otherwise if you're only running against fixed checkpoints you have something closer to traces that maybe you could re-run or test against, in some cases, if you put in the work to set it up. In distributed systems that can be a lot of work so it's a bit vague if left unspecified. Because it's not enough to merely replay something if things can drift or don't accurately model the real system
reply