Replit rebuilt its sandbox engine with microVMs
frontier.replit.com
frontier.replit.com
I wonder what ecosystem replit exists in that seems to completely not overlap with any of the other AI technologies and companies....
Generally it's entrepreneurial types who would have gone to an agency to get something built, or would have wanted to go to an agency but couldn't afford the costs involved. These platforms are far cheaper and quicker, and if we're really honest not necessarily worse quality than what they would have gotten from the vast majority of those agencies, especially the cheaper ones.
This is not a comment on whether this is a good thing or not, and I have all sorts of concerns, but it's undeniably something I'm seeing, and the nearshore/offshore agencies are certainly starting to feel the impact.
With the advent of vibe coding, pretty much everyone has dozens (or hundreds) of early-stage side projects now.
But you're mad cause it's no longer useful for you.
Having used lovable.dev as well, I must say Lovable is a much better product.
Replit is easily one of the worst products and platforms I've use. I wouldn't even recommend it to my enemies.
1) they were inexperienced or just hesitant to use even managed infrastructure
2) they started with a small Replit footprint and kind of got stuck there out of some niche convenience
3) it started free* and was thought of as a cost cutting measure to use this temporarily VC subsidized service (we've all been there)
Their inexperience has definitely cost them as they continuously tack on half baked features but I took some of their prompts, got the project code, and tried Claude with far greater results and quality. That got me digging deeper and left me feeling like Replit is a border line fraud. They asked to support markdown in a JS app. Replit opted to build a Regex based markdown parser that barely worked. No one prompted it to roll its own. They just asked for markdown support. They then spent numerous sessions trying to get it to work never understanding why it didn't. All the while Replit was printing money from them.
There was so much that wasn't done, it was basically an Airbnb-like service and it lacked any capacity to register users or hosts, pay for or disburse payments, create or manage listings, notifications, administration. They went from expecting to launch in a couple weeks to looking at my roadmap and quote of about 3 months more development work just for a launchable MVP, which wildly exceeded their budget or commitment to the project.
I don't know how much of this was Replit's fault but some of it certainly was, like despite being a monorepo the frontend had no connectivity with the backend, there was no barriers between user data and most endpoints were not secured, the server had zero hardening, some endpoints would take the user's id as a posted value.
Replit's later attempted pivot to B2B or enterprise was odd. I didn't see them succeeding per se, but I had assumed they probably built a generic code execution backend, and probably figured they can resell it to some businesses doing patch processing or whatever have you. I have built many of these "execute this piece of (potentially malicious or untrusted) code for me" platforms in my career. They all end up looking more or less the same on the backend, but their characteristics are different depending on the particular consumer. I saw a billboard about a Replit + Plaid ad which was odd.
I used it in our larger Programming Languages courses with 200-300 students, replit was the guaranteed alternative to offer if someone had a problem with say local installation of Clojure or Go or Rust.
At some point in 2023 or 2024 Replit became extremely restrictive in their Education offerings.
Looking at replit front page I guess they pivoted away from Education.
I can't even tell what Replit offers now as they don't even have a free plan anymore?
PS I moved all my courses to Github Codespaces as Plan B. It was a bit more work but heck even Prolog works fine there. I mean its just Ubuntu.
Is that about right?
A thing I wish more people would do: ask prospective cloud hosting companies "is there a mode of this offering where my workloads might share a kernel with other tenants I don't trust, as would be the case with Docker?", and if the answer to that question is ever "yes", disqualify the provider.
I thought that the case of security was better within the industry and that the industry would be punished for bad security practices.
What were the engineers of Replit doing then? Even with a generous perspective, I fail to understand how they couldn't have pushed back against it just until now. This is unacceptable in many ways.
The engineers must have realized that the security that they had was mostly just all duct tape? (because if not then it's a bigger problem)
or is it just something about how startups operate or the incentive structures of the corporation that I am failing to understand?
Is the cost analysis of the situation treated it as a "worth it" situation? That, being fast and breaking things and bad security practices are a part of cost cutting and having more revenue faster, something without which a startup may fail.
Have they recognized some deeper secret where for the startup, it is much better to fail big than failing small? (especially so when in some sense most founders who went big and failed, are actually rewarded for it in their future more often than those who failed small)
I have no question in mind that for the executives, the situation is wildly different.
Though, I have a question to ask: What about the engineers working there?
Is it that management stresses them to not work on fixing it and if that is the case, then how are they able to rationalize it upon and their contributions to it (if the end result of it is that the company gets customers into such a system and ends up with their systems compromised because of following such bad practices?)
How do people feel about the hardware isolation provided by microVMs versus strong software isolation techniques like gvisor?
Right now, we put a huge amount of stock in "hardware isolation". If that starts falling to agents to any substantial degree, I wonder whether we might end up seeing a transition toward patchable software isolation, similar to the rise of software RAID that occurred a while back.
I think "hardware" vs. "software" is the wrong way to frame this. The big difference is between shared-kernel multitenant and guest kernels. gVisor (in some configurations) is like an 80% solution; a partially emulated guest kernel. I think the verdict is in on shared-kernel vs. not: don't share kernels between tenants.
The hardware isolation itself --- AMD-V, VT-X, &c --- has held up for almost 2 decades now. You never know, of course, but if you were going to place a bet it probably wouldn't be on hardware isolation failing before software did.
gVisor and Firecracker are nothing alike. gVisor is an application kernel written in Go. Application kernels will make your system much slower and can only solve a subset of security issues that would affect the kernel. They're like a kernel proxy of sorts.
Firecracker is a KVM virtual machine but made much more efficient. It's the most desirable of the two. Firecracker and KVM don't require bare metal, but in a virtualized environment they will require nested virtualization support. Nested virtualization is supported by just about every hyperscaler.
The reason KVM is preferable is because it provides strong isolation of the host kernel interface and independent emulation of host devices.
Firecracker doesn't require bare metal, but (1) you want it for performance and efficiency at scale and (2) you take a security hit for nesting.
I haven't used gVisor in a while, but could you mount an NFS or CIFS share on gvisor or can you manage nftables, seccomp, namespaces, etc? At least that didn't use to be possible. So depending on the solution you're trying to provide, there was a big difference.
Google tried to do their Cloud Run gvisor only, then 2 years later switched to a hypervisor (though I don’t know if they use kvm or something else). That has been my experience also in trying to run an “emulated” Linux anything. Eventually some tough compat issue arrises and you wish you had just ran the real thing and figured all the issues with that instead. Tbf, gVisor offers much better density and much easier resource management etc. just the compat issues are tough unless you’re willing to (or can) say no to some scenarios.
The security professionals whose sentiments you were describing would surely care. I was answering as a software engineer that often works at this level of security. I would and do care.
I avoided reading the piece, just in case.