产品背后:Replit | Amjad Masad(联合创始人兼首席执行官)
Behind the product: Replit | Amjad Masad (co-founder and CEO)
Amjad Masad: The idea behind Replit is that making software today is very difficult. We want to make it easier. People view this as a developer in their pocket essentially. We have 34 million users globally. There’s people everywhere learning to code on Replit, building startups, building personal software, personal tools.
What is Replit
Lenny Rachitsky: For people building products, say, product managers, founders, what skills do you see will matter more, matter less?
Amjad Masad: Typically, you’re bottlenecked where your ideas are not fitting in because they need to be made and they need to be made quickly. Now, you open up that bottleneck. So now actually making things is a lot easier. Actually, you become limited by how fast you can generate ideas.
The Scale of Replit
Lenny Rachitsky: I think people are unaware of just how far things have gone.
Amjad Masad: I could imagine whatever five years from now, someone running a billion-dollar company with zero employees where it’s like the support is handled by AI, the development is handled by AI, and you’re just building and creating this thing.
Competition and Product Positioning
Lenny Rachitsky: Man, the future is wild. Today, my guest is Amjad Masad. Amjad is the co-founder of Replit, an AI-powered software development and deployment platform for building and shipping software. It’s one of the fastest-growing developer communities and AI products in the world. There’s a lot of talk these days about how AI is changing, how products will be built, how product teams are going to operate, which functions will be more and less valuable over time. But I feel like very few people have actually seen what modern AI tools can do and have fully grasped how much you can get done with very little technical skill now and in the future. And so I’m going to do an experiment with this podcast where I’m going to do a series of behind the product episodes where we go deep on important products that product builders should be aware of and should probably start playing with.
In our conversation, Amjad does a demo of what you can do with Replit today, which is going to blow your mind. And then we spend most of the conversation talking about the implications of this on the future of product development, on the future of product management, and on the future of startups and founders. It’s a very exciting time. It’s also a very scary and destabilizing time for a lot of people, and my thinking is the more you are aware of what’s possible today and where things are going, the better position you’ll be in to thrive in this very wild and crazy future that is coming very fast. If you enjoy this podcast, don’t forget to subscribe and follow it in your favorite podcasting app or YouTube. It’s the best way to avoid missing feature episodes, and it helps the podcast tremendously. With that, I bring you Amjad Masad. Amjad, thank you so much for being here. Welcome to the podcast.
Amjad Masad: It’s my pleasure.
The Product Demo
Lenny Rachitsky: I thought it’d be great to start with just having you explain what is Replit? What’s the vision? Where is this going? What job does it do for people?
The Prototyping Process
Amjad Masad: The idea behind Replit is that making software today is very difficult and we want to make it easier. One of the reasons for the difficulty is that it is very fragmented, so you would need to download what’s called an IDE. It’s basically a code editor. You need to download the runtime, basically Python or JavaScript, need to figure out a package manager to configure your kind of open source packages, and once you’ve done all of that, you need to figure out how to deploy it, how to share it. So it’s a very hard process, and that’s one of the ways where people get stuck and never learn how to code because it just feels like this cumbersome IT process.
And so the vision for Replit has always been is like, okay, making software is fun, is great, more people should do it, but so for more people to do it, it needs to be easier to do, it needs to be in one place, and it needs to be learnable. It’s easier to learn. So that’s the product today. It is I think one of the more easier IDEs/ environment/deployment environment on the internet, and I think we make it really easy for people to just jump in even without prior experience of coding, especially now with the new AI products that we built.
Limits of AI Agents
Lenny Rachitsky:
Prototype Completion and Testing
Amjad Masad: We have 34 million users globally. We have a large global presence. There’s people everywhere learning to code on Replit, building startups, building personal software, personal tools or internal tools of the companies. More recently, we’ve been expanding to companies. We released our kind of B2B package in July, and that’s been growing really fast. It’s been really fun to see people bring Replit to work as well.
Impact and Future Vision
Lenny Rachitsky: Damn, I knew it was popular. I didn’t realize it was that large actually. As I was preparing for this podcast episode, there’s this tweet that went viral where this guy, Jevin, who I actually know. I know this guy from Canada, he’s awesome, tweeted about how his 11-year-old girl built an app in Replit. She just had an idea and she built it. And the best part of it is someone in the… replied to him and they’re like, “You have to launch an app. You have to host it somewhere. You have to build a database. You have to deploy it. There’s no way to do that.” And he’s like, “No, that’s exactly what Replit did.”
Amjad Masad: Yeah, that’s what we do. Everything that commenter was talking about, and he’s right. The surprising thing about an 11-year-old building an app is not so much even the coding, it is like all the nonsense around it, and so we just abstract all that away.
The Technical Architecture
Lenny Rachitsky: I love that and I struggled with that myself when I was an engineer way back in the day.
AI Computer Interfaces
Amjad Masad: Oh, you were an engineer. I didn’t know that.
Impact on PMs and Founders
Lenny Rachitsky: I was. I was an engineer for 10 years. I was an engineering manager, and then I jumped ship into product.
Amjad Masad: Wow.
Shared Language for Designers and Engineers
Lenny Rachitsky: I’m happy I did but I do miss that. I was not an amazing engineer. I was a good enough startup engineer, so this is the kind of stuff that I would’ve left to use. So we’re going to jump into a demo of what this actually looks like. I thought maybe actually before we get into it, there’s other tools that people are aware of that help you build stuff. And so to put a finer point on what this does and how it’s different from other things, you may have heard of, say, Cursor, it comes up a lot these days, just talk about a little bit about the competitive landscape of who else is out there that helps you build product.
Exponential Growth of AI Capabilities
Amjad Masad: Again, we go back to this idea of end-to-end platform for making software. So that’s from writing code all the way to deploying it, and monetizing it and all of that. Now, every step in the process of the software development lifecycle, there are a lot of different tools. So Cursor is a fork of VS Code that’s made that has really awesome AI tools, but that’s an editor. You still need runtime, you still need a deployment environment. Actually, quite a few users use Cursor in tandem with Replit, because Replit just simplifies the runtime and deployment environment.
And so you have products, AI products, different places in the software development lifecycle, but really what differentiates Replit is that we do everything, but also that makes it harder to adopt for certain people. If you’re at a big company, it’s very easy to bring a new editor and start coding with it. It’s quite hard to bring something that’s quite opinionated about everything from how the code runs to how the code deploys, but that’s the trade-off we’re willing to make is like yeah, we’re not going to get into the enterprise main software development pipeline, but we want to empower everyone to be able to build software, and that means product managers, designers. We have operations people, sales ops, HR ops. We have lawyers using Replit, and so it is democratizing the act of software engineering.
Lenny Rachitsky: Amazing, and that’s why you’re here. Let’s do a demo. While you’re pulling it up, you’re going to share your screen and show us what this product can do. And the reason I am excited about doing a demo, and this is an experiment, kind of a new type of podcast episode I’m doing where we’re diving into specific products and what they can do, I feel like there’s so much talk about AI and what it’s doing and people keep reading about, oh, AI can do this and AI can do that, and I feel like not many people actually see this stuff in action, especially the most cutting edge stuff. I think people are unaware of just how far things have gone and how much is actually possible, especially when someone that knows what they’re doing is using the product. So I’m excited to show people what is actually possible and especially because this is going to impact the future of product management and product teams. So I’ll turn that over to you. Give us a demo.
Advice for Founders and Leaders
Amjad Masad: Awesome. So this is Replit’s homepage. You can create what’s called a Repl, which is a project. We have all sorts of languages. You can pick from really in the hundreds, but most recently, and this is how Replit became a thousand times easier, is you can just describe what you want to make. So you go on this home page, we have this text box, and you can write something like make me a cool app or what have you, but a more descriptive prompt is better.
And so I asked RPM at Replit, Aman Mathur who’s a fan of the show to tell me what PMs like to build. And so he came up with a prompt. He kind of really crafted a great prompt. So I’m going to put it here. And basically, what we’re asking for is we want to build a web application. You can say what stack you want to use or you can leave it up to the AI to decide. Here we’re saying build it in Node.js for product managers to track feature requests on a public dashboard. So say I have a product, I’m growing, I have a community, I want that community to engage with building the product. I want them to submit feature requests, vote on them. I want to be able to manage that. So we’re talking here about the features of voting system, feature requests.
Lenny Rachitsky: Read a few of them just for folks that aren’t watching on YouTube to give them, send some of the stuff in this prompt.
Fluidity of Team Roles
Amjad Masad: So a feature requests submission, so allowing the users to add features. A voting system, so allowing users for these features, feature requests and status tracking, being able to, it’s like a kind of advance style board with columns like planned and progress, so that way the admin can kind of share with the community what they’re building. And we want it to be user-friendly design, so make it modern and all of that nice kind of prompty things. And then admin controls for product manager. So as a product manager, I want to be able to really manage this community.
How to Try Replit
Lenny Rachitsky: I love that it builds internal tools too, not just the front end.
Amjad Masad: Yes. Exactly. Exactly. All right, so we’re going to start building. Since this is a pretty big, big prompt, the initial coding might take a while. There’s different styles of using Replit agents. I often go with minimalist prompts. That’s also how I code as well. I have a vague idea for what I want to build and iterate from there. Other people, product managers like to write PRDs and more descriptive things, and you can do either of those things. The AI now responded and then said, I’ll build all of that for you. I’m going to build up the initial prototype and you can tell me how it feels, and then we can make it better from there. The AI is also suggesting, adding comment threads, implementing email notifications, and so I can select those and it’s being creative, it’s telling me what else I could build, but for now, I’m just going to go with a prototype and then we can assess from there.
So as you see, as the prototype is starting, you can see this progress pane where we can watch the AI doing its thing here. It’s created a Postgres database. Obviously, when we’re building a full-stack application, you need to be able to save things. This is one of the cool things about Replit. We have all these services, storage, database. So now it’s coding, it’s building the database schema. Now, it’s building the home page, and it’s actually quite fun and edifying to watch it build this, because you can really start to learn how to structure web apps. And if it runs into a problem and as things get complicated, it might run into a problem and you want to be able to help debug and things like that, it’s good to be able to have an idea of what’s going on, but it’s not necessary. I think a lot of people just don’t care about the code and are still able to build things, but we want to make the process transparent. We want to show people exactly what the agent is doing.
Assistant Product Preview
Lenny Rachitsky: You’re basically sitting there behind an engineer on a computer and just watching them code is what the experience feels like.
Amjad Masad: Yeah, and actually, the way we built it is it’s a multiplayer system. So Replit has real time, what we call multiplier coding, and we reused the multiplayer system to build the agent. So the agent in the code is structured as another user of the platform. So basically, we’re both coding together. So I can go into the files here and that’s the thing that makes Replit really cool. I think people are familiar with some of the more chat interfaces like v0 and others where it’s purely chat, but this is a full IDE where you can go and look at the files and edit them yourself or ask the AI for an explanation.
Lenny Rachitsky: What’s the limitation of what this can do today? What can’t you do? Say you’re like, you have zero coding experience, what sorts of products can you not yet build with something like this that might be possible in the future? How far does this take you now?
Amjad Masad: You can build MVPs. I think you can also start to get some initial users. I think when you start iterating on the product like large iterations, you might run into problems. For example, it’s not very good at database migrations, and so we’re trying to fix that. So when you’re iterating on the product, a lot of the times, you’re actually changing the structure of the app and that requires database migrations. And so now it might change the database in a way that creates an error that’s unrecoverable. And at that point, you might get stuck, especially if you don’t know how to code.
Some people will figure it out by going to ChatGPT and Claude and asking questions and I actually am really inspired about how persistent some of our users are, which is really amazing. But I think you’ll get an MVP pass, the MVP where it’s a product that’s working and you need to change and iterate on it. It’s still a struggle now, but I expect over the next few months, we’ll continue. It’s if you think about it’s like we’re building as you were building, so we’re building out the agent so that it can continue getting better as our users are also building their applications.
Lenny Rachitsky: Got it. So what I’m hearing is it’s really good at building the first version and helping you get to something that you can even have people use. It’s not amazing yet evolving from there, using AI to help you make the product better and better and better and iterate.
Amjad Masad: Yes.
Lenny Rachitsky: But you can get in there if you know how to code and take it from there, right?
Amjad Masad: Yes or you can hire someone. We have a feature on the site called Bounties where you can hire human coders to kind of help you finish.
Lenny Rachitsky: That’s going to be our job for humans. That’ll remain for a while.
Amjad Masad: You know what we want to do? We want to get to a point where the agent can go grab a human when it runs into a problem. I think that would be sick.
Lenny Rachitsky: Oh, my God. It’s like everything’s reversed. I love it. Oh, I think it might be done. Check that out.
Amjad Masad: Yeah. So now the agent is asking us, is the application running and showing the homepage?
Lenny Rachitsky: Like it’s confirming.
Amjad Masad: Yeah, almost asking us to do a QA. I’ll just say yes. So it found an error. So there’s an error here and it’s like there’s a dumb warning, “I’m going to fix it.” So in the meantime, as it’s fixing it, so it can be proactive, right? Because it looks at all the errors and things like that, but in the meantime, we can use it. I just created an account. It’s coding.
Lenny Rachitsky: [inaudible 00:20:12] It’s cool.
Amjad Masad: Let’s see how it restart. Okay, we’ll wait for it.
Lenny Rachitsky: How long would you say it would take an engineer to build this? A typical engineer?
Amjad Masad: A few days, I would say to a week. I mean, if you’re really good, it might be hours but it probably would take me a few days. I would say I’m like decent engineer, it’ll take you a few days.
Lenny Rachitsky: And it took how much? 5 to 10 minutes.
Amjad Masad: Yeah, and it probably cost us something in the sense.
Lenny Rachitsky: Wow, in terms of compute.
Amjad Masad: In terms of compute, yeah. Probably, I would estimate it like 15 cents or something like that.
Lenny Rachitsky: Wow. Okay, so here it is.
Amjad Masad: Here it is. And the agent was like, “Okay, this is looking good, completed it if you want to deploy it.” But I’m like, “Okay, I’m going to test it first.”
Lenny Rachitsky: And so currently, it’s living just locally on your local host.
Amjad Masad: Yeah. It’s not local host, it’s on a Replit but yes, it’s the equivalent of local host. Because it’s really easy, I can even invite you to this session. You can be here with me and so it’s all online.
Lenny Rachitsky: Got it.
Amjad Masad: So let’s submit a feature. So make the product prettier. That’s what a typical user might say. So we have this here, you can upvote it. I guess I can’t upvote it because I’m the user that created it, but created another user. You can upvote it. But now we need to be able to move things around as the admin, so I don’t know how to log into the admin panel. So I’m going to ask the agent, how do I log into the admin panel? So it might’ve already built the feature, and it’s not exposed in the right way. It’ll be able to [inaudible 00:22:08]
Lenny Rachitsky: What I love about just watching you interact with this thing, and just real quick throughout, it feels like an engineer that is behind the scenes building this thing like on Slack and you’re just talking to them. They built this thing, they’re like, “Check this out, I’m done.” And you’re like, “Oh, okay, about how do I log into this admin panel?” And they’re like, “Okay, here we go.”
Amjad Masad: Yeah. So it says, “Would you like me to help you register account?” So it’s creating an account, an admin account for me. So it’s not only builds things, it also maintains things. In this case, it’s actually doing SQL queries. It’s not writing code to create an admin account for us.
Lenny Rachitsky: It’s insane. I want to talk about the implications of this on product development and product management and founders, but what we just witnessed is somebody, I know you do have technical abilities, but someone that didn’t have to have any technical skill, build a real product that people can use in five minutes that looks good and works, and you could keep making it better by talking to this agent.
Amjad Masad: I’ll tell you from our experience what we’re seeing, there’s so many products that are empowering developers. It’s a very easy calculation to say We’re going to make engineers 20% better and we’re going to sell it to companies and we’re going to take 10% of that value, right? That’s why there’s so many startups now that are just trying to make engineers a little better. Our calculation is like, well, what if you made everyone developer? What does that look like? And so when we released agent and really made programming a lot easier, what we’re seeing is that people, exactly like you said, people view this as a developer in their pocket essentially. What we’re hearing from customers is that I’m doing things I would otherwise have to go hire a developer, but also because the activation energy is lower than going to hire developer, whether Upwork or other places, I’m building a lot more ideas that otherwise I wouldn’t have built.
I think it was it called the javelin’s paradox or something like that, which is when the cost of things go down, the total consumption of it goes up, which I’m not sure why they call it a paradox, but the cost of electricity goes down, maybe you would expect that the total spend goes down, but actually total spend goes up because people consume more of it. And so I think that’s going to be the case of software. As the costs go down, people will just make a lot more software to improve their lives and to improve their work and start more startups and all of that.
Lenny Rachitsky: So to follow that thread, what are you seeing inside of startups or even big companies in terms of how folks are already using this knowing this is the worst it will be and it will only become smarter and better these days? How are people actually using this that are say product managers or just non-technical people within startups or bigger companies?
Amjad Masad: On the SMB side of things, a lot of people are building kind of back office tools. So we have real estate agents that have a lot of data, have a lot of things they want to manage in their business that building a lot of these tools, that they otherwise would have to buy, but typically when you buy, it’s actually not exactly what you need. And that’s kind of the problem with SaaS, like one size fits all. And so a lot of people are seeing it as sort of a SaaS replacement for in-house tools and things like that. And then when you go to the bigger companies, it’s anywhere from prototyping to actually production apps to tools as well. So we’ve seen product managers build, like I said, like a v1 of an app and actually go out and test it with users. I can’t name the company, but there’s a public company that have used Replit to test a v1 of an app.
And obviously after that sort of works, they take it to the engineers and they’re like, “Okay, we built this thing. We think it’s a great thing. We test it with some users. Let’s go actually put it on the roadmap and build it into the actual product.” So you are instead of unblocking product managers from having to need engineers for everything that they want to build so they can really build the v0 or v1 of the product.
And that’s super empowering for them. We saw it also with marketing departments like SpotHero has a head of marketing that actually can code decently well but use Replit to build these apps, and they built a competitive analysis application that looks at a competitor’s pricing and makes sure that they’re benchmarked correctly. And so it’s a full stack app use database and everything and it runs on a continuous fashion. And we see sales engineers use Replit to spin up prototypes really quickly. So actually someone at X, formerly Twitter is on the partner engineering side of things, and he uses Replit agent to spin up applications and prototypes for customers to see how they can use the X API.
Lenny Rachitsky: I love this. I love these examples. By the way, the demo, is there anything else you want to share about the demo before we close that out?
Amjad Masad: So it created an admin account. We can ask it with the username, password and kind of go into it and manage it but basically that’s it. The app’s complete in terms of what we ask for. We can send it out. I can give you a URL. Let’s actually just deploy it really quickly to show people how you can deploy.
Lenny Rachitsky: Maybe the show notes, we’ll link to the app, you could check it out.
Amjad Masad: Sounds good.
Lenny Rachitsky: Okay, cool. That’s amazing. So this is deploying it onto some cloud provider. I don’t know what you use, but…
Amjad Masad: We use Google Cloud. So we abstract all of that away from you, but we use Google Cloud behind the scenes.
Lenny Rachitsky: Imagine a place where you can find all your potential customers and get your message in front of them in a cost-efficient way. If you’re a B2B business, that place exists, and it’s called LinkedIn. LinkedIn Ads allows you to build the right relationships, drive results, and reach your customers in a respectful environment. Two of my portfolio companies, Webflow and Census, are LinkedIn success stories. Census had a 10x increase in pipeline with a LinkedIn startup team. For Webflow, after ramping up on LinkedIn in Q4, they had the highest marketing source revenue quarter to date.
With LinkedIn Ads, you’ll have direct access to and can build relationships with decision makers including 950 million members, 180 million senior execs and over 10 million C-level executives. You’ll be able to drive results with targeting and measurement tools built specifically for B2B. In tech, LinkedIn generated 2 to 5x higher return on ad spend than any other social media platforms. Audiences on LinkedIn have two times the buying power of the average web audience, and you’ll work with a partner who respects the B2B world you operate in. Make B2B marketing everything it can be and get $100 credit on your next campaign. Just go to linkedin.com/podlenny to claim your credit. That linkedin.com/podlenny. Terms and conditions apply. Let’s go down this thread actually while this is happening, just like what allows for this to be possible technology wise? What is the stack? Whatever you can share that enables this to exist.
Amjad Masad: Yeah, for sure. First of all, it’s all the abstractions that we built. So the way a Replit works is the very bottom layer. It’s our runtime. So this is the operating system, this is the package manager, this is the language runtimes. We built a system that is able to install packages in any language, including native packages. So the AI, anytime, it needs a package. I can go here and show one of those. By the way, the AI can take screenshots as well so that it checks it works. So here you can see it is taking screenshots to make sure that the homepage is rendering. Here, you can see it wanted a drag and drop library, and so it installed that. And so it has access to all the packages across all languages, including Linux and all of that. And then the layer on top of that is the editor and the infrastructure that runs the editor, including what I described as the multiplayer editor.
And then we expose all of that infrastructure to the AI. And there’s almost like a new discipline called AI Computer interfaces. So sort of like HCI is now a ACI and turns out LLMs need interfaces that are actually quite different than humans. They’re trying to make them use human interfaces like Anthropic’s computer use, but those are really expensive and you need to process all this images and video. So instead, for the shell for example, we give it sort of a text representation of what the shell is doing at a certain increments for package installation. We give it a certain tool for editing. We give it an editor tool that when it’s writing the code, it’s getting feedback on whether there are errors or not, similar to what a human sees, but it’s actually old text just to make it easier. So that’s AI computer interface, and obviously, all of that is sitting on foundation models. So the improvement in foundation models has allowed us to build this.
The most important model that we use is the Sonnet model from Claude, from Anthropic, and it is the best model at coding. So that’s the model we use for coding, but we use models from OpenAI as well because a multi-agent system. And so we have models that are critiquing. We have manager editor model, and we have a critique model and different models will have different powers. We also train some of our models, like the embedding model for search is something we trained internally. So I actually wrote about it back in ‘22. I said it’s going to be society of models, like products will be made of a lot of different models, and it’s quite a heavy engineering project.
Lenny Rachitsky: To say the least. We were talking offline and you said you’ve been working on this since 2009 when you first built the first idea of Replit. Is that right?
Amjad Masad: Yes.
Lenny Rachitsky: Oh, my God.
Amjad Masad: Here’s the deployed app. I can send it to you and you can use it and you can see my request even on the logged out page so I can register, upload it, and log in as admin and move things around. We can see what’s in progress, what’s completed.
Lenny Rachitsky: This looks like a product. I could see designers spending days designing, passing it to engineering, PMs, having feedback, engineers taking a few days to build it.
Amjad Masad: Yes.
Lenny Rachitsky: And here’s just a prompt, here’s what I want.
Amjad Masad: That’s right. And we can iterate on it very easily. We can also iterate on the UI. We can say, I don’t like this or that, and it’ll do a good job. So we can go here, we can start a new session or a new session to create an entirely new feature here, and it’ll just do the right thing.
Lenny Rachitsky: And it builds from that code base. It understands here’s what you’ve built. I want to add this thing.
Amjad Masad: Yes.
Lenny Rachitsky: Okay.
Amjad Masad: And that becomes your history, right? This was the v1 and now I’m working on this new feature, and it’s almost like what engineers do in Git commit messages. By the way, it generates Git commit messages for everything that it does so you can roll back as well. And so we’re trying to make it so that yes, it’s for everyone, but we’re trying not to abstract too much away. We want to build tools for you to learn to use. And so we want power users to be able to understand the full power of Replit and it is really deep product. I think you can spend a couple of years to kind of master it.
Lenny Rachitsky: I want to talk about implications, but I want to come back to something you mentioned that is incredible that people may have missed. You basically built a computer specifically designed for the AI agent to use that is a different version of a computer specifically optimized for how AI wants to use a computer.
Amjad Masad: Yeah. So there’s an entire discipline called like HCI, right? It’s like how do you do that-
Lenny Rachitsky: Human-computer interaction.
Amjad Masad: Yeah. So now there are papers about AI computer interfaces and interactions. And so large language models are trained on large stacks of corpus from the internet, but they’re still kind of alien creatures. So they’re not like humans, so they have different behaviors. It’s unclear what’s the best way to give it an editor. So there’s so many experimentation about what’s the best way to give it a view on what’s editing, how many files can you show it before it starts to hallucinate. And right now, it’s more of an art than science, but it’s becoming more and more like a science.
Lenny Rachitsky: This is insane. So it’s a simple way to think about it. There’s this foundational model, here’s what I want you to build, and here’s a computer to use to build it.
Amjad Masad: Yes.
Lenny Rachitsky: How am I [inaudible 00:37:07]
Amjad Masad: Here’s a computer with a set of tools. Here’s a tool to install a package. Here’s a tool to edit the code. Here’s the tool to run a SQL query and also services. Here’s a bunch of services you can graph from. Here’s a database service, here’s an object source service, here’s an auth service. So you can think about it as a bunch of external services, the computer with a bunch of tools, and they’re all interfacing with the foundation model.
Lenny Rachitsky: It’s funny listening to this how, it starts to feel like the fact that we might be living in a simulation is not as far-fetched as it may feel. Like this feels like the beginnings of what a simulation computer would be.
Amjad Masad: Yes. You can go really Sci-Fi on this and it’s like where is it headed, right?
Lenny Rachitsky: Yeah.
Amjad Masad: If we give it enough tools, let’s say, I can drop it in Slack and instead of interfacing with it in this fashion, I want to interface with it in a totally autonomous way. So we actually have this feature coming up where instead of me testing it, we give it another agent. So here, instead of me interfacing with it and saying this is running or not running, we can give it another agent that is actually testing the application and then let’s say interface with it entirely through Slack. And I’ll say something like, give me Taylor Swift tickets the moment they land.
And so it’ll build an app that continuously monitors the web for when Taylor Swift tickets land and there’s an agent that’s using the app to be able to get that. And you can imagine it has some kind of wallet or credit card. And then the moment it lands, it gets it. What I’m trying to say is that software, like agents being able to do software, is how AI gets more general because software runs our lives, runs the internet, runs our businesses. And so the more competent AI becomes that software, the more general they are in terms of what they can do.
Lenny Rachitsky: Okay, this can go in so many directions. I’m going to bring us back to the implications for people building products, say, product managers, founders, how does this change, that function, that skill set? What skills do you see will matter more matter less? Which functions are maybe in some danger and they should start thinking about a different career path?
Amjad Masad: One interesting persona that we’re seeing is the CEO, the CEO of startup. Andrew Wilkinson from Tiny is a big user. And so these people are typically creatives. They built a company, they hired people. A lot of them can’t code. A lot of them are designers or product managers or something else. And you can imagine a bottleneck, you can imagine a bunch of ideas in their head, and the ideas have to translate through them talking. And then someone else listening to them and assuming that someone else actually understands what they say, and then that’s someone else going and trying to build what they want to build. And also assuming that person has time, because a lot of times, your engineers are kind of stuck building the current thing. They’re not thinking about the future thing. And so what gets me excited is a lot of these CEOs are building the future concept, the next product they’re going to build, the next, say, company they’re going to build.
And so it unlocks the creativity and again, sort of unblocks them from that. And look, it’s a v1 of the product but it can push things forward. You can touch it, you can feel it, you can say, okay, this really has lags and we should work on it. You give it to your engineers and they can improve on it from there. So that’s one persona but I’m really excited about it, the CEO/founder. In companies, one of the things that I think is sort of hard about tech companies is these silos between designers, product managers, and engineers. And everyone feels that pain of, we have low bandwidth communication, which is language and then text on Slack and Zoom calls. And it leads to a lot of frustration, because it’s really easy to misinterpret people and again, leads to siloing where people working on something, and then you pass it on to the next team and it’s not really what they expect.
That happens a lot between designers and engineers, but the common language that everyone shares is code. Ultimately in software tech companies, everything that we’re talking about need to eventually flush out in terms of code. And so what if the language becomes actually working prototypes and working applications? For example, we have a Figma extension that translate Figma mocks into React that runs on Replit. So instead of giving the engineers just mocks or screenshots, whatever, you just say, oh, here’s a bunch of React code, just make sure it runs on our infrastructure but don’t mess with it, don’t move the pixels around. And so I think it just opens up silos of the companies, make communication around product a lot more concrete, because I can give you a working prototype and that’ll change how people work, if you can imagine that everyone can make software. It’s really kind of a radical reimagining of not just what tech companies are but really what most companies are because everyone can be more general.
Lenny Rachitsky: So say you’re a PM listening to this, an engineer or designer, what skills do you think if you were one of these folks? If you were in building Replit right now, what kind of skills would you suggest folks focus on more and would you think are just like, okay, this can be less valuable in the future, don’t worry about these sorts of things? And you can either pick one of those three functions or all three.
Amjad Masad: I think a very important scale that’s perhaps harder to develop but it’s worth working on is being generative, being more generative, being able to generate new ideas quickly, because you can think about it as a factory line. So you have ideas, you have the production of these ideas or the initial production of these ideas, and then you have other people that want to consume these ideas or work with you on these ideas. And so typically you’re bottlenecked by the middle part where your ideas are kind of like they’re a lot of them and they’re not fitting in, because they need to be made and they need to be made quickly. And so now you open up that bottleneck. So now actually making things is a lot easier. Actually, you become limited by how fast you can generate ideas, and I find that true of myself as well. I consider myself quite generative, but now I have this tool and I can build a lot more and explore a lot more and I’m finding that, well, actually, I’m running out of ideas sometimes.
So training that muscle I think is a good thing. I think learning a little bit of coding and not the traditional way of learning coding. If you go to a coding bootcamp, they’re going to start with what is Git? Actually my co-founder, Haya, was a designer. When we’re first building the Replit together, she went to WebAssembly to do a coding course. And the first day, they spent this whole time on Git and she’s like, “What is that? What does it do?” I still don’t know what it exactly does, but it’s like you’re inverting the process, you’re giving the tool before the actual problem. And so I think all of that stuff, you don’t have to worry about, so things that you don’t have to worry about. I think a lot of the, as a PM, as a designer, as someone who’s not in your code editor every day, don’t worry about all the tooling.
And if you learn a little bit of coding just by talking to an AI, doing a little bit of debugging, building something with Replit, running into a problem and trying to fix it just using AI, you’ll learn a bit of coding. And I have this that’s been called not by me, dubbed as Amjad’s Law, which is the return on investment for learn to code is doubling every six months. And really just learning a little bit of that skill, learning a bit of skill about how to prompt AI, how to read code, and be able to debug it. Every six months, that’s netting you more and more power because you’re going to be able to create a lot more. It’s going to be easier to create. You’re going to be able to create a lot more complete things. So that’s another skill that I think could be necessary.
Lenny Rachitsky: This is super interesting. Okay, so this last point, you made Amjad’s Law. It’s interesting because when people, as someone’s listening to this, I could see them being like, engineers are in trouble. Why do you need engineers at this point? These agents are building the code. Your point is specific engineering skills are going to be incredibly valuable and more and more. How often are they doubling would you say? Every year you said?
Amjad Masad: No, every six months.
Lenny Rachitsky: Every six months, these specific engineering skills are becoming more valuable. And the idea is you don’t need to know everything. You don’t need to know the foundation, to build the app as much. It’s more to unblock the agent and understand the mental model of how this stuff is built so that you can move forward fast.
Amjad Masad: That’s right. That’s right. Understanding the basic components of it, I would say, yes.
Lenny Rachitsky: Yeah, so it’s like we need new engineering schools to teach you these very specific skills versus spending years on algorithms.
Amjad Masad: And I think no one has done that yet, and I think this is a big business probably ready to get built. It’s like AI native coding. It’s totally different than traditional coding. That’s why on Hacker News, there’s so much skepticism about AI native coding tools, because they’re like yeah, it’s a glorified autocomplete. And I understand if you’re writing operating system, kernels, it’s not really doing that much for you, but if you’re building products, it’s building it for you at this point. And so if you’re starting a school to teach AI native coding, you would skip so much of computer science and the basic tools, and you would teach the basic idea of how to structure an app, and then you would teach prompting and then you would teach, I think a little bit of debugging. I think debugging is quite a good skill right now to learn.
Lenny Rachitsky: Interestingly, if you want to be good at debugging, there’s a lot you need to understand, which is basically what you’re saying is that’s the subset of things to understand is things that break. And to do that, you have to understand how it all works. What are servers? What are APIs? All these things. Okay, so we’ve been talking about how this is very good right now, building a prototype, building a v1, MVP, people can use it, you can deploy it. You deploy this app, people can start using it, and there’s a scale it can reach. Do you see a future where you can build a Salesforce sized business fully Replit or other tools that can scale to hundreds of billions of dollars of value? Or is there just going to always be some limit of like, you need actual engineers and designers sitting on this thing, building it, thinking it? Awesome.
Amjad Masad: If my law is directionally correct, even if the months are not, I’m not exactly right that the duration is correct, you’re going to see a compounding effect of the power. It’s actually quite hard to convince yourself. But if you really convince yourself that we are on a massive scale of improvement in AI, then the answer is yes. And it’s absurd to my engineering mind that I’m saying it is, but know Ray Kurzweil, this futurist talks about how exponentials are really hard for humans to grasp. And so actually when we started building the agent, I told the team, it’s easy and we fall in this trap before. It’s easy to build and optimize for today. In ‘22, we built Copilot-like thing and autocomplete. We train our own models, we optimize the hell out of them. But at some point, that modality was kind of not the right modality, which is the autocomplete modality.
And the right modality is actually this, I think for now, as being able to chat inside the programming environment and for the agent to create things for you. But in order for us to make that bat, a year ago the models were actually not there. The models could not do this, but we were like, okay, we’re going to build for the models that are landing in six months. And truly six months later, the model started to land that are capable of this, of the reasoning that we needed and whatever. And so that was like saw it if you want, which is, oh, wow, we switched to it and the reasoning improved so much. And six months later, you have a son of you too. And so it’s really almost like a six months cadence. And so if we’re really on this trajectory, then I would say next year, you’re able to just scale and maybe you get thousands of users paying you.
The AI can do maintenance. We already showed the AI doing SQL queries and doing migrations, so I will be able to do maintenance, debugging, things like that. I think where it gets really tough is that when you’re hitting scale and you want to architect a system that is resilient, and so that means you would start sharding databases and you would start using different queue systems and components and things like that. And I think the AI needs to have access to the entire suite of tools to be able to do this.
And I think that’s going to be the next bottleneck. And I think the AI needs to be a lot more reliable at doing that. But I could imagine whatever, five years from now, someone running a billion dollar company with zero employees where it’s like the support is handled by AI, the development is handled by AI, and you’re just building and creating this thing that people are finding valuable and are paying you for it. That being said, it’s worth thinking about the economics of it. If the cost of software goes down a lot, then what is the price that you can charge on software? So can you actually build the next Salesforce if anyone can generate Salesforce? And then the question is, and this is why I emphasize being generative, because I think then the thing that will make you better is by being able to iterate and improve the thing really quickly and generate new ideas.
Lenny Rachitsky: And stay ahead of all the other people building these tools so quickly. Oh, my God. An interesting other kind of mental model I’m seeing as you talk about this sort of thing is not to offend religious folks, but there’s this concept of God of the gaps. I imagine you’ve heard that where it’s like God explains all the things that we don’t yet understand. And over time that kind of space shrinks and God’s like all the things we don’t get yet, those gaps. That was God that proves there needs to be a God. And it feels like right now, humans are the gaps in these tools or these agents you talk about that you can hire within Replit are fixing these little gaps. And over time, AI will fix these things themselves.
Amjad Masad: That’s right.
Lenny Rachitsky: And these gaps will shrink.
Amjad Masad: Unless we hit some fundamental limit and the current regime of AI, which I’m not an expert about how far transformers could scale, but I feel like we found the thing that could scale pretty far, but maybe there are limitations in data or other things like that that we could be surprised by. But if there isn’t, then we are on a massive trajectory of removing these gaps quickly.
Lenny Rachitsky: Yeah, very true. We have no idea. We keep thinking it’s just going to keep going, but maybe it’ll stop at some point. I could keep going and going, but I think we should also let people go play with these things and process all the things we’ve been talking about. Is there anything else that you think might be helpful for folks to think about or learn or study?
Amjad Masad: I’ll give advice to founders or leaders at companies. The way we work is going to change rapidly, and it’s important to be resilient to that change. One thing that I think is really difficult now is having roadmaps, especially if you’re doing anything in AI, but really anything that AI could affect, you want to be able to react to it really quickly. And so when the Anthropic drop the computer use set of capability, we slaughtered our roadmap because we don’t really have an explicit roadmap. We immediately jumped on it and started building things and we launched some things around it. We’re going to be doing more with it, but there’s going to be capabilities that are going to drop. And you want to really, in some cases, if it really affects your business, you want to be able to jump on it really, really quickly. So being agile, not being stuck with roadmaps, being able to just say, oh, we’re just going to switch priorities right away, is going to be super important.
Not being, like I said, with silos at Replit, there’s so many people that are on the scale of designer to engineer, designer, product manager. Actually, I mentioned Amman earlier. He started as a designer at Replit, and now as a product manager. We have people who start as designers, become engineers, and we have people in the middle and we’re comfortable with that design engineers that fit at different parts of the scale. And the design engineers go to the design correct meetings and some designers go to the engineering meetings. You got to be fluid because again, when designers can code and engineers can design, I mean it really becomes, you can’t have a lot of structure around that. So you want to build a culture and you want to build an environment or milieu that is really, really flexible, which is uncomfortable for a lot of people.
Lenny Rachitsky: Man, the future is wild. Everyone’s a hybrid person now. Let me just actually double down on what you just said, which I think is really interesting. It’s almost like if you’re an engineer, where your skill set will become most valuable is unblocking these AI tools and knowing debugging and figuring out how to allow it to go further and further and further. Within PM and design land, based on what you’re describing, where the skills will become more valuable is generating ideas, almost like finding opportunities, discovery, finding what problems need to be solved, and then articulating that as clearly as possible to the AI tooling.
Amjad Masad: That’s right.
Lenny Rachitsky: Super interesting.
Amjad Masad: Yeah, this is a very crisp sort of advice that people can follow today, I think.
Lenny Rachitsky: Oh man, what a world. Okay, I’m jot. This is incredible. My mind is racing. I’ve got to go build some apps immediately.
Amjad Masad: Yes, you’ve back. Love that.
Lenny Rachitsky: I will do that. So just to leave listeners with a couple things. One is just, what should they know? Where do they find you? How do they try Replit? Anything else other than just go to replit.com?
Amjad Masad: Yeah, just go to replit.com. It’s an open beta right now. We’re kind of quickly improving and going to exit beta I think in a few weeks. But if you’re comfortable testing something that’s not perfect, go to replit.com. If you subscribe to our core plan, you should be able to access the agent and start using it. And we are, I think the place where we’re most active is Twitter. So Twitter are like X, the handle Replit, R-E-P-L-I-T or my handle @amasad.
Lenny Rachitsky: Oh, yeah. One other thing I wanted to make sure we had a chance to touch on is you’re working on something new, something that’s coming in the very new future, maybe the day this episode drops. Talk about that.
Amjad Masad: All right. So depending on when the episode is coming out, this could be the first time people hear about it. But we have this product called agent. It is sort of high agency, does everything from setting up the project and all of that. And so now, we are working on assistant. Assistant is let’s say the cousin of agent. It is a little less powerful but a lot more controllable. You can focus on features or areas of the code that you want to change and you still don’t have to know how to code, but it is a lot more manageable and it is a lot faster.
So you saw how it took some time to kind of create the project and code some of the things. Assistant is in the order of milliseconds and seconds to be able to respond to you. And so again, as I talk about the idea of tools, we want people to have as much power and autonomy as possible. And so there are certain instances where agent is the best. It’s going to do the debugging for you, it’s going to create the database for you. But if you want more control, assistant is going to give you that.
Lenny Rachitsky: Just so folks totally understand what this is going to do for them. What’s the mental model for what this is? If it’s like a person, we’re helping you out.
Amjad Masad: Agent is like having a developer work. You give them the PRD, right? And they’re going to go and build the thing. Assistant is like you’re sitting next to them. So they built the thing and now you walk over to their desk and you say, let me move this button. Three pixels to the left. Let me change this thing. So small increments of changes that you want happen really quickly and you want it reliably, that will give you that. So it’s just much faster iteration on UI and things like that.
Lenny Rachitsky: Incredible. The future is wild. Final question I always ask everybody, how can listeners be useful to you?
Amjad Masad: Come work at Replit. We have a PM role. I think up if you’re product manager. We’re hiring engineers and product managers. So come work at Replit or refer someone to Replit, especially if you’re like our tools and you want them to get better. The best way to do that is to get us great people we can hire.
Lenny Rachitsky: Well, you’re about to get a flood of product managers applying. Goodluck.
Amjad Masad: Amazing. I love that.
Lenny Rachitsky: Amjad, thank you so much for being here. This was incredible.
Amjad Masad: Thank you. Thank you for your podcast and the community that you’ve built and newsletter and everything. It’s been awesome to watch.
Lenny Rachitsky: Thanks, man. Appreciate that. Bye everyone. Thank you so much for listening. If you found this valuable, you can subscribe to the show on Apple Podcasts, Spotify, or your favorite podcast app. Also, please consider giving us a rating or leaving a review as that really helps other listeners find the podcast. You can find all past episodes or learn more about the show at lennyspodcast.com. See you in the next episode.
Glossary
| English | 中文 |
|---|---|
| Agent | Agent(保留原文,Replit 的 AI 功能) |
| Aman Mathur | Aman Mathur(保留原文,人名) |
| Amjad Masad | Amjad Masad(保持原文) |
| Amjad 定律 | Amjad 定律(Amjad’s Law) |
| Andrew Wilkinson | Andrew Wilkinson(保持原文,人名) |
| Anthropic | Anthropic(公司名,保留原文) |
| Assistant | Assistant(Replit 的新产品名,保留原文) |
| B2B | B2B(企业对企业,保留原文) |
| Bounties | Bounties(Replit 平台功能名,保留原文) |
| Copilot | Copilot(产品名,保留原文) |
| Cursor | Cursor(保留原文,产品名) |
| Figma | Figma(保持原文,产品名) |
| Git | Git(保持原文,版本控制系统名) |
| Hacker News | Hacker News(科技论坛,保留原文) |
| Haya | Haya(保持原文,人名) |
| IDE | IDE(集成开发环境,首次出现保留原文) |
| Jevin | Jevin(保留原文,人名/昵称) |
| Lenny Rachitsky | Lenny Rachitsky(主持人名,保留原文) |
| multiplayer coding | multiplayer coding(多人实时协作编码,保留原文) |
| MVP | MVP(最小可行产品,保留原文) |
| Node.js | Node.js(保留原文,技术名) |
| PRD | PRD(产品需求文档,保留原文) |
| QA | QA(质量保证/测试,保留原文) |
| Ray Kurzweil | Ray Kurzweil(未来学家,保留原文) |
| React | React(保持原文,技术框架名) |
| Repl | Repl(保留原文,Replit 中的项目单位) |
| Replit | Replit(保持原文,产品名) |
| SAML | SAML(保留原文,技术标准名) |
| SCIM | SCIM(保留原文,技术标准名) |
| sharding | sharding(数据库分片,保留原文) |
| Slack | Slack(保持原文,产品名) |
| SQL | SQL(结构化查询语言,保留原文) |
| Tiny | Tiny(保持原文,公司名) |
| transformer | transformer(技术架构名,保留原文) |
| v0 | v0(产品名,保留原文) |
| VS Code | VS Code(保留原文,产品名) |
| WebAssembly | WebAssembly(保持原文,技术名) |
| Zoom | Zoom(保持原文,产品名) |
Reformatted by reformat_english.py
产品背后:Replit | Amjad Masad(联合创始人兼首席执行官)
访谈记录
Amjad Masad: Replit 背后的理念是,如今开发软件非常困难。我们想让这件事变得更容易。人们基本上把它看作是口袋里的开发者。我们在全球拥有 3400 万用户,世界各地都有人在 Replit 上学习编程、创办公司、构建个人软件和个人工具。
Lenny Rachitsky: 对于构建产品的人来说,比如产品经理、创始人,你认为哪些技能会变得更加重要,哪些会变得不那么重要?
Amjad Masad: 通常情况下,你的瓶颈在于很多想法无法落地,因为它们需要被构建出来,而且需要快速构建出来。现在,这个瓶颈被打开了。所以实际上,构建东西变得容易了很多。真正限制你的,变成了你产生想法的速度。
Lenny Rachitsky: 我觉得人们还没有意识到事情已经发展到了什么程度。
Amjad Masad: 我可以想象五年之后,有人经营着一家十亿美元的公司,却没有任何员工——客服由 AI 处理,开发由 AI 处理,而你只是在构建和创造这个东西。
Lenny Rachitsky: 天哪,未来太疯狂了。今天的嘉宾是 Amjad Masad。Amjad 是 Replit 的联合创始人,Replit 是一个基于 AI 的软件开发与部署平台,用于构建和发布软件。它是全球增长最快的开发者社区和 AI 产品之一。如今有很多关于 AI 如何改变产品构建方式、产品团队将如何运作、哪些职能会随时间越来越或越来越不重要的讨论。但我觉得,很少有人真正见过现代 AI 工具能做到什么,也很少有人完全理解现在和未来,即使技术能力很弱,也能完成多少事情。所以我打算在这档播客中做一个尝试,推出一系列”产品背后”专题,深入探讨产品构建者应该了解、可能也应该开始上手尝试的重要产品。
在我们的对话中,Amjad 会演示 Replit 目前能做什么,绝对会让你大开眼界。然后我们用了大部分时间讨论这一切对产品开发未来、产品管理未来,以及创业公司和创始人未来的影响。这是一个非常令人兴奋的时代。同时对很多人来说,这也是一个非常令人恐惧和不安的时代。我的想法是,你越了解今天已经可能做到的事情以及未来的走向,就越能在这样一个飞速到来、疯狂而不可预测的未来中站稳脚跟。如果你喜欢这档播客,别忘了在你最喜欢的播客应用或 YouTube 上订阅和关注。这是避免错过后续节目的最好方式,也对播客帮助极大。好了,有请 Amjad Masad。Amjad,非常感谢你来参加节目,欢迎来到播客。
Amjad Masad: 我的荣幸。
Replit 是什么
Lenny Rachitsky: 我觉得最好先请你介绍一下,Replit 是什么?愿景是什么?它要走向哪里?它为人们解决什么问题?
Amjad Masad: Replit 背后的理念是,如今开发软件非常困难,我们想让它变得更容易。困难的原因之一是整个流程非常碎片化——你需要下载所谓的 IDE,本质上就是一个代码编辑器。你需要下载运行时环境,也就是 Python 或 JavaScript 之类的东西。你还需要搞清楚包管理器,来配置你的开源包。做完这一切之后,你还得搞清楚如何部署、如何分享。整个过程非常艰难,这也是人们卡住、始终学不会编程的原因之一——感觉就像是一个繁琐的 IT 流程。
所以 Replit 的愿景一直以来就是:做软件是有趣的,是件好事,应该有更多人参与。但要更多人参与,就得让它变得更简单,让一切集中在一个地方,让它更容易上手、更容易学习。这就是我们今天的产品。我认为它是互联网上最易用的 IDE/开发环境/部署环境之一,我觉得我们让没有任何编程经验的人也能轻松上手,尤其是在我们新推出的 AI 产品加持下。
[广告段落已跳过]
Replit 的规模
Lenny Rachitsky: Replit 现在的规模如何?发展到多大了?有多少人在使用?
Amjad Masad: 我们在全球拥有 3400 万用户,业务遍布全球各地。世界各地都有人在 Replit 上学习编程、创办公司、构建个人软件、个人工具或公司的内部工具。最近,我们开始向企业市场拓展。我们在七月份发布了面向企业的 B2B 套餐,增长非常快。看到人们把 Replit 带到工作场景中,真的很有意思。
Lenny Rachitsky: 哇,我知道它很受欢迎,但没想到规模已经这么大了。我在准备这期播客的时候,看到一条疯传的推文。是一个叫 Jevin 的人发的,我其实认识他,认识这个来自加拿大的人,他很棒。他发推说他 11 岁的女儿用 Replit 做了一个应用。她就是有了一个想法,然后就把它做出来了。最精彩的是评论区有人回复说,“你得上线一个应用,得找个地方托管,得搭建数据库,得部署,这些不可能一步到位。“然后他说,“不,Replit 做的就是这些。”
Amjad Masad: 对,这就是我们做的事情。那位评论者说的每一点都没错。但一个 11 岁孩子能做出应用,真正令人惊讶的其实不在于编程本身,而是编程之外那些乱七八糟的东西,而我们把这些全部抽象掉了。
Lenny Rachitsky: 我太有同感了,我当年做工程师的时候就被这些折腾过。
Amjad Masad: 哦,你做过工程师?这我还真不知道。
Lenny Rachitsky: 是的,我做了 10 年工程师,后来做了工程经理,再后来跳到了产品方向。
Amjad Masad: 哇。
竞争格局与产品定位
Lenny Rachitsky: 我很高兴做了这个转变,不过确实会想念那段时光。我算不上什么出色的工程师,只能算一个够格的创业公司工程师,所以 Replit 这种工具正是我会去用的东西。接下来我们会进入一个演示环节,看看它实际是什么样子。不过在开始之前,我想先聊聊——市面上还有其他一些大家熟知的构建工具。为了更清晰地说明 Replit 的定位和它与其他工具的不同,你可能听过 Cursor,最近经常被提到,请简单谈谈竞争格局,还有哪些其他工具在帮助人们构建产品。
Amjad Masad: 我们再回到之前说的端到端软件开发平台的理念。从写代码一直到部署、变现,覆盖整个流程。在软件开发生命周期的每个环节,都有很多不同的工具。比如 Cursor,它是 VS Code 的一个分支,内置了非常出色的 AI 工具,但它本质上是一个编辑器。你仍然需要运行时环境,仍然需要部署环境。实际上,有不少用户同时使用 Cursor 和 Replit,因为 Replit 简化了运行时和部署环境。
在整个软件开发生命周期的不同阶段,有各种各样的 AI 产品,但 Replit 真正的区别在于我们覆盖了全部环节。不过这也使得某些用户群体更难采纳。如果你在一家大公司,引入一个新的编辑器开始写代码很容易,但要引入一个从代码运行方式到部署方式都有一套自己主张的平台,就很难了。但这是我们愿意做的权衡——我们可能不会进入企业主流的软件开发流程,但我们希望赋能每一个人去构建软件,包括产品经理、设计师。我们有运营人员、销售运营、HR 运营在使用 Replit,甚至律师也在用。所以它是在真正民主化软件工程这件事。
产品演示
Lenny Rachitsky: 太棒了,这正是你今天来到这里的原因。我们来做个演示吧。在你准备的时候——你会共享屏幕,展示这个产品能做什么。我之所以对做演示感到兴奋,是因为这是一种新的播客形式尝试,我们会深入探讨具体的产品和它们的能力。我觉得关于 AI 的讨论实在太多了,大家一直在读”AI 能做这个、AI 能做那个”,但真正见过这些东西实际操作的人并不多,尤其是最前沿的那些。我觉得很多人没有意识到技术已经走了多远,实际能做的事情有多少,尤其是当使用者真正懂这个产品的时候。所以我很兴奋能向大家展示实际能做到什么,而且这会直接影响产品管理和产品团队的未来。交给你了,请开始演示。
Amjad Masad: 好的。这是 Replit 的主页。你可以创建一个叫 Repl 的东西,就是一个项目。我们支持各种编程语言,多达数百种。但最近,也是 Replit 变得比以前好用一千倍的原因,就是你只需描述你想做什么。你进入这个主页,有一个文本框,你可以写类似”给我做一个很酷的应用”之类的,但提示词写得越详细越好。
我请了我们 Replit 的产品经理 Aman Mathur,他是这个播客的粉丝,让他告诉我产品经理们喜欢构建什么。他真的精心构思了一个很好的提示词。我现在把它放进来。基本上,我们要构建的是一个 Web 应用。你可以指定想用的技术栈,也可以让 AI 自己决定。这里我们指定用 Node.js 来构建,面向产品经理,用于在公开仪表盘上追踪功能需求。比如说,我有一个产品正在增长,有一个社区,我希望社区能参与产品的构建过程,让他们提交功能需求、投票,而我能够管理这些。所以这里涉及的功能包括投票系统和功能需求管理。
Lenny Rachitsky: 读几条提示词里的内容吧,让没有在 YouTube 上看视频的听众也能了解你输入了什么。
Amjad Masad: 比如功能需求提交,允许用户添加功能需求;投票系统,让用户对这些功能需求进行投票;还有状态追踪,类似于高级风格看板,有”已规划”、“进行中”等列,这样管理员就可以和社区分享正在构建什么。我们希望它是用户友好的设计,做得现代一些,这些常规的提示词要求。然后是面向产品经理的管理控制台,作为产品经理,我希望能够真正管理好这个社区。
Lenny Rachitsky: 我很喜欢它还能构建内部工具,不只是前端界面。
Amjad Masad: 是的,没错。好的,那我们开始构建。因为这是一个比较大的提示词,初始编码可能需要一些时间。使用 Replit Agent 有不同的风格。我经常用极简提示词,这也是我写代码的方式——脑子里有个大致想法,然后不断迭代。另一些人,比如产品经理,喜欢写详细的产品需求文档,两种方式都可以。AI 现在已经回复了,说”我会为你构建所有这些内容。我会先搭建初始原型,你告诉我感觉如何,然后我们再在此基础上改进。“AI 还建议添加评论线程、实现邮件通知等功能,我可以选择这些。它在发挥创造力,告诉我还可以构建什么,但现在我先走原型路线,然后我们再评估。
原型构建过程
Amjad Masad: 如你所见,原型开始搭建了,你可以看到这个进度面板,我们可以在这里观看 AI 做它的事情。它创建了一个 Postgres 数据库。显然,当我们构建全栈应用时,你需要能够保存数据。这是 Replit 很酷的一点——我们拥有所有这些服务:存储、数据库。现在它在编码,在构建数据库 schema。现在在构建首页,观看它构建的过程其实相当有趣也很有教育意义,因为你真的可以开始学习如何构建 Web 应用的结构。如果它遇到了问题,随着事情变得复杂,它可能会碰到问题,而你希望能够帮忙调试之类的,那了解正在发生什么是很有帮助的,但这并不是必须的。我认为很多人根本不关心代码,但仍然能构建出东西。不过我们想让整个过程透明化,想向人们展示 Agent 正在做的每一件事。
Lenny Rachitsky: 这种体验基本上就像你坐在一位工程师的电脑后面,看他们写代码。
Amjad Masad: 是的,实际上我们的构建方式是把它做成一个多人协作系统。Replit 有实时的、我们称之为 multiplayer coding 的功能,我们复用了这个多人系统来构建 Agent。所以 Agent 在代码层面被组织为平台的另一个用户。基本上,我们在一起协作编码。我可以进入这里的文件,这也是 Replit 真正很酷的地方。我想大家对一些更偏聊天界面的产品比较熟悉,比如 v0 等等,那些纯粹是聊天形式,但这里是一个完整的 IDE,你可以进去查看文件、自己编辑,或者请 AI 给出解释。
Agent 的能力边界
Lenny Rachitsky: 目前这东西做不了什么?有哪些是做不到的?假设你完全没有任何编程经验,有哪些类型的产品你还无法用这样的工具构建,但在未来可能做到?它现在能带你走多远?
Amjad Masad: 你可以构建 MVP。我觉得你甚至可以开始获取一些初始用户。但当你开始对产品进行较大迭代时,可能会遇到问题。比如,它在数据库迁移方面不太擅长,我们正在努力修复这个问题。所以当你迭代产品时,很多时候你实际上在改变应用的结构,这就需要数据库迁移。而现在它可能会以一种产生不可恢复错误的方式修改数据库。到了那个阶段,你可能就会卡住,尤其是如果你不会写代码的话。有些人会通过去 ChatGPT 和 Claude 提问来想办法解决,我实际上对我们一些用户的坚持不懈感到很受鼓舞,真的很了不起。但我觉得你能通过 MVP 阶段——一个能正常运行的产品——但当你需要改变和迭代它的时候,现在还是有些吃力。不过我预计未来几个月我们会持续改进。你可以这么想——我们也在边建边造,我们在不断开发 Agent,让它在我们用户构建应用的同时持续变得更好。
Lenny Rachitsky: 明白了。所以我听到的是,它非常擅长构建第一个版本,帮你做到甚至可以让人们使用的程度。但在那之后用 AI 帮你把产品变得越来越好、不断迭代,这方面还没有那么出色。
Amjad Masad: 是的。
Lenny Rachitsky: 但如果你会写代码,你可以接手继续推进,对吧?
Amjad Masad: 是的,或者你可以雇人。我们网站上有一个叫 Bounties 的功能,你可以雇佣人类程序员来帮你完成收尾工作。
Lenny Rachitsky: 这就是留给人类的工作了。这个还会持续一段时间。
Amjad Masad: 你知道我们想做什么吗?我们想做到这样一个程度——Agent 遇到问题时可以去找一个人来帮忙。我觉得那会很酷。
Lenny Rachitsky: 天哪,一切都反过来了。我喜欢这个。哦,我觉得它可能完成了。看看这个。
原型完成与测试
Amjad Masad: 是的。现在 Agent 在问我们,应用是否正在运行并显示了首页?
Lenny Rachitsky: 就像在确认一样。
Amjad Masad: 对,几乎是在让我们做 QA。我就说好的。然后它发现了一个错误。这里有个错误,它说有个无关紧要的警告,“我来修一下”。与此同时,在它修复的时候,它可以是主动的,对吧?因为它会查看所有的错误之类的东西,但与此同时我们可以继续使用。我刚创建了一个账号。它在编码。
Lenny Rachitsky: 真酷。
Amjad Masad: 看看它怎么重启的。好,我们等它一下。
Lenny Rachitsky: 你觉得一个工程师构建这个需要多长时间?一个典型的工程师?
Amjad Masad: 我觉得几天到一周吧。如果你真的很厉害,可能几个小时就行,但对我来说大概需要几天。我算是个还不错的工程师,大概要几天。
Lenny Rachitsky: 而这花了多少?5 到 10 分钟。
Amjad Masad: 是的,而且大概还花了一些计算资源的费用。
Lenny Rachitsky: 哇,在计算方面。
Amjad Masad: 在计算方面,是的。我估计大概 15 美分左右吧。
Lenny Rachitsky: 哇。好的,那它来了。
Amjad Masad: 来了。Agent 说,“好的,看起来不错,完成了,如果你想部署的话可以部署。“但我说,“好的,我先测试一下。”
Lenny Rachitsky: 那目前它只是运行在你的本地主机上。
Amjad Masad: 对。不是本地主机,是在 Replit 上,但没错,相当于本地主机的概念。因为真的很方便,我甚至可以邀请你加入这个会话,你可以和我一起在这里,全部都是在线的。
Lenny Rachitsky: 明白了。
Amjad Masad: 让我们提交一个功能请求。让产品更好看一点。这是典型用户可能会说的话。这里有这个功能,你可以投票。我想我没法投票,因为我是创建这个功能的用户,但我用另一个用户创建了,你可以投票。但现在我们需要能够以管理员身份移动这些东西,所以我不知道怎么登录管理面板。我去问问 Agent,怎么登录管理面板?它可能已经构建了这个功能,只是没有以正确的方式暴露出来。它能够——
Lenny Rachitsky: 我很喜欢看你和这个东西交互的过程,简单说一下,整个过程感觉就像一位工程师在幕后通过 Slack 构建这个东西,你只是在和他们对话。他们构建好了说,“看看这个,我做完了。“你说,“好的,那我怎么登录这个管理面板?“然后他们说,“好的,来吧。”
Amjad Masad: 是的。它说,“你希望我帮你注册账号吗?“所以它在帮我创建一个管理员账号。它不仅会构建东西,还会维护东西。在这个例子中,它实际上在执行 SQL 查询,它不是在写代码来给我们创建管理员账号。
意义与展望
Lenny Rachitsky: 太疯狂了。我想谈谈这对产品开发、产品管理和创始人的影响,但我们刚才亲眼目睹的是——一个人,我知道你有技术能力,但一个完全不需要任何技术技能的人,在五分钟内构建了一个真实可用的产品,看起来不错,功能正常,而且你可以通过和这个 Agent 对话让它变得越来越好。
Amjad Masad: 我从我们的经验来谈谈我们观察到的情况。现在有非常多的产品在赋能开发者。计算逻辑很简单——“我们要让工程师的效率提升 20%,然后把它卖给企业,从中抽取 10% 的价值”,对吧?这就是为什么现在有这么多创业公司都在试图让工程师稍微好一点点。我们的计算方式则是——如果你能让每个人都成为开发者呢?那会是什么样子?所以当我们发布 Agent、真正让编程变得简单很多之后,我们看到人们,正如你刚才说的,把它当作口袋里的开发者。我们从客户那里听到的是:“我在做的事情,原本需要去雇一个开发者才能做。“而且因为启动的门槛比去雇开发者低得多——不管是通过 Upwork 还是其他途径——我正在构建更多原本不会去构建的想法。
我觉得这叫什么 javelin 的悖论之类的,就是说当某样东西的成本下降时,它的总消费量反而上升。我不确定为什么叫悖论,但比如电的成本下降了,你可能会预期总支出会下降,但实际上总支出是上升的,因为人们消费了更多的电。我认为软件也会是这样的情况。随着成本下降,人们会制作更多的软件来改善生活、改善工作、创立更多的公司,诸如此类。
Lenny Rachitsky: 顺着这个思路,你在创业公司甚至大公司内部看到了什么?在知道目前的水平已经是最低的、它只会变得更聪明更好的情况下,人们现在已经在怎样使用它?那些产品经理,或者创业公司和大公司里的非技术人员,他们实际上是怎么用的?
Amjad Masad: 在中小企业方面,很多人在构建后台办公工具。比如我们有房产经纪人,他们有大量数据,有很多业务管理方面的需求,他们在构建大量这样的工具——这些工具原本他们需要去购买,但通常买来的东西并不完全符合你的需求。这其实也是 SaaS 的问题——一刀切的模式。所以很多人把它看作是一种 SaaS 的替代方案,用来构建内部工具之类的东西。然后到了大公司层面,从原型设计到实际的生产应用、到工具都有。我们见过产品经理构建应用的 v1,然后真正拿出去给用户测试。我不能说出公司名字,但有一家上市公司用 Replit 来测试一个应用的 v1。显然,等那个东西跑通之后,他们把它交给工程师,说:“好,我们做了这个东西,觉得很好,已经在一些用户那里测试过了。让我们把它放进路线图,把它构建到实际产品中去。“所以你实际上是在让产品经理不再需要工程师才能构建任何想做的的东西——他们可以真正地自己构建产品的 v0 或 v1。
这对他们来说是非常赋能的事情。我们还看到营销部门也在用。比如 SpotHero 有一位营销负责人,他本身代码写得还不错,但使用 Replit 来构建这些应用。他们构建了一个竞品分析应用,会查看竞争对手的定价,确保自己的定价基准是正确的。这是一个全栈应用,使用了数据库等等,而且是持续运行的。我们还看到销售工程师用 Replit 非常快速地搭建原型。比如 X(原 Twitter)有一位负责合作伙伴工程的同事,他用 Replit Agent 来为客户快速搭建应用和原型,展示他们如何使用 X API。
Lenny Rachitsky: 我太喜欢这些例子了。对了,关于那个 demo,在我们结束这个话题之前还有什么想展示的吗?
Amjad Masad: 它创建了一个管理员账号。我们可以用用户名、密码登录进去进行管理,但基本就是这样了。这个应用在我们要求的范围内已经完成了。我们可以把它发出去,给你一个 URL。我们实际操作一下快速部署,让大家看看怎么部署。
Lenny Rachitsky: 也许我们可以在节目简介里附上这个应用的链接,大家可以看看。
Amjad Masad: 好的。
Lenny Rachitsky: 好的,太棒了。所以这是把它部署到某个云服务商上。我不知道你们用的是什么,但是……
Amjad Masad: 我们用的是 Google Cloud。所以我们把所有这些都抽象掉了,用户不需要关心,但背后我们用的是 Google Cloud。
技术架构
Lenny Rachitsky: 趁着它还在部署,我们顺着这个话题聊聊吧——从技术角度来说,是什么让这一切成为可能的?技术栈是什么?你能分享的都可以聊聊。
Amjad Masad: 当然可以。首先,是我们构建的所有抽象层。Replit 的运作方式是——最底层是我们的运行时。这包括操作系统、包管理器、各种语言的运行时。我们构建了一个系统,能够在任何语言中安装包,包括原生包。所以 AI 随时需要某个包的时候,它可以去安装。我可以在这里给你们看一个例子。顺便说一句,AI 也可以截图,这样它可以检查应用是否正常运行。这里你可以看到它在截图,确保首页渲染正确。这里你可以看到它需要一个拖拽库,于是就把它安装了。它可以访问所有语言的所有包,包括 Linux 的所有东西。在那一层之上是编辑器,以及运行编辑器的基础设施,包括我之前描述的 multiplayer editor。
Amjad Masad: 然后我们把所有这些基础设施都暴露给 AI。现在几乎出现了一个新的学科,叫做 AI 计算机接口。就好比 HCI(人机交互)现在变成了 ACI(AI 计算机交互)。事实证明,大语言模型需要的界面和人类使用的截然不同。人们试图让它们使用人类的界面,比如 Anthropic 的 computer use,但那样成本非常高,而且需要处理大量图像和视频。所以我们的做法不同,比如对于 shell,我们给它一个文本形式的表现,以一定的间隔呈现 shell 的执行状态。对于包安装,我们也给它专门的工具。对于编辑,我们给它一个编辑器工具——当它在写代码的时候,能实时获得是否有错误的反馈,类似于人类看到的东西,但实际上是纯文本形式,让它更容易处理。这就是 AI 计算机接口。当然,所有这些都建立在基础模型之上。基础模型的进步使我们能够构建这一切。
我们使用的最重要的模型是 Anthropic 的 Claude Sonnet 模型,它是目前最强的编码模型。所以我们用它来做编码,但同时我们也使用 OpenAI 的模型,因为这是一个多 Agent 系统。所以我们有负责评审的模型,有 manager editor 模型,还有 critique 模型,不同的模型拥有不同的能力。我们也自行训练了一些模型,比如用于搜索的 embedding 模型就是我们内部训练的。实际上我在 2022 年就写过相关文章,我预测未来将是”模型的集合”——产品将由许多不同的模型组成,而这本身是一个相当重大的工程项目。
Lenny Rachitsky: 岂止是相当重大。我们线下聊的时候你说你从 2009 年就开始做这件事了,当时你第一次构建了 Replit 的雏形。对吗?
Amjad Masad: 对。
Lenny Rachitsky: 天哪。
Amjad Masad: 部署好的应用在这里。我可以发给你,你可以使用它,在未登录页面也能看到我的请求,我可以注册、上传、以管理员身份登录、拖动调整位置。我们可以看到哪些在进行中,哪些已完成。
Lenny Rachitsky: 这看起来像一个完整的产品了。换作正常流程,设计师可能要花好几天做设计,然后交给工程团队,PM 提反馈,工程师再花几天来构建。
Amjad Masad: 是的。
Lenny Rachitsky: 而这里只需要一个 prompt,说明我要什么就行了。
Amjad Masad: 没错。而且我们可以非常轻松地迭代。UI 也可以迭代,我们可以说不喜欢这个或那个,它会做得很好。我们可以在这里开启一个新的会话来创建一个全新的功能,它就能正确地完成。
Lenny Rachitsky: 而且它是在已有代码库的基础上构建的。它理解你已经构建了什么,然后在此基础上添加新功能。
Amjad Masad: 对。
Lenny Rachitsky: 好的。
AI 计算机接口
Amjad Masad: 这些迭代也会成为你的历史记录,对吧?这是 v1,现在我在开发这个新功能,这几乎就像工程师在 Git commit message 里做的那样。顺便说一下,它会为它做的每一件事自动生成 Git commit message,所以你也可以回滚。我们希望做到的是,是的,它面向所有人,但我们不想过度抽象。我们希望你学会使用这些工具。我们希望高级用户能够理解 Replit 的全部能力——这真的是一个非常深的产品,我觉得你可以花上几年时间去掌握它。
Lenny Rachitsky: 我想聊聊这些技术带来的影响,但我想先回到你刚才提到的一件人们可能忽略了的、令人难以置信的事情。你基本上构建了一台专门为 AI Agent 设计的计算机——一个不同版本的计算机,专门针对 AI 使用计算机的方式进行优化。
Amjad Masad: 对。有一个完整的学科叫做 HCI,对吧?就是研究如何——
Lenny Rachitsky: 人机交互。
Amjad Masad: 对。现在已经有论文在研究 AI 计算机接口和交互了。大语言模型是在互联网的海量语料上训练出来的,但它们仍然是某种”异类”——不像人类,所以行为模式不同。给它们一个编辑器的最佳方式是什么,目前还不太清楚。所以有大量的实验在做——给它的编辑视图怎么做最好,能给它看多少文件而不至于产生幻觉。现在这更多是一门艺术而非科学,但它正在变得越来越像一门科学。
Lenny Rachitsky: 这太疯狂了。所以简单来说可以这样理解:有一个基础模型,你告诉它你想构建什么,然后给它一台计算机来完成任务。
Amjad Masad: 对。
Lenny Rachitsky: 我怎么——
Amjad Masad: 给它一台装有一系列工具的计算机。这是安装包的工具,这是编辑代码的工具,这是运行 SQL 查询的工具,还有各种服务。这是一堆你可以接入的外部服务,数据库服务、对象存储服务、认证服务。所以你可以把它看作一堆外部服务,加上一台装有很多工具的计算机,它们都在与基础模型交互。
Lenny Rachitsky: 听着这些,挺有意思的是——我开始觉得我们可能生活在模拟世界里的这种说法,似乎没那么离谱了。这就像是模拟计算机的雏形。
Amjad Masad: 对。你可以往很科幻的方向想——它的终局是什么,对吧?
Lenny Rachitsky: 是啊。
Amjad Masad: 如果我们给它足够多的工具,比如说,我可以把它接入 Slack,不再用现在这种方式与它交互,而是完全以自主的方式与它交互。实际上我们有这样一个即将推出的功能——不再由我来测试它,而是给它另一个 Agent。在这里,不再由我来与它交互、告诉它运行正常与否,而是给它另一个 Agent 来测试应用,然后比如说完全通过 Slack 与它交互。我会说类似这样的话:“Taylor Swift 门票一开售就帮我抢。”
然后它就会构建一个应用,持续监控网络上 Taylor Swift 门票开售的消息,并且有一个 Agent 在使用这个应用来完成抢票。你可以想象它有某种钱包或信用卡,一旦门票开售,它就立即出手。我想说的是,软件——Agent 能够驾驭软件——这就是 AI 变得更通用的方式。因为软件驱动着我们的生活、驱动着互联网、驱动着我们的商业。所以 AI 在软件方面的能力越强,它在整体上能做的事情就越通用。
对产品人和创始人的影响
Lenny Rachitsky: 好了,这个话题可以往很多方向展开。我想把我们拉回来,聊聊这对做产品的人意味着什么——产品经理、创始人——这会如何改变他们的职能和技能要求?你觉得哪些技能会变得更重要,哪些会变得不那么重要?哪些岗位可能面临风险,需要开始考虑转型?
Amjad Masad: 我们看到一个很有意思的用户画像,就是 CEO,创业公司的 CEO。Tiny 的 Andrew Wilkinson 就是重度用户。这些人通常是有创造力的人。他们创建了公司,雇了人。他们很多人不会写代码,很多人是设计师或产品经理或其他背景。你可以想象一个瓶颈——他们脑子里有一堆想法,这些想法必须通过说话传达出去,然后另一个人在听,还得假设这个人真的理解了他们说的,然后那个人再去尝试构建他们想要的东西。而且还得假设那个人有时间,因为很多时候你的工程师正忙于构建当前的东西,没在想未来的东西。所以让我兴奋的是,这些 CEO 中很多人正在构建未来的概念、下一个要做的产品、下一个要创建的公司。
这释放了创造力,让他们不再被那个瓶颈卡住。当然,这只是产品的 v1 版本,但它能推动事情向前走。你可以触摸它、感受它,你可以说,好吧,这个确实有延迟,我们需要改进。你把它交给工程师,他们可以在此基础上改进。所以这是一个用户画像,但我确实很兴奋——CEO/创始人这个群体。在公司内部,我认为科技公司一个比较难的问题是设计师、产品经理和工程师之间的部门壁垒。每个人都感受到了这种痛苦:我们的沟通带宽很低,就是语言、Slack 上的文字、Zoom 会议。这导致了很多挫败感,因为很容易误解别人的意思,又会导致进一步的部门隔离——一个人在做某样东西,然后交接给下一个团队,结果并不是对方期望的样子。
设计师和工程师之间的共同语言
这种情况在设计师和工程师之间经常发生。但所有人共享的共同语言是代码。最终在软件科技公司里,我们讨论的一切都需要以代码的形式落地。那么,如果这种语言变成了可以运行的原型、可以运行的应用呢?比如我们有一个 Figma 扩展,可以把 Figma 的设计稿转成在 Replit 上运行的 React 代码。所以你不是给工程师一些设计稿或截图之类的,而是直接说,给你一堆 React 代码,确保它能在我们的基础设施上运行就行,别乱动,别挪动像素。所以我认为这打通了公司的部门壁垒,让围绕产品的沟通变得更加具体,因为我可以给你一个可运行的原型。如果想象一下每个人都能做软件,这会改变人们的工作方式。这真的是对科技公司乃至大多数公司的一种根本性的重新想象,因为每个人都可以变得更通用。
Lenny Rachitsky: 假设你是一个正在听这些的 PM、工程师或设计师,你觉得如果你是他们中的一员——如果你现在正在 Replit 做产品——你会建议他们重点培养哪些技能?哪些技能你认为未来会不那么有价值,不用太担心?你可以挑其中一个职能讲,也可以三个都讲。
Amjad Masad: 我认为一项非常重要的能力——可能比较难培养但值得投入——就是创造力,更具生成性,能够快速产生新想法。你可以把它想象成一条流水线。你有想法,有这些想法的初始产出,然后有其他人想要消费这些想法或与你协作。通常瓶颈在中间环节——你的想法很多,但它们塞不进去,因为需要被做出来,而且需要快速做出来。现在你打开了这个瓶颈。实际制作东西变得容易多了。实际上,你的限制变成了你能多快地产生想法。我发现我自己也是这样。我认为自己算是有创造力的,但现在有了这个工具,我可以构建更多、探索更多,然后我发现,嗯,实际上我有时候会想法不够用了。
所以锻炼那块肌肉是好事。我认为学一点编程也有帮助,但不是传统的学编程的方式。如果你去编程训练营,他们会从 Git 是什么开始教。实际上我的联合创始人 Haya 以前是设计师。我们最初一起做 Replit 的时候,她去参加了一个 WebAssembly 的编程课。第一天,他们花了整天讲 Git,她就懵了,“这是什么?有什么用?“我现在也不完全清楚它具体是干什么的,但问题是你把过程反过来了——你在给出实际问题之前先给了工具。所以我觉得所有那些东西你都不用担心。哪些不用担心的:我觉得作为 PM、设计师,作为不是每天都在代码编辑器里的人,不用担心各种工具链。
如果你只是通过和 AI 对话来学一点编程,做一些调试,用 Replit 构建点东西,遇到问题然后用 AI 修复它,你就会学到一些编程。我有一个不是我自己命名的说法,被人叫做 Amjad 定律,就是学编程的投资回报率每六个月翻一倍。真的,只要学一点这个技能——学一点如何给 AI 提示、如何阅读代码、如何调试——每六个月,你获得的威力就越来越大,因为你能创造的东西越来越多,创造起来越来越容易,你能创造出越来越完整的东西。所以这是另一个我认为必要的技能。
Lenny Rachitsky: 这非常有趣。好的,最后这一点,你提出了 Amjad 定律。这很有意思,因为当人们——比如有人在听这个的时候——我可以想象他们会想,工程师要完蛋了。为什么还需要工程师?Agent 都在写代码了。但你的观点恰恰相反,特定的工程技能会变得极其有价值,而且越来越有价值。你说多久翻一倍?
Amjad Masad: 每 six months。
Lenny Rachitsky: 每六个月,这些特定工程技能就在变得更有价值。而核心观点是,你不需要什么都知道,不需要那么懂基础就能构建应用了。更重要的是能帮 Agent 解锁卡点,理解这些东西是怎么构建的心智模型,这样你才能快速推进。
Amjad Masad: 对,没错。理解它的基本组成部分,是的。
Lenny Rachitsky: 对,所以就是说我们需要新的工程学院来教你这些非常具体的技能,而不是花好几年学算法。
Amjad Masad: 我认为目前还没有人做到这一点,而这很可能是一个巨大的商业机会等待被建立。这就是 AI 原生编程,它和传统编程完全不同。这就是为什么在 Hacker News 上,人们对 AI 原生编程工具充满怀疑——他们会说,这不就是一个花哨的自动补全嘛。我理解,如果你在写操作系统内核,它确实帮不了你太多,但如果你在构建产品,它现在已经在替你构建了。所以如果你创办一所教 AI 原生编程的学校,你可以跳过大量计算机科学和基础工具的内容,只教应用程序的基本结构思路,然后教 prompting,再教一点调试。我认为调试目前是一项非常值得学习的技能。
Lenny Rachitsky: 有意思的是,如果你想擅长调试,你需要理解的东西其实很多。你基本上是在说,需要理解的那部分就是那些会出问题的地方。而要做到这一点,你必须理解整个系统是怎么运作的——什么是服务器?什么是 API?诸如此类。好的,我们之前一直在谈目前这些工具已经很擅长什么——构建原型、构建 v1、MVP,让人们可以使用它,可以部署它。你部署了这个应用,人们就可以开始使用,而它有一个可以达到的规模。你看到了这样的未来吗——完全用 Replit 或其他工具就能构建一个 Salesforce 规模的业务,能够扩展到数千亿美元的价值?还是说永远会有某种限制,让你需要真正的工程师和设计师坐在这里构建它、思考它?
AI 能力的指数增长
Amjad Masad: 如果我的定律方向是对的,即使时间上不完全准确——我不确定具体的时间长度是否精确——你会看到一种能力的复合效应。这其实很难说服自己。但如果你真的相信我们正处于 AI 大规模提升的轨道上,那么答案就是肯定的。这对我作为工程师的直觉来说也很荒谬,但要知道未来学家 Ray Kurzweil 说过,指数增长对人类来说真的很难直观理解。所以实际上当我们开始构建 Agent 时,我跟团队说,很容易犯一个我们之前也掉进去过的陷阱——就是为当下构建和优化。2022 年,我们做了类似 Copilot 的东西和自动补全。我们训练自己的模型,把它们优化到了极致。但在某个时刻,那种模态——也就是自动补全的模态——并不是正确的模态。
正确的模态实际上是现在这样的——在编程环境中聊天,让 Agent 为你创建东西。但为了做出这个押注,一年前模型其实还不够格。模型做不到这些,但我们说,好,我们要为六个月后即将发布的模型来构建。确实六个月之后,具备我们所需推理能力的模型开始出现了。这就像是亲眼见证了它的发生——我们切换过去,推理能力提升了那么多。六个月之后,你就得到了一个全新的东西。所以这几乎是以六个月为节奏在推进。如果我们真的在这条轨道上,那我说明年你就能直接扩展规模,也许能获得数千名付费用户。
AI 可以做维护工作。我们已经展示了 AI 执行 SQL 查询和做数据库迁移,所以它将能够做维护、调试之类的事情。我认为真正困难的地方在于,当你达到一定规模,需要设计一个有弹性的系统架构时,那就意味着你要开始做数据库分片,使用不同的队列系统和各种组件。我认为 AI 需要能够接触到整套工具才能做到这些。
我认为这会是下一个瓶颈。AI 在做这些事情时需要可靠得多。但我可以想象,也许五年后,有人经营着一家十亿美元的公司,零员工——技术支持由 AI 处理,开发由 AI 处理,你只是在构建和创造人们觉得有价值并愿意付费的东西。话虽如此,值得思考一下经济学问题。如果软件成本大幅下降,那你能对软件收取的价格是多少?你还能真正构建下一个 Salesforce 吗——如果任何人都能生成 Salesforce 的话?问题就在于,这也是我强调生成能力的原因,因为我认为那时让你脱颖而出的将是能够极快地迭代和改进产品,以及不断产生新想法的能力。
Lenny Rachitsky: 而且要领先于所有其他快速构建这些工具的人。天哪。听你讲这些,我脑海中浮现出另一个有趣的心智模型——不是要冒犯有宗教信仰的人——有一种概念叫”填补空隙的上帝”,你可能听说过。就是说上帝解释了我们尚未理解的一切,而随着时间的推移,这个空间不断缩小,上帝就是那些我们还搞不明白的空隙——那些空隙证明了上帝的存在。感觉现在人类就是这些工具中的空隙,你在 Replit 中可以雇佣的那些 Agent 就是在修复这些小小的空隙。而随着时间推移,AI 会自己修复这些问题。
Amjad Masad: 没错。
Lenny Rachitsky: 这些空隙会不断缩小。
Amjad Masad: 除非我们触及了当前 AI 范式的某个根本极限。我不是 transformer 能扩展到多远的专家,但我觉得我们找到了一个可以扩展得相当远的东西,也许在数据或其他方面存在限制,可能会让我们感到意外。但如果不存在那样的限制,那我们就在一条快速消除这些空隙的巨大轨道上。
Lenny Rachitsky: 对,确实如此。我们其实并不知道。我们一直觉得它会继续前进,但也许某个时刻它会停下来。我可以一直聊下去,但我想我们也应该让大家去亲自试试这些东西,消化一下我们聊过的内容。你还有什么觉得可能对大家有帮助的建议,值得去思考、学习或研究的吗?
给创始人和领导者的建议
Amjad Masad: 我给公司创始人或领导者一个建议。我们的工作方式将会快速变化,对这种变化保持韧性很重要。我认为现在有一件事非常困难,就是制定路线图——尤其是你在做任何 AI 相关的事情时,但其实只要 AI 可能影响的领域,你都需要能够非常快速地做出反应。比如当 Anthropic 发布了计算机使用(computer use)那套能力时,我们砍掉了原有的路线图——我们其实没有一个明确的路线图。我们立刻扑上去开始构建东西,围绕它发布了一些功能。后续还会做更多,但还会有新的能力不断释放。你真的需要——在某些情况下,如果它切实影响你的业务——能够非常非常快地扑上去。所以保持敏捷,不要被路线图绑住,能够直接说”好,我们立刻切换优先级”,这将变得极其重要。
团队角色的流动性
Amjad Masad: 就像我说的,Replit 内部没有部门壁垒。我们有很多人处于从设计师到工程师、设计师、产品经理这个光谱上的不同位置。实际上,我之前提到过 Aman Mathur。他最初在 Replit 是设计师,现在是产品经理。我们有从设计师起步成为工程师的人,也有处于两者之间的人,我们对这种分布在不同位置的设计工程师感到很自在。设计工程师会去参加设计评审会议,一些设计师也会去参加工程会议。你必须保持流动性,因为说到底,当设计师能够写代码、工程师也能做设计的时候,你确实没办法围绕这些角色建立太多刚性结构。所以你要打造一种文化,营造一个真正极其灵活的环境或氛围,这对很多人来说是不舒服的。
Lenny Rachitsky: 天哪,未来太疯狂了。每个人都变成了复合型人才。我想顺着你说的一点再深入一下,我觉得非常有意思。如果你是工程师,你的技能最能发挥价值的地方,将变成为这些 AI 工具扫清障碍——懂得调试,弄清楚怎么让 AI 走得越来越远。而在产品经理和设计领域,根据你描述的情况,技能最有价值的地方将是产生创意,几乎是发现机会、做探索、找到需要解决的问题,然后尽可能清晰地向 AI 工具表达出来。
Amjad Masad: 没错。
Lenny Rachitsky: 太有意思了。
Amjad Masad: 对,我觉得这是人们现在就能follow的一条非常清晰的建议。
如何尝试 Replit
Lenny Rachitsky: 天哪,这是什么世界。好吧,我在——这太不可思议了。我脑子在飞速运转。我得马上去开发几个应用。
Amjad Masad: 对,你回去试试吧。我喜欢这样。
Lenny Rachitsky: 我会的。那给听众留下一些信息。他们应该知道什么?去哪里找到你?怎么试用 Replit?除了直接去 replit.com 之外还有什么?
Amjad Masad: 直接去 replit.com 就行。目前是公开测试版,我们在快速改进,大概几周内就会退出测试阶段。如果你不介意使用还不够完美的产品,就去 replit.com 吧。如果你订阅了我们的核心套餐,应该就能使用 Agent 并开始用了。另外我们最活跃的地方是 Twitter,也就是 X,账号是 Replit,R-E-P-L-I-T,或者我的账号 @amasad。
Assistant 产品预览
Lenny Rachitsky: 对,还有一件事我想确保我们有机会聊到,就是你们正在做的新东西,很快就会发布的,可能就在这期节目上线的那天。聊聊这个吧。
Amjad Masad: 好的。取决于这期节目什么时候上线,这可能是大家第一次听说。我们有一个叫 Agent 的产品,它自主性很强,从搭建项目到所有事情都能做。现在我们在做 Assistant。Assistant 可以说是 Agent 的表亲。它没那么强大,但可控性更强。你可以聚焦在你想要修改的功能或代码区域,你仍然不需要懂写代码,但它更易管理,也快得多。你之前看到创建项目和编写代码需要一些时间。Assistant 的响应速度在毫秒到秒的量级。所以再次回到我说的工具理念,我们希望给人们尽可能多的自主权和能力。在某些场景下 Agent 是最佳选择——它会帮你调试,帮你创建数据库。但如果你想要更多控制权,Assistant 能满足你。
Lenny Rachitsky: 为了让大家完全理解这个东西能做什么。该怎么理解它?如果把它比作一个人在帮你,是什么感觉?
Amjad Masad: Agent 就像你有一个开发者在为你工作。你把 PRD 给他,他就去把东西做出来。Assistant 则像是你坐在他旁边。东西做出来了,然后你走到他桌前说,把这个按钮往左移三个像素,改一下这个东西。那些你想快速、可靠地做出的小幅度修改,Assistant 就能帮你完成。所以在 UI 这类东西上迭代速度要快得多。
Lenny Rachitsky: 太不可思议了。未来太疯狂了。我最后问每个人的问题:听众怎样能帮到你?
Amjad Masad: 来 Replit 工作。我们有一个产品经理的职位。如果你是产品经理的话。我们在招工程师和产品经理。所以来 Replit 工作吧,或者给 Replit 推荐人才,尤其是如果你喜欢我们的工具、希望它们变得更好的话。最好的方式就是帮我们找到可以招聘的优秀人才。
Lenny Rachitsky: 那你马上就要迎来一大批产品经理的求职申请了。祝你好运。
Amjad Masad: 太好了,我喜欢。
Lenny Rachitsky: Amjad,非常感谢你来。这次对话太棒了。
Amjad Masad: 谢谢你。感谢你的播客、你建立的社区、Newsletter,一切。看着这些成长起来真的很棒。
Lenny Rachitsky: 谢谢,兄弟。感谢。大家再见。
感谢大家的收听。如果你觉得这期节目有价值,可以在 Apple Podcasts、Spotify 或你喜欢的播客应用上订阅。另外,也请考虑给我们评分或留言,这真的能帮助其他听众找到这个播客。你可以在 lennyspodcast.com 找到所有往期节目或了解更多关于节目的信息。下期见。
术语表
| 原文 | 中文 |
|---|---|
| Agent | Agent(保留原文,Replit 的 AI 功能) |
| Aman Mathur | Aman Mathur(保留原文,人名) |
| Amjad Masad | Amjad Masad(保持原文) |
| Amjad 定律 | Amjad 定律(Amjad’s Law) |
| Andrew Wilkinson | Andrew Wilkinson(保持原文,人名) |
| Anthropic | Anthropic(公司名,保留原文) |
| Assistant | Assistant(Replit 的新产品名,保留原文) |
| B2B | B2B(企业对企业,保留原文) |
| Bounties | Bounties(Replit 平台功能名,保留原文) |
| Copilot | Copilot(产品名,保留原文) |
| Cursor | Cursor(保留原文,产品名) |
| Figma | Figma(保持原文,产品名) |
| Git | Git(保持原文,版本控制系统名) |
| Hacker News | Hacker News(科技论坛,保留原文) |
| Haya | Haya(保持原文,人名) |
| IDE | IDE(集成开发环境,首次出现保留原文) |
| Jevin | Jevin(保留原文,人名/昵称) |
| Lenny Rachitsky | Lenny Rachitsky(主持人名,保留原文) |
| multiplayer coding | multiplayer coding(多人实时协作编码,保留原文) |
| MVP | MVP(最小可行产品,保留原文) |
| Node.js | Node.js(保留原文,技术名) |
| PRD | PRD(产品需求文档,保留原文) |
| QA | QA(质量保证/测试,保留原文) |
| Ray Kurzweil | Ray Kurzweil(未来学家,保留原文) |
| React | React(保持原文,技术框架名) |
| Repl | Repl(保留原文,Replit 中的项目单位) |
| Replit | Replit(保持原文,产品名) |
| SAML | SAML(保留原文,技术标准名) |
| SCIM | SCIM(保留原文,技术标准名) |
| sharding | sharding(数据库分片,保留原文) |
| Slack | Slack(保持原文,产品名) |
| SQL | SQL(结构化查询语言,保留原文) |
| Tiny | Tiny(保持原文,公司名) |
| transformer | transformer(技术架构名,保留原文) |
| v0 | v0(产品名,保留原文) |
| VS Code | VS Code(保留原文,产品名) |
| WebAssembly | WebAssembly(保持原文,技术名) |
| Zoom | Zoom(保持原文,产品名) |
此文档由 AI 分片翻译(translate_long_document)