
A developer shows how Devin, an AI coding assistant, handles tasks across multiple products: fixing lint errors, adding features, and running 2,500-line refactors automatically. Devin costs $500 a month and claims 10x ROI on engineering hours, though it still needs human QA and works best on repetitive changes.
Chapters
I thought it would be fun to talk about developing with Devin. Some of you may have seen some other stuff that I've recorded, but most likely just my tweets. Uh, and so yeah, I thought it would be— I thought it would be fun to, to kind of just share, um, how we use this thing called Devin. Uh, it's kind of similar to Cursor except you don't even need to have Cursor. And it's been pretty, it's pretty, it's pretty, it's been pretty disruptive to how we work in a positive, positive way. So just like last time, I will, I did this, I did a series of videos of coding with Cursor, and then I did a video PMing with AI. And this, yeah, this video is called Developing with Devin. So a couple notes, uh, up front. Devin costs $500 a month. Uh, you can check it out at devin.ai if you want. And there I do have this referral link, uh, so I'm going to paste it in the chat so everyone can have access to this if you want to give it a shot. It'll give you 100 ACUs. Um, once you sign up. And I've never actually looked at the marketing page. I tend, I tend to find that I'd rather just play with products, you know, than, than look at the marketing page. But I guess it shows you kind of how Devin works, which is it's like an agent, you know, kind of a hot word these days. But you can, you can ask it to do things and then it will plan the tasks. It'll It'll make those changes. It has access to these three things. It has a shell, a browser, and an editor, just like a human developer would. And so it can actually run changes, test them, run tests, do all of that kind of fun stuff. So yeah, before I get started, I thought I'd just kind of recap the origin story around this session. I think it's kind of helpful to set the context. So on Feb 6th, I tweeted, no longer hiring junior or even mid-level software engineers. And then I tried to provide some context to that, which is basically if you look at how many tokens our codebases have, and you can use this product called RepoMix to do so, it's open source. You can just download this or you don't even need to download it. You can just do npx. Let me increase the font size, actually.
npx repomix on a repo and it'll show you, actually, let me show you that.
Let me see if this works. So this is the antiwork.com website, which looks something like this, antiwork.com. And so if I just run npx repo mix, let's see if this works. It'll install the package. And it'll tell you how many tokens your repo has. So to increase the font size on this guy too. Uh, sorry about it, it's a little tight. This is the fun of IDs, but you can see it's, uh, 29,000 tokens, right? So if you look up how many tokens an AI can sort of have in its context window in order to respond, uh, Claude and O3 mini have context windows of 200,000. So this is pretty new, uh, when, you know, GPT-3, which was the first model that kind of made waves in 2022, I believe, with ChatGPT, the context window was like 4,000 tokens or something like that. So even this anti-work website could not fit in there. Now these new models are at 200,000. And so my point with this tweet is that pretty soon, uh, these AI, you know, these AI, these models are going to be able to effectively have the entire code base in their head as they decide, uh, as they make decisions, right? And this is as they reason. Shortest, which is our QA tool, that does natural language QA. It's pretty new. It does, you know, you basically can write QA tests just writing English. You can just say log into the app. Uh, that's $100,000. We launched this in December. So these kind of scale with how much time we've been working on them generally. Iffy, uh, iffy.com, which is a content moderation tool that we built. Uh, you know, all of this, all of this stuff, you know, has a bunch more UI and things like this. Uh, API, etc. That's 200,000 tokens. Helper.ai, which are our customer support tool, which you can try out here. Do we fix this? Does it work? Nice, it works.
Help.
Okay, it's still a bit janky. Let me take a— I'll actually— this is a good, a good thing to, to try Helper with. So what it actually does is it just brings you down, uh, and it starts this conversation here. So I see. Yeah, we need to fix this. Good thing to— let me ask Devin to fix this.
Cool.
Yeah, so it works, but it's a bit janky. It's competing with this. Anyway, so that's Helper. That's our customer support tool that we use at Gumroad. By the way, anyone can use any of these products. Please do. Flexile.com, which is our payroll HR equity tool, is 800,000 tokens. And Gumroad, the big daddy— Gumroad is, you know, we've been working on this thing since 2011— is 2 million tokens. So basically, over the next few years, these models will grow and grow and grow until they're going to be able to consume these entire codebases and kind of as soon as you have that, then it's going to be able to make sort of bug-free code, really high-quality code. And yeah, so, so both the Claude 3.5 Sonnet and O3 mini have context windows of 200,000 tokens, which means that they can now write 100% of our iffy and shortest code if prompted well. Critical. It won't be long until AI will be writing all of the code for Helper, Flexile, and Gumroad. My guess is by the end of 2026 and our new process sit and chat about what we need to build, doing the research as we go. Then we have AI record everything, turn it into a spec, a PRD some may call it in this sort of PMing industry. Uh, you know, the humans take— do this part, which is clean up the spec, add any design requirements, any other nuances, and then Devin actually codes all of it up, right? All of the code, it should be written by, by Devin, and then the humans QA that code, make sure the code is, is performant, that the actual product feature works as you want it to work. Uh, they hit merge, and then of course nowadays auto-deploys are pretty regular. So you merge into main and then the code is live and customers can use it, and you rinse and repeat the cycle over and over and over again. And which is the fun part, right? The fun part is to build features, ship features, ideate features, do that over and over again. And so that was Feb 6th. Feb 13th, last week, we had a support burndown where we answered a bunch of support tickets for Gumroad. We answered about 800 tickets, and you can see that Devin was the number one software engineer measured by PRs merged, which obviously is not like the end-all be-all metric, but the writing is on the wall that like basically all code, uh, should be used, uh, should be written by AI. And the reason is that humans are not natural code writers. Writing code is a very weird thing. It's why it takes a long time to become a software engineer and why we generally pay software engineers a lot of money is because it requires a lot of time to actually learn the skills. You have to incentivize learning the skill. And so, yeah, I think I had another tweet about this that I don't have here, which is pivot to product management from Sahil Lavingia. So yeah, what do you, what do you do about this? If you're a software engineer, promote yourself. Promote, not pivot. Promote yourself to product management, which is instead of being told what to build, you get to tell the AI what to build, which is way better in my opinion. Or start your own company, as Fons says. So, or this, I guess, if you want to, um, all the above, right? Another way of saying it is the future belongs to idea guys who can just do things, which is just combining two different memes into one. But if you have a really good idea, you can now build it, which is pretty exciting. Generally, ideas are not that good until you build them because you— the ideas generally become sort of good on contact with the market giving you feedback. Most ideas are not very good. Uh, that's why you should not let ideas remain ideas. Uh, they're always better in your head than they are in real life. So So yeah, so anyway, that was like a bit of ranting. I don't know if anyone has any questions and I can kind of show you some examples of how I, we use Devin at Antework and Gumroad. So yeah, the, yeah. And then I'll kind of go through my other notes. Alan has a question, which is, is Devin similar to Replit or does it serve a different purpose? I guess it's similar in the sense that it writes code for you and it does it in sort of an agentic way in which you're not having to sort of manage, you know, manage the, like oversee it every single little step, right? And it doesn't require, it doesn't use your computer, your IDE, so you can sort of parallelize it. But it's different in the sense that Replit, I think, is about building and shipping products end to end. And gives you a URL and everything. Whereas Devin is more so integrated into your code base. So our products, for example, may be hosted on AWS or Vercel. We have our own test suite. We have our own deployment pipeline. Uh, in theory, you could build Gumroad or Flexile on Replit directly. I think that is sort of the, where they're headed is they're trying to make that more and more possible. And, uh, but currently our products, none of our products are hosted or built on Replit. And I, I think Replit is kind of its own track, right? It does everything purely verticalized. Can Devin talk to girls for me, Kay asks. No, unless you have girls working at your company, then yes. Raul asks how Devin's worked with Flexile. I can give you— yeah, I'll show you an example of that. Johnny D says You mentioned you did a support burndown. That's where the PR graph comes from. Do you use it just for support types of issues, which are probably more scope fixes, or also feature development, which are broader and less scoped? The goal is to use it for everything. Certainly it's better for simple, small, just like a, you know, think of it like a junior engineer or mid-level engineer. They're generally better for, you know, the smaller, the more sort of scoped the task, the better. That's why I think. It's difficult for me to see a future in which junior engineers exist. Of course, you'll have senior and staff-level engineers, so there will be junior in the sense that, you know, but in the sense that you won't have permanent junior-level engineers. The reason is if, you know, this part, if you're sort of having humans clean up the spec and then Devin is writing the code, in theory, one really, really, really good engineer is sort of can now replace like 30 junior engineers or 10 junior engineers, right? So like the math on like how much you pay and like just like the business dynamics, it makes less and less sense to have juniors when you can just have seniors prompt AI. Owen Pro is amazing, but it does not work outside of ChatGPT.com. So we haven't tried Owen Pro. One of the reasons I'm so bullish on Devin and all these other tools is that they don't even have access to the best models, and once they do, they will be way better. And the nice thing about the agentic workflow is it's async, so in theory I can wait 10 minutes or 30 minutes and get a— if I can get a perfect one-shot sort of, uh, response, it's going to be really amazing. Uh, someone asks, can I find your product stream on YouTube? Yes, just Google PMing with AI Sahil, and you'll, you'll you'll find it. And what would— being an AI consultant be a good thing? Yeah, for sure. I mean, software engineers can make a lot of money. They just have to be the product manager as well, I think. Um, why this business model? I— you'd have to ask them. I don't know.
I'm, I don't—
I'm not affiliated with Devin. I'm just a customer. Uh, at this point, I I think it's a great business model though, because it's super cheap compared to humans. So I'm happy to pay it though. Yeah, of course. That $500 a month sounds expensive. Someone says Devin cannot replace the staff principal above for now. That's true for now. But to be honest, I mean, to let's be real with everybody. If it can replace junior and mid-level engineers, it will replace every engineer. It would be like saying I have a car that goes 700,000 miles an hour, but for some reason it can't go 14 billion. We've already reached crazy stuff with AI being able to do this stuff that it will replace all software engineering. Software engineering will not be done by humans at all in some some amount of time. So you can outrun the boulder for only so long until it runs over you. There's not— there's, yeah, like this idea that it could sort of stop at some rate, some level, I think is a bit of a foolish thinking at this point. But I'll show you guys and you can judge for yourselves, I guess, right? But I'm pretty excited about it. Gaston asks, do you think that Devin can refactor an existing working app, ingesting all the existing code and ask it to create an updated app? I would probably not do it at the, at the same time. This is where sort of the architectural mind comes in. The sort of staff level engineer is still sort of saying, do this, then do this, then do this. And probably breaks up into several PRs, tests each change. But in theory, as these context windows get bigger and bigger, I don't see why not. I don't see why you can't say, hey, migrate my entire app and write a whole new test suite in this new language and make sure everything works right. I think that will be possible. Not soon-ish, probably not within this timeframe, but probably in the next decade, 5 years, 3 years, something like that, I think should be reasonable. Can Devin handle third-party dependencies? This is a really good question. The answer is yes, it can. Again, think of it like a software engineer on your team. It has access to everything. That an engineer would have access to. So let me just show you what that kind of looks like. Let me open up Devin on the side and log in, and I'll kind of show you what Devin looks like. And I actually don't use the Devin UI, though it's— it works fine. I use it I use it via Slack exclusively, basically. So let me make sure I have something interesting open. But yeah, very, really simple example would be this. So this is the Antiwork. This is the Antiwork website. There's nothing too crazy about antiwork.com. But you can imagine there are some things, you know, some third-party integrations. And so it has access to a terminal, it pulls in the code, it has access to VS Code, it has access to, you know, when you set it up, you can give it all of the API keys that it, you know, so that it can do all the things that a human developer would do. So for example, you have an OpenAI API key, you can give it to it, right? Put it— it can pull those keys from Vercel or you can give it to it and then it can do all the things. When you set it up, you're just going through the README of the repo just like a human would. It's actually a really good test for how good your README is, is like how fast can Devin get set up with it. And then as you go, it generates these notes per repo. So, all— we— last week we set up every single repo. That we have, and then it can start generating knowledge, right? So for example, in helper, after making any changes to any TRPC procedures, run this script and commit any changes it makes to this file, right? So it's learning just like a junior engineer, senior engineer, whatever it would sort of how to actually ship these changes within just the flow, the workflow that we, that we have. And so yeah, last week, this was last week, we, I mean, you could see how much stuff got shipped by Devin. Every single thing that, you know, has a feat or a style, uh, was, was, was, or a chore was Devin. So this is me, this is a human making it easier for AIs to ship. Uh, but all of these, all of these shipments, uh, were started at least with, uh, with with Devin, which is pretty, pretty cool. Not every single one made it all the way to production, but it's a really good way to get started. So, okay, I covered those things. Let's, uh, let's, uh, use Devin. What do you guys think? Are you guys ready to use Devin? There's so many questions, but I feel like if I answer all these, we're never actually going to use Devin. So let's use Devin and then we can answer some more questions. So, antiwork.com, just, just start really simple with this like static website, you know, just a nice little static website. Um, but it's not actually what I have running locally. I made some changes locally. Basically, I wanted to add like a list of the products that we are actually working on. That seems to make sense and mirror the values that we now have. And I ran into this issue, which is The deploy failed, which is why I'm like, where are these changes? They're not here. The deploy failed. Right. And so this can happen. This is like the Vercel deployment. It failed. And why did it fail? It's because this set of changes led to some linting errors and Vercel builds, deploys fail when you have these linting errors. So if I go into the file components page, let's do that. So I have my app, I have my components, and then I have— I'm sorry, here. Yeah, page. Basically, I need to add these trailing commas somewhere. Think about it. I'm gonna, you know, I could run like a Prettier thing, Prettier, whatever. Oh, it doesn't have a configuration file. That's why my browser— oh, but it does, doesn't it? Anyway, this is all a ton of stuff that I don't really want to figure out myself. So let's just go to Devin and have Devin fix it, right? Pretty simple. There's also this other change that I've noticed that I've tried to fix myself. I built this thing called, uh, for the slide deck. So if you go to 2025, we like actually use, uh, use, uh, Next.js now just for our slides. I just think it's like faster to have and more customizable. You could do cooler stuff. You can have like inline graphs, like then, you know, like a, Google Sheets or whatnot. But there's like some— and it works. Like Vercel lets me just deploy this, thank God. But there's like some annoying error. So, let's ask Devin to fix these things and see how it goes. So, this is Slack. Everyone's probably familiar with Slack. And this is the, this is, you know, the place in which I spend most of my time, you know, talking to other people on the team. Besides the office, actually, that we're in, Slack is like our remote office. And so, yeah, let's just add Devin and ask it to do some stuff. So for, you know, we have a lot of repos. We have a bunch of projects, as you can see here. So I will just make sure it knows which project we're talking about. This is kind of a bug. They may have fixed it, but just in case, fix these errors that are happening.
Deployment.
Open a PR to fix this error. Technically, it's a warning. It's letting me deploy.
So, right.
Any, any, anything I've done wrong here, basically I'm just passing on the repo. I'm saying open a PR. I probably don't even have to say this. I could probably just say like, fix this warning. I probably could just say, fix this warning and provide no context. I might even be able to say like nothing, but just to give it some context, I'm, you know, I want to be nice. I'll just say add dev and do this, right? So insanely quickly, it's creating one dev and then it'll start doing its job. And also, I know, you know, as I, as I mentioned, there's also these, these things, right? So, you know, might as well have it also fix these errors too, right? Don't make sure to pass it.
Right.
So it says what it's gonna do. It's gonna fix a React hook dependency warning in the slide deck tx-powman in this repo. And then it's also now working on this one in the same repo.
Right.
Think about this already as a developer, would I be able to do these two things at once? No, right? I have one cursor. A lot of people are like, it's not that hard. You're asking it to do basic stuff, really?
One, it's not basic.
Imagine your internet connection went off. Could you solve this problem by yourself? I think a lot of people don't really realize how much time they spend on these small tasks. Um, and as the CEO of the company, I want to make sure that time isn't wasted, that people are spending as much of their time. Uh, we have these set of values, so I can go through it. Um, but we want to spend as much of our time on like creative work. We don't want to be spending our time on boring stuff, right? Uh, in my opinion, work is boring, work is rote, it's mechanical. Play is fun, it's creative. So I want to spend 100% of our time on the fun creative stuff, if that's possible, right? It's aspirational. So just to make a list of what developers have to do. Oh, forgot to finish this. Humans also make typos. AIs generally don't. First you have to decide to ship something, then you have to scope it out, then you have to go to a laptop. That's another thing, by the way, Slack is very phone accessible, right? You can just like, hey Devin, like on the walk, I often use Devin on the walk to work. I often say, hey, I'm about to start working on this. Can you take a shot at building this feature? When you go to the homepage, whatever, right? Uh, then you have to open cursor. As I mentioned, like, it's kind of hard to like parallelize multiple cursors. You can technically do it, but I, very few developers do, cause it's a lot of stuff to contain in your head. You have to open the right repo. You might have like another repo open, right? You have to like context switch into that repo. We have 5, 6 different projects I work on every week. You have to check out a branch, which means you have to name the branch. Have you thought about this? Like every time you have to build something, you have to think of a name, right? You have to think why, who cares? Who cares what the name of the branch is? Then you have to write the code. This part is like the actual work, right? Uh, then you have to open a PR. Then there's all of these steps, right? Versus like, if you can just say, hey, add dev and fix this thing I found, right? You know, like for example, I was on, I was on Flexile and I was like, oh, we actually like changed some of our language and we don't really talk about equity as much as we should. And this like thing is kind of janky and I don't like it. Like, there's all these small things. I'm not like— if I had like the activation energy to make all, you know, to, to like make a small tweak, right, to where even one line of code, right, if even if this was one line of code, hey, this is like 15 minutes worth, right? How many 15-minute segments I have in the day? Like, not that many, right? Like, for example, I think this thing is useless. I like the idea that you just have less stress, more flex, get started, right? And I think this get started should probably say get started with Flexile, just make it a little bit more boom, right? When you hit sign up, what happens? You get taken. Cool. I'm already logged in, so that makes sense. But, you know, maybe if I'm logged in, it shouldn't say get started, it should say like go to dashboard, right? So like all of these things I've said, now I have to implement, even though I've already communicated all of the spec of these changes, right? I should really have Devin like mic'd on listening all the time and just constantly like build all the things I said. Pretty crazy how much time this takes. Someone asked, is Devin using Claude? I have no idea.
I assume so, yes.
So, yeah. So, let's go check in on those things. It created a PR. I'll let you know once it's ready. It created these two different PRs. What does it say here?
Created PR.
It's not going to let me know until it's ready, until the build actually passes. It's not going to waste my time. It's very nice to me. That's pretty cool. But meanwhile, as I said, I mentioned all these things. I now have to Write, you know, tell, tell, tell AI these things, right? So remove from the footer. I said that, you know, in the footer, what did it, what else did I say in the footer? Like say get started with Flexile for the button if logged out. Otherwise say, you know, go to dashboard, right? Something like this. Uh, also I think there may have been a button. Yep. See a button on the top. And this also should be updated, right? So do the same for the Get Started button in the header. Think about how much time in a company gets spent on this, like PMs, designers, engineers, like doing all these things. Also separately, I think this login sign-up thing, login sign-up should also be updated to just say, go to log—
Should be hidden.
Let's just say hidden, right? Should be hidden. Already logged in. Right. That makes sense to me. Also this like pay people flexibly, scale your business without full-time commitments. It's not really about that anymore. So we're going to like revamp this copy, which we can think about in a bit. Um, yeah, let's see. Let's check in on this. Awesome. The PR has been created. All CI checks have passed. You can review the changes. So yeah, let's review the changes. Let's see. And the cool thing is it's on Vercel, so I can actually visit, you know, I can visit the page and, you know, make sure that thing worked. So if I go to 2025, all this works, right? So it's working. Let's see what it did. So what it did is it wrapped all of those things in a useEffect. And it put those, you know, it added these. So basically, anytime these variables change, I believe it'll like recompute whatever these, these functions. And you can see, this is part of the cool stuff about Devin is it's shipping multiple commits, not just one commit. So the first commit, it makes these changes, but oh no, It also created these linting errors or errors or whatnot, whatever you call them. And so it created a new commit where it fixed those. This is the stuff I mentioned, right? It like, it fixed these, these things, right? So in one case, this is the other PR that it opened. It just fixed these. So awesome, right? Both of these issues, one shot. Perfect.
Right.
So let's say you pay an engineer $100 an hour. How much time would have been spent in all of this back and forth? Uh, let's say we've saved $100 so far, right? Not too bad. So awesome. Thank you. That looks like it worked. So let's just merge these changes in. And because I merged those changes in, presumably I don't need this one anymore, right? There's like no, no, no changes with the branch anymore. So I can just close this PR.
Sick.
Delete the branch. And then you'll see that it'll— it will automatically reply in this thread, I think.
Or I'll—
cool.
Pretty slick, right? Isn't that awesome?
Cool.
So fix build, done. Let's make— let's do that. So, okay, other questions? Do, do, do, do, do. I haven't tried any open source Devon competitor like Yeah, I have not.
Has Devin made you rethink how you organize your repo code?
A little bit, not organizationally, but we do have now like these docs that we include that sort of like summarize the repo architecture and things. Presumably those won't be necessary, but for now they may be. Someone says, would you— would sort of talking to it with your voice be helpful? Probably, but honestly my thoughts are like the bottleneck, not my typing. It's like figuring out, for example, for Flexile, like what should I make this copy change? Like I have to think a lot. So that's, yeah, I do have it installed. I just don't really use it that much, the voice stuff. Someone asked, did it actually fix the deployment? Yeah, it did.
It works, right?
Yeah, these are the new changes. Oh, yeah, yeah, nice. Awesome. Yeah, it looks great. Does it still work? Also works. Yeah, it's all good. Pretty cool. So yeah, let me do something a little bit more complicated, which is something I did a little while back, but let me do it again. As a more— you know, obviously those are pretty simple examples, though hopefully people can see even some of the value of that. So let me do this. So @devon, antiwork, antiwork. Add newsletter to the bottom of the homepage. All right, pretty simple. The cool thing is you can let it be creative. You don't have to say all the specs. I mean, if you want to, you could say like email text, you know, email field on left, button on right. When you click subscribe, maybe you could do something fun. You could, you can shuffle all the colors as if hitting that shuffle button on the top, right? That's kind of fun. I don't know. What's, uh, what, uh, what other things could we do? This is the old homepage. That's now RIP. So this is the, this is the thing it did. So just spoiler alert, it will be able to do it. Uh, but we'll see it do it. Though it's a little bit of a different design now that we have, you know, you can see this is kind of the old, the old design, the old copy. So we'll see what it does. Oh, I kind of like how there's a button here and text here. So I could say, I think we can sort of do something similar, which is like mirror the header, the header. Logo text and the shuffle button in size to match, right? So it's like nice, nice and big, right? So then you have like, you could just type your email here and then boom, uh, you know, and then the other, yeah. So I, I, we'll, we'll, we'll give this a shot and see how it does. And just to talk a little bit more while it does this thing, Uh, as I mentioned on— I knocked something over. As I mentioned on Tuesday, we did this massive support burndown and this is kind of what we did. We just were answering all support tickets in the office. The team was in town for the week. And like, as we had ideas of what to do, we would just create, like, you know, fill in this whiteboard of to-do lists. You can see Devin. This is done. This is done. And then we went through and we just had Devin solve a lot of these problems for us. So yeah, this is, this is, so yeah, you use your product, you, you know, you kind of think about it, you collaborate with people, and then you have Devin code it up. I think that's like a way better flow. Oh, my AirPods just died, so give me one second.
What other questions?
Add confetti.
Yeah, everyone does confetti though. It's so boring, you know. Yeah, I think confetti is kind of boring. React confetti. What do people use these days for confetti?
Let's see.
See if it's compelling. Yeah, it's not bad. I mean, maybe there's like, there's like some more customization we could do. Like maybe there's something we could do with like the triangles, like there are a bunch of triangles that fall. Customize the shape so they're only triangles. Oh, draw shape. So yeah, looks like you can. There's also this one. I kind of like this a little bit more. Let's see the— can you also do the shapes? Looks like shot size but not shape. But yeah, just to show, you know, let's—
why not?
Why not use this as an example, right? Oh, someone says Magic UI has a really good confetti. All right, someone like this. Cool. So yeah, we can— As long as I can customize the— oh, that's funny.
Fireworks?
As long as I can customize the shapes. Awesome. Yeah, let's do this one then. Cool. Yeah, why not? So let's see if it does it, right? What's the harm? What's the harm? You know, it's not my time. Uh, it's fine. So cool. So let's do that. Add Devin. For now, I'm just gonna do the shuffle button because the newsletter subscribe form, actually, no, we can just add it to the, we just add it to this PR, I guess. Right. So, oh yeah. So in this case, it looks like it figured out that it's a bit of a longer task. Uh, so it actually first decided to work on work on a plan. I'm not sure when it decides to do this, but there must be some step where it's like some flowchart. It's like, is it worth a plan or not? So it comes up with a plan. Seems reasonable. And then it starts executing the plan. You could actually see this is how it's creating the branch name, devin-slash, the date timestamp, seconds, I think, probably. Add newsletter form. So yeah, seems like pretty reasonable, right? Uh, but yeah, let's, uh, let's ask for— oh, it's already ready! Dang, so fast. Um, this— yeah, so let's say, can you add a confetti effect using only triangle shapes, right? So let's try that. And I'm just going to say, and this, and this specific library. Now, would a human be able to figure out, like, think about how much work the human would have to do. They'd have to visit this, then they would have to, they'd have to figure out how to install it, which I guess is just in the installation with Next.js. Uh, but Magic UI. It needs chat CN. This is all just like chat CN. We already have chat CN, so presumably we don't need to do this. It just needs, so then how does the confetti work?
Confed.
How does it work? Oh, it adds this specific thing. Okay, yeah, let's try it, see if it works.
Let's see what it does.
And before it hijacks everything, we can take a look. Oh, there it goes. Stay in the loop. So you notice that made with love, rules of the playground, stay in the loop. So it kind of followed that. And then it added this. Not too bad. There are a couple changes, so I would probably want like a button. Again, I have to like repeat. Actually, maybe I can use the Super Whisperer in that. We'll see if I have that working.
Super Whisperer.
Wait, is that here?
Is this one of these things?
Yeah, cool. All right, so not too bad, but I would do some slightly different things. So for example, the subscribe button, I want it to mirror the shuffle button, so it should be an icon, like a big square button with an icon in it that's like maybe like a, like a paper plane or you going to the right or something like that, you know. And then I also want this, your email is gray, it should be like The placeholder should also be the same color, like this, like this text color, foreground color. Just make sure the placeholder is set to that. And I also want the border— I like the border, but I want it to go around the entire form. So I want it to go around the subscribe button so that the subscribe/paper plane, if we make it that, is actually like within the— looks at least visually within within the border. Instead of right now, the border is like only part of the input. And so we'll take this. Do I have to paste this myself? And yeah, so I guess there you go. There's that. Maybe I should be doing more of that. Okay. It appears this This is not a real package. Or wait for clarification. Wait for clarification.
Wait for—
Go, go, go, go, go, go, go. Install confetti à la this. I think that would work, right? I mean, that's all it says. Okay, so let's— This is a risky, risky behavior, but we'll see how it goes. Om says, "Due to AI, it's tough to find a job. Can you offer any referrals or guidance?" Oh yeah. This is tough, honestly. Be likable. I think at the end of the day, people are hiring you not just so they can tell you what to do, but because they wanna hang out with you. Don't look for remote jobs because Devin is going to beat you at being remote. So I would focus on things Devin cannot do. One of the big ones is to hang out with you in person. So I would look for local jobs. I would probably try to get good at AI. I would, you know, I think employers are probably not as, as, uh, as savvy as of, you know, most sort of AI tech companies. So, you know, if you can learn AI and then teach an employer how to use it effectively, like, that's probably going to be pretty compelling. Yeah. So those are kind of my tips. Is it worth $500? It's— that's, I don't know, your business. I mean, you know, my business, yes. I mean, my business, we spend hundreds of thousands $1,000 a month on engineers. So $500 a month, you know, to save them time so they can work on more interesting, creative, higher-level things. That's totally worth it, totally worth it. So yeah, while it— while, while it's doing that, I can also go work on Flexile stuff. So let's go to Flexile, go to the homepage. This copy I can tweak later. Equity align your team. Yeah, so this, this is what I wanted to remove. I wanted to remove like all this crap. So all this stuff is kind of unnecessary. It kind of creates this like weird— so like, can I give it a screenshot? Why not? Devin. For it. You know, the other really nice thing about this is the team can see what I'm thinking and what I want, you know, what I'm doing and how I'm asking. Like, often if you, you know, there's like stuff that's lost in communication, so it's really helpful to be able to actually see like, oh, this is why Sahil wanted that change to be done, you know, stuff like that. Remove the invoice bit as it's confusing. So I'll do that. You know, I can say, hey, @devin for, you know, this is probably redundant, probably it doesn't need to be there, but do that. And I'll just combine, I'll combine this also from the header.
At Devon, 94, Flexon.
Right, so all these things. Now let's go back to this thread. And it's doing its little thing. And you can see it do these commits. It just shipped the second commit, so I gave it that feedback. It installed this magic-ui-confetti. And it also installed this chatcian-button, which I guess I wasn't using a chatcian-button for the shuffle button. And yeah, it looks like I was just using standard button class. And now it's actually— oh, and I even cleaned up my code. So if you notice this, it was using onMouseEnter and onMouseLeave to show the hint, which is kind of janky. Oh no, now it's doing that? Oh, it made it— okay, that's kind of weird. Why did it do that? Something to do with this placeholder comments. So maybe they introduced a bug.
So always review the code.
Anyway, we'll see. So yeah, all it did was it did that, and then did it add—
did it change the—
oh yeah, see, it got, it got confused. I think it added this press to this, uh, yeah, that's what it did. It, it basically copied the button too much, the shuffle button. Uh, now it—
now the—
well, anyway. You'll see what I mean soon. You notice that, by the way? See, it basically now is going to do the same thing where when you onclick it, it's going to generate the random colors for the page. It's going to shuffle instead of send the email. Oh, and the deploy's failed, so it's going to keep doing this. Working. This is why it hasn't told me yet, right? Because it's going to make sure the deploy failed. It failed, and it's going to check why it failed and do all that kind of stuff. Not really convinced this is much better than running multiple instances of Cursor. Yeah, I mean, I'm starting pretty small with tasks that you could probably do pretty quickly. But I do think that, like, it's really nice to work, like, I'm going to be doing something, I'm going to be building something, and having Devin do other stuff. It's not or, it's and. So I agree, if you're, you know, I would not use this entirely, but it is really helpful to have it take first stabs, especially like, for example, can you use Cursor on your phone? No, right? I think it's way better when you're walking to work. Devon is absolutely very, very, very, very useful. So someone says, yeah, so the newsletter submit, I just want to do it myself. Like I don't really need, I don't really need to use MailChimp or anything like that. Like you can just post the emails in like a SQL database yourself, right? So yeah, that's what I would do. But that's a good question, which is like, can Devon go sign up for like a SQL database service provider?
Probably not yet, but maybe one day we'll be able to do something like that.
Let's check in on this, and then we can do other things. Yeah, so you can notice it's doing— now it's on commit number 7. Or no, it was. You see that?
What was going on?
That might be a GitHub bug. See, it shows 7 commits, but then when I click it, it goes to 2.
Weird.
Yeah, so it's, uh, hopefully it'll Oh, it works.
You see that?
Awesome.
Cool. So it looks like it went through. So let's test. And you can also review the code. Oh, nice job. So you're just doing the shuffle, shuffle. Oh, look, the confetti worked. However, it's shuffling, so that's kind of weird. So yeah, in theory, like as you said, is better than cursor. Maybe it's faster to use cursor, right? So I'm already in this repo. So now I do— I don't like naming branches though. So if you like naming branches, then yeah, go crazy. But I think Devin should do all the branch creation. So yeah, so let's do that, right? Check out this. Now I have it running locally. I have to run this npm i. To get the Canvas Confetti library.
Then I can run—
run dev. Cool. So yeah, as you know, there's some jankiness. So why is it different? Slightly different.
Interesting.
I must not have merged main into my branch.
This is a lot of data.
But yeah, so you can see some errors, like this is not the triangles I wanted, and there's like some jankiness, and I want this to be rounded. So yeah, it's totally reasonable to use both, right?
Page.js, this is that.
Where's the component page?
So, you know, remove, shuffle, wrong.
Someone says, have you— they've instructed Devin to use the JIRA API and get task details anytime. Time I mentioned it, ticket in Slack. Yeah, that sounds great. We just use GitHub for that, so it already has access to, to that for free. We've tried using this for stuff like GitHub— or sorry, like Gumroad, which is pretty big. It works, um, but it also has a higher chance of not working. So it generally does work better, I would say, on like newer smaller repos for now. Mostly the context length thing. So yeah, you can see I fixed this. So it fixed that issue. Doesn't do shuffle, just does the confetti. It's better, but I still think I want this confetti. See, this is the thing. It's like, yeah, I guess cursor, you're like, oh, it's better, it's faster, you're coding yourself. But it's like, well, yeah, but then now I have to do my own research. I don't want to do this. I'm like, I want to make these triangles. Do I just change this to triangle? Is that it? No, now it's a square, not a triangle. Not assignable. Why not? Why not? Confetti.shape. Now I have to go into Confetti. Why is triangle not an option? Circle is an option. Circle is not even listed. Why not? Shape, shape. You know, it's just stuff, it's just work. I don't want to do any of this. None of this is fun for me. I want to just build. Uh, all right, let's, uh, but yeah, maybe, maybe you can figure this out. So let's just say, let's use Cursor Composer for a sec, right? We just say add this update to be triangles, and that can Fetty should come from the subscribe button itself.
Let's see how it goes.
So I've made some changes, shapes. Uh, let's test the changes. They don't look like triangles to me, and they don't look like they're coming out of the button to me.
Why not?
It's giving me some linting errors, which is— oh yeah, fix it. Cursor can fix those. Yeah, so you know. I don't think Cursor didn't do this that much better. At the end of the day, all these programs use the same underlying models until they start training their own. So actually, I don't know. I'm just speaking out of line. I don't actually know. I'm assuming. Anyway, I don't really want the confetti. But this I like. I like stay in the loop, your email. It's nicely lowercase. Oh, this is a weird padding thing where you can't click this. So let me just delete the confetti. I don't really want it. I don't want the pnpm. It's also nice to have to install packages manually, find the name, blah blah blah. So I can see now I have to revert all these changes. All this stuff humans would have to do. You enjoy doing this?
I don't.
Do you have any other references to confetti?
Confetti anywhere. Remove confetti.
And then, yeah, let's fix that little padding button. So the issue is some sort of spacer. Is causing— this thing is probably causing that issue, I think. So if I just remove this— yeah, see, that's nice. If I add it back, it has to be cool. So I'm going to accept this change, we'll fill that in later.
Oh shit.
Oh yeah, this is a kind of a bug with Cursor. It's like if you have this Git open and you start editing stuff, it'll like It'll do this weird thing. So, all right. So that looks pretty good. But yeah, so that person said, I mean, we can try this. Yeah, I don't really like agent mode. Maybe that's because I'm a boomer now. I just use React. Yeah. Yeah, we can try this, but anyway, this session is mostly about Devon, so I'm going to remove the repo mix output and commit these changes. And then meanwhile, Flexile, we probably had those things go through, so we can take a look. Oh, they're not here yet, so I—
something— Something happened.
See what happened with the Flexile. Haven't found a Flutter component in the homepage here in the footer yet. So could I help? Do your best.
Oh, that's interesting.
Oh wow, see, this is why I have some docs. It tells you we're working.
Yes, subtask 1, 2, 3, 4.
And this is going to start with that.
Cool.
Awesome. Yes, you can have Devin write end-to-end tests. You can have Devin do anything. Anything that, you know, VS Code, terminal, browser, all that stuff works. So all this we've done. But you could build complete features if you wanted to. So for example, what's an example? Do you guys want to think of a feature? I mean, we can try building this out completely. The way to do that would be to go here and it's— and you could reference an existing PR if you wanted to, right? Um, so Devin, fix the linting errors because I always break the linting, and also set up as much of a lite SQL setup as you can. I like Neon, but I guess Supabase is like pretty popular. Uh, they're both fine. We both use both. I'll let it decide. So that emails are saved with, uh, yeah, save. Also send out an email, let's say using Resend, uh, send an email, you know, confirming their email subscription and they have to click the button in the email in order to be subscribed. And also create an admin page where you can, you know, create, preview, and send out email blasts, and also list old email blasts. So this is like a bit more complicated. All the email blasts, and in all the email blasts contain, you know, include an unsubscribe link so that they can unsubscribe and track this all in the SQL database, right? So the SQL database, you know, will contain like email it'll contain like something like confirmed, like subscription confirmed at, it'll, you know, so we know when they, when they subscribe instead of just a boolean. And then, uh, you know, unsubscribe that, right? So default false, true after they confirm. And then subscribeAt, which is default false, true after they unsubscribe. So that's like a big— like, that's a feature backend, frontend. See how it does on that. But yeah, I mean, given this is possible, like if you are a decent engineer, like you should be shipping a lot, right? I mean, like there should be like no low-hanging fruit basically in the product because you should just like this big thing we did, just use the product. And every single time you see something that could be slightly better, just say, hey, @Devin, make this change. @Devin, make this change. @Devin, make this change. Like the ball, the, the floor The floor and the ceiling should both go up with AI. I think like it just, yeah, like the, the quality of the products should go, should go, should go way, way, way, way up. Oh yeah. So this, there's this helper issue, right? Where you notice like it does this thing, but it's janky. So let me have, and this is a good example of like Rafael will probably see this and be able to take it to completion at DevMan on For Antiwork helper, make it so that the See It In Action button does not trigger the Gumroad demo for the in action, actually the, uh, you know, the pages helper itself. And the prompt should already be there. I thought I did this, but if you go in here, I don't see it. So the prompt first chat message should be So, you know, for example, I can just show you our burndown. Like, look at how many PRs Devin has been shipping. Look at the— Tuesday was insane.
This is Tuesday.
Look at this. This is like one channel in our Slack. Like, you can just see me like, for— for— do this, do this, fix this, do this, do this, do this, do this, do this. Very helpful. So every single PM should pay for dev because it is kind of a PM's job and the amount of time it would save where you no longer have to tell an engineer like, hey, could you fix this small thing? Oh, I know it's kind of annoying. Like typo on the homepage, right? Typo on the homepage should never happen. Or for example, let's see, if you go to antiwork.com, this is a lowercase, you know, if you're on your phone and you notice that you're giving some customer a demo or something like that, you just go into Slack, capitalize Antiwork title and update SEO metadata description to Right, something like this. Yes, I— that's what I do. I generally have a PR created by Devin and then reviewed by a developer. So just to recap a little bit, uh, if I go back to my Twitter Where's my—
this one? No.
Oh yeah.
Will Devin replace all of the engineers in your company? Like, no. Not yet. But yeah, just as I mentioned, have dev encode it up and then QA. So the engineer should be doing QA, should be reading all the code, should be hitting merge. That's still— this is like what engineers are doing. Engineers are doing this and PMs, design engineers are doing this, right? It's just this one thing that ends up can be 90% of the knowing time. So yeah, I would try using Debian for everything. There's no doubt. There's— what's the downside to trying Debian? I like what Nico said. It's worth every penny. So yeah, I mean, really can do anything. But yeah, you still need to be QAing stuff. And you know, I can always CC Rafael. It's a bit buggy. The inaction is triggering the Gumroad chat, but not scrolling.
Just be using helper.
I'm personally like, this whole section isn't really useful. Like both of these sections, in my opinion, like it's just way better. Uh, I mean this whole, this whole website still needs a lot of work. We're still working a lot on the product. Um, but I can like create a list and let's try it if you want. If you guys want, we'll see how much better it can do. Super whisper me up.
Where's the super whisper?
Super whisper me up. Okay, so for the helper.ai homepage, which I believe is hosted at app-marketing/page.tsx, first, the section should not take up the whole window height. We should just sort of each one should take up as much or as little as it needs. Um, world-class support can be effortless. Fine. Helper provides human-quality 24/7 support. I feel like we can just remove that. We don't really need to say that. So it's just the header can just be as simple as world-class support can be effortless. See it in action, which will then trigger the the helper thing, which is the best demo anyways, in my opinion, is the product itself. Then we can completely remove the in-app chat mailbox section. I think all we can do, we can just say, powering support for millions on Gumroad. I think like we can just add that to the hero itself, or like right underneath it, uh, right in the middle. And then over time we can add more companies as we get customers. And then after— also, we should remove the automate your workflow, set smart rules section. So we don't need this anymore at all. So basically we just have the hero, which can be variable height, probably much less height than it currently is. And then basically also, I think this can be 100%, the gold part. Where the world-class support can be effortless should be 100% on the left and right, uh, so it, it kind of overlaps the logo and start with Helper button. Uh, and then right after that, it just goes straight to better than human responses, which is kind of the point of Helper. And I like the animation, I think it explains it really well. So you just have one section, then this section, and then you have the ready to stop answering support tickets. I think this is still untrue, you're still answering support tickets. So let's change this to ready to stop answering, and then just to mirror this dash, we can do every dash single dash one of your support tickets. So it's kind of a humorous thing. And then start using Helper, which takes you to login, which does this thing. We should be consistent about this, so like let's make this Let's make this arrow that's animating, put that in the start with helper in the top right, and then remove it from the see it in action. So the see it in action is just a simple button. Also, when you hover over see it in action, let's animate this background in hand as like a wave. I think that would be nice. Finally, let's full width and do the same thing, not insanely large, like window following the footer so that the footer is 100% width and also less intensely tall. Transcribe it, we'll copy it, and then we'll have @Devin for Antiwork Helper.
Cool.
Someone says, what do you suggest new graduates focus on? Building applications or diving into NLP and LLMs, whatever you wanna do. I mean, just become really good. It's really, I think you're just competing with much better, very cheap software. You just have to love what you do and become very, very, very proficient and you'll be fine. But like, for example, if you wanna build apps, like you have to get really good at product, really good at taste, as some say. You know, train your own models, uh, solve problems. Basically, just have to solve problems. Um, school is not going to be super helpful because school just gives you these like assignments. Inherently, all the things you learn in school, AI will be able to do better because that's all AI is doing is learning what you can learn in school, right? Just all the schools. So what can't you learn in school would be what I would focus on, is just which is generally like solving problems for real customers, real problems, real production situations. And you'll be fine if you do that. So yeah. Okay. Let's check back in on this stuff. You know, this is a pretty small one. Looks good.
Merge.
It's obviously gonna fail, but I'm curious if it did anything. No, not yet, still working hard. Let's see what's in Slack, see what's been up while I've been doing this. Awesome, it started to do these PRs. Yeah, so for example, like I may take the first stab at this. It looks like it created new files for some reason. That's probably because this is like what But someone said like, could you improve your repo? Generally if AI's making mistakes like this, then it's probably because our app is set up strangely. Oh, it just pushed some new commits. So my guess is it's doing some weird stuff because like the way we have this set up is strange. So it looks like this is incorrect and how it's solving these problems. Like for example, this comment, but It's still working, so we'll see. But most of the time, if it doesn't one-shot it or close, either I'll generally— I'll take over. It looks like it can, uh, record videos. So at least it says it can. So this is just an example, uh, Raul— or sorry, Rafael recorded this video, I think, as an example of how it's going to do it. And it's going to check the video and fix, fix this. But yeah, generally if it can't do it, either I'll go in with cursor and fix it, or I'll assign it to an engineer and then the engineer can see what I was trying to do and then take it the rest of the way. So yeah, you can see this, uh, just this example too as I pasted it in for the helper AI homepage. This is also kind of nice, it summarizes sizes it. Now let's see, this is weird. So I can say not this, should be the hero section itself.
Go—
yes, add this, add wave animation to background hand.
Perfect.
Remove arrow, yeah. Add animator, yeah. Remove this, yeah.
Yeah.
Update text. Spread it every single one, yep. And one day we'll add the resolution so we can actually say like 80% or 90% we can answer, et cetera.
Yep. Yep. Yep.
Cool. That was the only thing that I think you got wrong.
Awesome. Very nice.
Okay, let's see if we got the invoice section removal. It didn't open the PR yet, but it looks like— no, see, this is wrong. It's updating a spec. Yeah, so it's making a lot of random changes. This is partly— Flexile is tough because we're migrating from stack to another, so it's hard for it to know. But these are good examples of things that should exist within the— okay, got some of it right. Like, uh, actually no, I didn't.
It's updating.
Yeah, so this didn't get right. So yeah, this is a good example of something I would just close. It misinterpreted. It thinks that I want to remove the invoice section, but I actually want to I'm gonna remove it. Ah, see, I can tell you. So just to give you an example why it's wrong, uh, I didn't say on the home page, I just said remove the invoice bit. So I can see why. Start again in a new PR, only removing the invoicing, the demo invoice section from the pricing page of the home page. So that's the thing a human could get wrong. That's my fault. I could have prompted it better. The screenshot, I guess, would have helped, but that's all right. So let's figure out where this file is just to help it out a little bit more.
Web app.
And where is it going to be? See, it's not trivial to find out, even for a human. Auth layout?
No.
It should be in a— well, the best— generally the right way to do it would be to just like search for that. So let's number of contractors. All right, cool. Oh, because it's still a Rails. It's still in Rails. That's kind of annoying. We should migrate these to— these would be pretty easy to migrate to. Actually, this is a good example of Devin. Hey, Devin. You want to take a shot at this? Why not? It'll help with future changes. @Devin. See, this is what I'm saying. It's like you can just start queuing these things up for anti-work. Flexile migrate to Next.js. And this is just, uh, so I, I like how we did it with helper, uh, or if you go to helper, you can see marketing. So we're gonna copy this. We're gonna do app marketing page.tsx.
See? Boom.
This is a good one for her. So like, this is a good example, I think, of where Devin is actually better than using VS Code cursor copilot, et cetera. Because it's a lot of small things that like, it's gonna take like a human engineer, like quite a lot of time. I'd much rather work on something like more interesting, uh, personally. So I think this is actually a good example of, uh, like the hard decision is basically like this idea of like, where do you put it?
Right.
So I think this is actually quite a good example. There's another PR where rename we wanted to rename something and it was like a 2,500-line diff and having Cursor do it, yeah, you could do it with an agent, but then you'd have to be stuck just like for 30 minutes just like, and then you know, you push, the tests fail, you know, all that stuff Devin can just do. So I really enjoy it for stuff like that. Wouldn't it be nice if you could suggest the changes directly on the running web app? Totally. Wouldn't that be cool? Something like gum.new allows you to do. So let me show you. We're working on this new product that allows you to build landing pages. So you just click on something. You say, Update this header to be in black text. And then it makes the changes. And now it's black. Something like that. Wouldn't that be cool? I think it would be cool. gum.new, everybody check it out. Also, there's this interesting padding that exists on the back. Remove the body padding. Remove the body padding. Yeah, I'm sure there's going to be cooler and cooler stuff like Vercel and Devon and all these things will kind of get closer and closer together. Anyway, I think that was pretty helpful. Hopefully that was helpful to everybody. Let's see, did it remove the padding? No, it's still there. Figure out why that is. But yeah, gum.new is actually a good example of like, you know, we could ship features that are just within gum.new. So there's this like other change I want to make, which is if you just want to highlight this. It doesn't work yet because— okay, now it works. Enlarge this font a lot.
See if this works.
If it doesn't work, this will be a good prompt for a demo. Oh, I want—
yeah.
Oh yeah, there's actually— oh, it worked! Fuck yeah. Sorry. Sick. gum.new is pretty sick, isn't it? It's working well. So yeah, that's one project. It's like a web-based IDE that I think could be pretty cool. But yeah, I created these ones. For example, like, this works. I can close this.
It works.
Yeah, like this, right? I want to add Vercel Analytics, slash, Basefeeds. So I just go to gum.new, say Devin. I actually haven't set it up with Devin yet, so it won't have full access to everything. But for Antiwork, gum.new, add Priscilla.
So yeah.
That's Devon. I think it gave up on this one. Didn't get as far as I wanted it to. Too bad. But yeah, I think it's really helpful, especially if you're a real engineer and you're spending all your time in the real code. I'm not, so I sort of use it more like a frontend engineer, PM, designer. But if you're like building stuff and you're like, you know, for example, like I had this project called Door, which I can show you guys. This is a thing I built that basically is like an alarm system slash door thing where it records your face. As you can see, it records my face there. And then it plays your song. So in my case, it should play Never Are We Ever— We Are Never Ever Getting Back Together, Taylor's version. You can pause the camera. You can play it. You can connect your Spotify. So you can— oh, there's a bug. So I could— this has SQL access, so if I wanted to add a feature Like for example, this is a good example. Like when I refresh, you know, it doesn't do this. I could just have it do fix this issue. So @devon for antiwork door. Save pin to local storage so I don't have to enter it every time I visit. For example, this page. Invite to the channel and it'll do its thing. All these things that are not like my core focus, I can get to working on, which is nice. Yeah, I did wanna change that copy though, so. Oh, you see it's gone now? Nice, I like it. So pay people flexibly. Let's, let's mess around with this copy. I'll say cash and equity. So it's really like payroll and equity. Payroll and equity for everyone. That's kind of like what it's supposed to be. Payroll and equity for every— maybe everybody would be nicer because then it's kind of like mirrors the Y. Everybody. Uh, and then yeah, so payroll and equity for everybody. Uh, maybe if we make this an ampersand. Oh shit, I deleted the other one. For everybody. And then I like this, but then this is a bit too— like the leading is off. So if I just remove the leading, it's still a bit off because of this guy.
Probably payroll and equity for everybody.
Uh, something's still weird. Weird about this. I think the tracking, if we made the tracking tighter, um, but overall I think it's not bad. So I'm gonna change this. So pay people flexibly. This is gonna get conflicting cuz I have like a few PRs going on. Maybe I'll just add it to this one. Oh, it's pretty— yeah, this is a big task. This is a good example. It's trying to figure out what to do. So, you know, this is my feeling is that eventually it'll be like senior engineer level. It'll like get better at figuring out like how to, how to make these changes. Um, but yeah, maybe this one should wait until this is done. So I'll just save it in my own to-do list. So pay people flexibly. Now, I'll do this later.
All right.
I think that was pretty good. Hopefully useful. If anyone has any other questions, let me know. But— I think that was kind of useful.
Awesome.
Yeah, I mean, basically just to sum up, like, what are the main advantages of Devin? It can run your app, so it can see the changes it's making. It can iterate, so it can run, it can push the code, it can see what fails, the QA tests, the integration tests, the end-to-end tests, linting errors, etc. And it can push new commits, right? So if you're doing a huge migration, which may even be over the context length of a typical model, it may be able to make those changes, which is pretty rare. And it allows you to do other stuff, like you can have it do other things. So I think it's really cool. Obviously it's expensive, but it's, you know, if you're, if you have a business in which you employ software engineers, it's hard to not believe it's worthwhile. Uh, is it at the point in which you're gonna save hundreds of thousands of dollars a month? Probably not.. But my guess is it saves us on the order of tens of thousands of dollars a month or allows us to do tens of thousands of dollars a month of new, cool, creative work. And it's $500 a month. So it's probably a 10x sort of ROI for us at this point. And sometimes it— oh, the other thing that's really nice is it motivates you because If something's like 80% done, the, you know, you're motivated to go to the office and like ship the 20% and get it merged. So it speeds up just like the feedback loops. It's very satisfying to use. It allows non-engineers who may not have Cursor and all these things set up. They can use Devin to test things. They can QA them, they can merge them. So all of your, you know, like all of your marketers and the people who don't maybe write code every single day. Should be— like, Devon is like the best way for them, I think, to interact with the codebase, right? I think it's awesome. Oh, I thought someone was in the office. Spooked me out.
But just to hear










