Skip to content
How I AIHow I AI

Vibe coding a 3D multiplayer game in 15 minutes—with no game dev experience | Cody De Arkland

Cody De Arkland is the senior director of developer experience at Sentry, leading a team that empowers developers to build and ship software with greater safety and efficiency. Watch him speed-run the creation of a 3D multiplayer flight simulator—from scratch—in just 15 minutes, demonstrating the power (and creativity) that vibe coding enables. *What you’ll learn:* • How to approach building complex applications with AI by starting broad and iterating on specific features • The process of using multiple AI coding assistants simultaneously to build different components • Techniques for learning new technologies and frameworks through AI-assisted exploration • How to troubleshoot and fix issues when AI implementations don’t work as expected • The parallels between building fun projects and enterprise software with AI assistance • Strategies for keeping AI tools focused when they go off track or add unwanted features • The incredible velocity and productivity gains possible with modern AI coding tools • How anyone can now build sophisticated applications with minimal prior experience *Brought to you by:* Enterpret—Customer superintelligence platform for product and CX teams: http://enterpret.com/howIAI WorkOS—Make your app enterprise-ready today with WorkOS: https://workos.com?utm_source=lennys_howiai&utm_medium=podcast&utm_campaign=q22025 *Where to find Cody De Arkland:* Website: https://codyde.io/ LinkedIn: https://www.linkedin.com/in/codydearkland/ X: https://x.com/Codydearkland GitHub: https://github.com/codyde *Where to find Claire Vo:* ChatPRD: https://www.chatprd.ai/ Website: https://clairevo.com/ LinkedIn: https://www.linkedin.com/in/clairevo/ X: https://x.com/clairevo *In this episode, we cover:* (00:00) Introduction to Cody (02:45) AI tools he’s using (04:38) How Cody vibe coded a multiplayer game: Spaceflight (09:37) Demo: Starting a new flight simulator project from scratch *(12:22) "Tip: Keep your initial coding input general and broad"* (13:49) How to learn about libraries and technologies for projects (17:06) First run of the new flight simulator game (19:26) Using multiple AI coding assistants simultaneously *(19:31) "Tip: Use multiple AI coding assistants simultaneously to build different components"* (20:43) Unexpected features and visual improvements (21:26) Testing the multiplayer functionality (22:31) Reflecting on the development process and iteration (26:47) Lightning round and final thoughts *Tools referenced:* • Cursor: https://www.cursor.com/ • Windsurf: https://windsurf.com/ • Claude: https://claude.ai/new • Bolt: https://bolt.new/ • React: https://react.dev/ • v0: https://v0.dev/ *Other references:* • Sentry: https://sentry.io/ • MCP: https://www.anthropic.com/news/model-context-protocol • Spaceflight: http://spaceflight.gg/ • Three.js: https://threejs.org/ • Socket.io: https://socket.io/ _Production and marketing by https://penname.co/. For inquiries about sponsoring the podcast, email jordan@penname.co._

Cody De ArklandguestClaire Vohost
May 5, 202531mWatch on YouTube ↗

EVERY SPOKEN WORD

  1. 0:002:45

    Introduction to Cody

    1. CA

      we're talking about games, and we're talking about building games here, but the same thing translates really well to, like, when you're building actual applications, too. A lot of times you're starting with this blank framework, and you're giving it, like, a broad idea of the thing you wanna make, and then you're diving into these individual features.

    2. CV

      What are your sources for figuring out how to scaffold with existing technologies?

    3. CA

      A lot of times I'll ask the AI, "If I wanted to build a game, and I wanted it to run inside of a browser, which technologies make the most sense?" But then picking those things out and starting to do deep dives on it, like traditional Google, then feeding that back in the LLM, so it almost becomes like a conversation with another developer, where you're like, "Hey, I learned this thing from the internet. Can you implement this in the game?"

    4. CV

      I just think that's a really interesting process that nets out net positive.

    5. CA

      We're in this time period where everyone can go and do this. My kids have sat down and started playing with building games and things like that.

    6. CV

      So we're gonna speed-run vibe coding this game.

    7. CA

      We are going to speed-run. I want to build a flight simulator. I want turning to bank the plane, and arrow keys to control pitch. And there's our game.

    8. CV

      Hold your horses. You wrote, like, 27 words into this prompt, and now you have a video game? [upbeat music] Welcome to How I AI. I'm Claire, product leader and AI obsessive, here on a mission to help you build better with these new tools. Today, we have a very fun conversation with Cody De Arkland, senior director of developer experience at Sentry. Cody is one of the most prolific vibe coders I know, doing everything from building personal to-do apps for his family to automating just about everything you could automate at work. But today, we're doing something extra fun. Cody's going to speed-run building a 3D multiplayer game live on the show. Let's get to it. This episode is brought to you by Enterpret. Enterpret is a customer intelligence platform used by leading CX and product orgs like Canva, Notion, Strava, Hinge, and Linear to leverage the voice of the customer and build best-in-class products. Enterpret unifies all customer conversations in real time, from Gong recordings to Zendesk tickets to Twitter threads, and makes it available for your team for analysis. What makes Enterpret unique is its ability to build and update a customer-specific knowledge graph that provides the most granular and accurate categorization of all customer feedback, and connects that feedback to critical metrics like revenue and CSAT. If modernizing your Voice of the Customer program to a generational upgrade is a 2025 priority, like customer-centric industry leaders Canva, Notion, and Linear, reach out to the team at enterpret.com/howiai. That's E-N-T-E-R-P-R-E-T.com/howiai.

  2. 2:454:38

    AI tools he’s using

    1. CV

      Okay, Cody, I hate to admit when people vibe code harder than I do, but I believe [chuckles] that you are one of a very few set of people who do vibe code more than I do. So tell me the, the truth. What is up on your screen right now? What are you working on?

    2. CA

      Oh, God. So [chuckles] I tend to look at the different tools as like little junior developers who are helping me work on different things, so I tend to keep a lot of tools up at any given time because they're all working on different parts. And so I'm gonna go and just share my screen, and we're, we're gonna take a tour [chuckles] of what's running on, on Cody's desktop. Sharing-

    3. CV

      Maybe I'll keep a running tab if I'm running the same things.

    4. CA

      [chuckles] That, that's fun. All right, so I was in... I was working on a little, a little bit of a, a page around, like, uh, web performance. That's a little bit of a work test, so I work- I work at Sentry, and so I was working on, uh, some things for real work there. Behind the scenes, though, I've also got, uh, Cursor as well as Windsurf up because I really can't decide which one that I like more-

    5. CV

      I-

    6. CA

      ... at any given moment, so I just use them both, and I use them both often. So I've got both of those. Uh, I was doing some work inside of MCP, and so I have, uh, Claude up and was doing, doing some things inside of, inside of there. Inside of Windsurf, I was playing around with the, the game I built, which I think we're gonna talk a little bit about, a little bit about later on. Cursor is dived into a little application that I was building for, you know, testing, testing Sentry things out. And then again, tons, tons of stuff in Bolt, both things like that are work-related, but then also diving into some just, like, personal applications that are just fun for, for home productivity. So what is that? Windsurf, Cursor, Claude. Uh, I, I have Claude Coda open inside of, inside of my terminal. Yeah, we're all over, we're all over the place. We are truly unhinged in AI today.

    7. CV

      Yes, I think you, you have me beat, at least, at least right now. I'm not currently coding while doing,

  3. 4:389:37

    How Cody vibe coded a multiplayer game: Spaceflight

    1. CV

      doing this podcast. So you are right. I actually wanna talk about something a little different today. Because I've seen a lot of your work product generated by AI, I've seen some of your personal productivity tools, and what we call meme apps, these, like, little micro apps that you've built with Bolt. But the most impressive AI thing I've seen you build is your space game. So I would love for you to show us the end product of what you built with AI, and we're gonna work back into how you learned how to build that.

    2. CA

      Sure. So we'll go... We'll hop right back into sharing. And so I, I built this fun thing, and, you know, I've always, I've always enjoyed the kinda like flight simulators. And there was this moment in time in, in social recently where there's people popping up, building all of these, like, plane simulator apps, and I was like, "Man, I really wanna fly in space." You know, I, I, I loved playing X-Wing back in the day. I loved playing No Man's Sky. And I was like, "I bet we could make something like this." So I started playing around with how, how could we do this? And so this is the game. This is a little game called Spaceflight, and any- anyone can go and play this. It's on spaceflight.gg. And so you can go in, you can pick your name, you can pick the ship that you wanna fly around as. You enter into the game, and then you're in. And so this is all multiplayer, too, and so that wasn't... It wasn't initially, but it, it has become multiplayer now over time. And, you know, it started off as just kind of like a, a random idea of, "I can fly around space. How could I make the scene, and then how could I-... How could I make this thing look like a ship? Well, what if I really want it to look like a ship instead? And so it, it kind of grew, uh, sort of out of control, but there was a lot of, a lot of fun that happened along the way to get there.

    3. CV

      Okay, I joined the game as well. So it- proof is, it is online, [laughing] and it is multiplayer, so I'm in it. Okay, so you built this game, which when I was growing up, all- the only reason I got into computers is 'cause I wanted to make video games. But tell me, have you done game development before? Like, this is very impressive.

    4. CA

      No, h- honestly, you know, I, I think I've, I've played games growing up a ton. I was always pretty intimidated by going and trying to, trying to build one out, and so I just... I played them. And so this is my first foray into trying to, trying to get something together that I could actually go and, go and play and, and have other people play with me and see where it goes.

    5. CV

      Okay, so how did you learn how to [laughing] develop this space game, which still totally blows my mind?

    6. CA

      Yeah, I think we, we, we joke about the whole vibe coding thing, but it... This was, this was probably my first real experience in, like, truly vibe coding a thing, right? Like, and I jumped in, and I was like, "I want a p- I want a flight simulator in space." And so it, it ended up producing this thing that had, like, the starry background, kind of like what you're seeing here, uh, but ultimately had, like, a gray cube in the middle that was, that was supposed to represent a spaceship. And, and really it just ended up being this kind of back and forth asking of, like, "I want to change this part a little bit. I want the stars to move when I, when I go forward. I need to c- handle controls." And there was all these things that were like, that I didn't really think of before I started the project out, as far as, like, what is movement like in three dimensions in that case? Like, how do you handle that? How do you handle which way you want to move at any given moment? I had this idea then, like, well, there's tons of 3D models out. So like, for example, I was on Sketchfab, and I started looking up different, different spaceships, and I was like, "Well, these are all pretty cool. I imagine I could bring these in." And so I went in and asked, asked Cursor to, to go in and, and set these up, and I started reading more about what it was actually doing. And I think that's, like, maybe a little bit of a different approach that I take is, like, when these things- when it starts going and building this stuff out, and I see, like, different technologies being used, I'll go in, and I'll start asking it about, "How does this work?" So, like, as it started talking about glTF models and GLB models, like, "How do these work? How are they actually brought into the game?" And start trying to learn a little bit about, like, what it's actually implementing so that I can use it, use it also. And so, like, it set up the scene in Three.js. Three.js is a pretty well-documented-out platform overall, and so there's a lot of information out there. It built out the scene. I told it I wanted to replace that gray cube with the- with one of these models instead, and we went back and forth on that a bit because there's a lot of- there was a lot of nuance in making that happen right. For example, like, when you pull in these models, the game doesn't know what that model actually looks like. It's just a skin over a, over a thing, and so figuring out how to, like, position it and how to give the game an idea of what forward actually is, because some of these would load up sideways, and so I'd have to tell it, "Oh, the, the front of the ship is actually a 90-degree turn to the left horizontally," 'cause then I'd do a 90-degree turn, and it would just rotate it 90 degrees. And so you... It's a le- it's, like, an interesting lesson in being really specific with the models and how, how you want them to behave and how you want to, um, have them, like, act or how, how you want them to bring things out inside of the game. But then once you get it done once, you can say, "Hey, apply this same logic to my next ship," and, like, I have a local version of it that's running that has, you know, five different ships in it that I just haven't put into the, into the real game yet, uh, because, like, it's really easy to prototype those out more and build more

  4. 9:3713:49

    Demo: Starting a new flight simulator project from scratch

    1. CA

      now.

    2. CV

      So you... Did you start this from scratch in Cursor? Like, walk us through how you really got from an idea to here. What tools did you use? Where were you doing that learning?

    3. CA

      You know what? Let's have some fun.

    4. CV

      Yeah.

    5. CA

      Let's start building one a little bit.

    6. CV

      Okay.

    7. CA

      Let's just do it live.

    8. CV

      Oh, wait, so we're gonna build a game now?

    9. CA

      We're gonna, we're gonna actually build one. We talked about doing this. Now we're actually going to do it.

    10. CV

      Okay.

    11. CA

      So if I wanted to start this from scratch, I'm gonna go npm create, and I'm gonna give it a different name. We'll just go... Instead of flight, we're gonna go boop flight.

    12. CV

      So you're starting a blank, basically React?

    13. CA

      Yep, an empty React project.

    14. CV

      Great.

    15. CA

      And so I'm gonna come in here, and I'm gonna go into this boop flight project now. Boop, not boot flight, boop flight. And now I'm in this project. Now, one of my favorite tools, it's kind of the up-and-comer right now. I know you love it, too. We're gonna go right into Claude, but we're gonna live dangerously, and we're gonna-

    16. CV

      [chuckles]

    17. CA

      ... skip all permissions. So it's just gonna YOLO all of this into place, and we're gonna see how it goes.

    18. CV

      Great, so we're gonna speed-run vibe coding-

    19. CA

      We are

    20. CV

      ... this game.

    21. CA

      We are going to speed-run. I'm gonna have it init, and what this is gonna do is it's gonna start bringing in that initial context of the project as part of, like, Claude's understanding. It's gonna create a claude.md file that's gonna, uh, make it understand what the project structure is, what application or what, uh, framework it's using. So it's just good to, like, start off, uh, the project with, like, a good understanding, a good context around this. And like, I really did start from just an empty, an empty Vite project. And, you know, I think, like, we're talking about games, and we're talking about building games here, but the same thing translates really well to, like, when you're building actual applications, too. A lot of times you're starting with this blank framework, and you're giving it, like, a broad idea of the thing you want to make, and then you're diving into these individual features. And so, like, I built a lot of that inside of, like, real, like, company-level software. I took those same lessons into how I was building the game. Like, I had this broad idea, and I just started working on the individual features of that idea and building it out. And so we have this broader, broader game here now or broader, uh, project overall. So let's say, uh, we're gonna do a flight simulator again, but we won't do space this time. What we'll do is, uh, I want to build a flight simulator game that uses Three.js. Let's use polygon style art for the planes, WASD for movement. I want turning to bank the plane and arrow keys to control pitch.

    22. CV

      Oh, look at you!... kid raised on flight simulators.

    23. CA

      Kid raised, [laughs] uh, let's see. Let's, um, let's have it take off from a green field with trees and other objects around. We're gonna be super vague. I have no idea if this is gonna work out well, but we're gonna see what happens. And realize, like, this whole idea, I, I think people struggle a little bit with, like, the vibe coding thing, because a lot of times they give it far too big and too specific. I try to stay pretty wide and like, what's the broad strokes of what I want this thing to look like? Because I feel like that gives- that gives the LLM enough room to actually build something that works, and then I can tweak the individual parts as I go. And so, like, in my head, I, I literally think through these chunks of the thing that I'm gonna improve, and I just wanna see, like, what's the, the v0 prototype of this thing that is the earliest version, and how do I start making progress on it? And again, the same thing translates to, like, the productivity apps. I built this, like, tracking application for, like, tasks ar- around the house that I could share with, share with my spouse. And so, like, the same thing applied in there. I want an app that tracks everything I'm doing. I wanna create sub-tasks off of that. Now, I wanna integrate, you know, Supabase for authentication. Now, I wanna have a back-in, a back-end database, and, like, this gradual step of complexity over and over again, it has always been a much more approachable way for me to handle, like, building things out inside of these applications. But I see people pop in sometimes, and they do these, like, very detailed project-level plans that are, like, every single stage, and they feed it all into the context in one shot, and then they get frustrated when, like, [chuckles] the AI doesn't produce the perfect thing at the end of it, and it's like, "Well, you gave it a mountain of tasks that are hyper-specific. Let's try to break it down a little bit,"

  5. 13:4917:06

    How to learn about libraries and technologies for projects

    1. CA

      so...

    2. CV

      So let me ask you a question, because one thing I will say is you may not be a game developer, but you're clearly a developer, in that you know what libraries to ask it to install. You know some of these components, and I'm just curious: how are you learning... For any one vibe coding project, what are the libraries that people are using? Like, what are your sources for figuring out how to scaffold with existing technologies?

    3. CA

      I stay fairly connected in, like, developer communities overall, but something else that I've started doing a lot more lately is, like, going and [chuckles] ... A lot of times I'll ask the AI for, like, the game one is a great example. If I wanted to build a game, I, I remember actually doing this. I went in and I said, "If I wanted to build a game a- and I wanted it to run inside of a browser, which technologies make the most sense?"

    4. CV

      Love it.

    5. CA

      And, like, it'll go through and tell you, like, in this case, it was like, "Three.js is an option." When I did the multiplayer, that was another one that I did this on, was, "I want to implement multiplayer inside of the game. What's the best route to do this? I think WebSockets might be the right answer, but are there alternatives?" And it, and it said, "You know, WebSockets are, are an easy one, but allo- and allow for great customization, but also have the highest, uh, the highest amount of work associated with them. Here's a couple of other open-source libraries people use." And so, like, that's one way to learn, but then picking those things out and starting to do deep dives on it, like, even outside of the LLMs, just going in, you know, traditional Google of, like, "Building scenes in Three.js, how do people approach this?" And, and taking that and feeding that back into the L- LLM. So it almost becomes like a conversation with another developer, where you're like, "Hey, I learned this thing from, uh, from the internet. How do you- can you implement this in the game?" And, like, having it tell you if it's a good id- idea or not. A lot of times that's another thing I'll, I'll do, is I'll ask the game or I'll ask, like, the LLM, "Is this a good approach?" Like, "I've implemented WebSockets in this way..." Because I wrote, like, the first part of WebSockets myself, just 'cause I've, I've done a lot with WebSockets in the past. And when, um, when I got done with it, I went back and said, "Hey, can you look over this implementation and tell me if this is right?" And it caught a few things, where it's like, "Oh, you're, you're having a race condition here. You're not optimized here. You're not disconnecting sessions appropriately here." And so I, I really do look at this as, like, another developer that I'm handing off tasks to to see how they- how they end up going.

    6. CV

      [upbeat music] This episode is brought to you by WorkOS. AI has already changed how we work. Tools are helping teams write better code, analyze customer data, and even handle support tickets automatically. But there's a catch: these tools only work well when they have deep access to company systems. Your copilot needs to see your entire code base. Your chatbot needs to search across internal docs. And for enterprise buyers, that raises serious security concerns. That's why these apps face intense IT scrutiny from day one. To pass, they need secure authentication, access controls, audit logs, the whole suite of enterprise features. Building all that from scratch, it's a massive lift. That's where WorkOS comes in. WorkOS gives you drop-in APIs for enterprise features, so your app can become enterprise-ready and scale upmarket faster. Think of it like Stripe for enterprise features. OpenAI, Perplexity, and Cursor are already using WorkOS to move faster and meet enterprise demands. Join them and hundreds of other industry leaders at workos.com. Start building today.

  6. 17:0619:26

    First run of the new flight simulator game

    1. CV

      Okay, so where are we with this game? It looks like it wants to run.

    2. CA

      All right, so it looks like it finished up. It finished building. Everything's good. So now I just need to go and run it locally. We'll do that, and we'll launch it, and there's our game. Now-

    3. CV

      Shut up! Hold on. Hold your horses. You wrote, like, 27 words into this prompt-

    4. CA

      [laughs]

    5. CV

      ... and now you have a video game?

    6. CA

      Now, there's a couple things, though. Like, it looks great. It... This is fun. I feel much joy, but what we- I see on my side is, if you look, I'm banking to the right, so I'm, I'm pressing D, and it's turning opposite. Also, the tail is on the back end, so the camera is actually looking at the fli- at the, at the plane. So instead of being behind it, I'm on the front of it. Do you see what I mean?

    7. CV

      I mean-

    8. CA

      And so this is a good example of going back in.

    9. CV

      Got it.

    10. CA

      We'll go back into here, and we'll tell it, "It looks like my camera is facing the front of the model." Now, this might not work right, because, like-... the front is a, is, [chuckles] is more of a, of a human term in this case?

    11. CV

      Should we say the nose of the plane?

    12. CA

      Yeah, we should-

    13. CV

      This is my liberal arts coming into play.

    14. CA

      Yeah, yeah, the nose of the plane we should be looking- should be fixed to the tail of the plane. Can we... Ah, I don't wanna zoom out yet. I also feel like it's a little too close to be... We need a little bit more, we need a little bit more range here.

    15. CV

      Look, it even gave you a little, um, guide to the flight controls-

    16. CA

      Little flight controls

    17. CV

      ... and you didn't ask it to do that.

    18. CA

      So it's making some changes. I love, I love that we can watch it actually happen here, what it's actually, uh, updating. Claude Code is the ultimate, like, vibe coding tool, I swear. I definitely can tell that it's reversed, because when I go forward, the plane is flying at my screen as opposed to away from my screen. So it's definitely that the camera is totally reversed.

    19. CV

      What I love about Claude Code is you can see your tokens go brr. [chuckles] Really use up those, uh, token fees.

    20. CA

      I really need [chuckles] I need this game to take off so I can make, like, just $100 a month for people, so I can pay for these tokens and not get yelled at for spending my household funds on AI every single

  7. 19:2620:43

    Using multiple AI coding assistants simultaneously

    1. CA

      month. [laughs] So looks like it's rotating the camera here, so we're getting a different look direction. It's making these updates. And so, like, what I think is really interesting about this is this is all running now. Something else that I think is, like, a not so often used hack, is I'll open up a new tab sometimes. And so in this case, I'm, I'm still in Boop Flight. I could make a directory for server, I can switch into server, and I could say npm init. I can inst- install Express in here. And so, like, I could easily go back up a level now, open up a second Claude instance, and I can start in- instrumenting, like, the multiplayer stuff that we talked about. And so because I know just from the previous project that WebSockets wor- works really well, I can say, "I want to start implementing multiplayer for this game in the server directory. Handle player joins, and give me a chat interface on the top right that shows when people join the game."

    2. CV

      So you have dueling Claude Code going right now-

    3. CA

      I have two tabs

    4. CV

      ... working on the front end, front end, [chuckles] uh, just setting up the framework, the visual framework and interactivity of the game, and then the back end, um, setting up multiplayer.

  8. 20:4321:26

    Unexpected features and visual improvements

    1. CV

      Okay. Oh, we got a tail now!

    2. CA

      But now we're- now, see, but this just goes back to what I was talking about, like, that things don't always work the way we expect to do. So now, instead of being slightly above, I'm slightly below. I'm tr- I'm still reversed, so when I go forward, I'm flying backwards. So visually, we look right-

    3. CV

      [chuckles]

    4. CA

      ... but all of our controls are reversed now. And so in reality, what was going on is, like, the camera was not mispositioned. The camera was right. It was that everything else was positioned wrong. So now we go back in and we tell it, "All of my flight controls are reversed. Now we should fix that. I also want the camera to be slightly above and behind the model."

  9. 21:2622:31

    Testing the multiplayer functionality

    1. CV

      Okay, and so let's check in on your multiplayer now that we're, uh, making some, some modifications. Okay, so it's, it's setting up some-

    2. CA

      It is setting up the game itself-

    3. CV

      Great

    4. CA

      ... or setting up the multipl- or the multiplayer stuff. Oh, we just dropped a whole bunch of stuff in. So we can see the WebSockets, right? So it's going in and saying, like, "When someone joins the message, what does chat look like? When the socket detects someone move, what does that look like? What does it look like when someone disconnects?" So it's building out all of this stuff now. Uh, it's adding in the dependencies for Socket. Our tokens just keep climbing. Things just keep going. And so we're still fixing things there, and so, like, I really am having... Look at that. Look at us. And we have our-

    5. CV

      Oh, it's so much better!

    6. CA

      ... and we have our, so our flight controls are a little wonky still, so we're still, we're still- we're banking right, but we're turning wrong, so that's a fix. But visually, we're much better off than we were before.

    7. CV

      It looks amazing.

    8. CA

      I know you want your kids to play it so bad.

    9. CV

      I- my kids are definitely, definitely

  10. 22:3126:47

    Reflecting on the development process and iteration

    1. CV

      going-

    2. CA

      [chuckles]

    3. CV

      ... going to play this. Okay, so let's... I think this is blowing my mind in terms of quality of gameplay. I know that you have higher standards for your-

    4. CA

      [chuckles]

    5. CV

      ... game controls, but we can let that rest for a little bit.

    6. CA

      Yes.

    7. CV

      So now you're setting up multiplayer, which would be another aspect to this game, which I think would be very complicated to set up and prototype. Just taking a step back-

    8. CA

      Totally

    9. CV

      ... how long do you think just writing this code would have taken?

    10. CA

      Yeah, you know, I, I think that, like, writing it completely from scratch is probably at least several hours to get to a good, like, baseline of what this is. And especially, like, without sitting down and drawing up, like, diagrams and starting to think through what all of that looks like, just getting it to a point of, of being able to connect, have multiple players be able to connect, be able to see how they act inside of the game. Like, there's a lot of architecture choices inside of there that you would make as you are building it. So I'm gonna say at least, at least a few hours, and we have at least a v0 prototype of it coming in, coming in pretty quickly right here in just a few minutes.

    11. CV

      This is amazing.

    12. CA

      Good. We now have a... We have a flight strip that it went and implemented. I didn't even tell it to implement these mountains. What is, what is all this? What is all this stuff in the distance showing up? This is how Skynet starts, I'm telling you. [chuckles]

    13. CV

      This is very, very cute. Okay, so before this turns into a Twitch stream of us-

    14. CA

      [chuckles]

    15. CV

      ... just playing your very fun flight simulator game, let's check in on multiplayer. Did you make this a real game?

    16. CA

      Well, we're, we're gonna find out. So looking through, so the run finished inside, uh, inside Claude Code, so it made all the changes that we asked for. What's really cool is, like, it gives us some nice, like, documentation along the way of, of what's actually happening here, so I, I, I love that. We've got it up and running behind the scenes, so our, our game is, our game is up.... the multiplayer screen's up. I'm seeing some joins, which are, like, the browser- I'm guessing the actual, like, Claude code browser session trying it out. So we got- we have good signs. We have- we are suggesting that things look good. Let's jump in. It changed more. Look, there's mountains in the distance as it was correcting the other things.

    17. CV

      Okay, so you joined. You're, you're there, and then-

    18. CA

      Oh, and I see-

    19. CV

      Sentry-

    20. CA

      I see multiple players, so now let's open up another tab. Maybe.

    21. CV

      Oh, there's three players in the game now!

    22. CA

      Pseudo- pseudo Claire is in the game. Now, we... I mean, obviously we have some things that are broken here, right? So, like, this should be, down here on the bottom, should be the top of the screen. It's like, ooh, I can s- I can mouse wheel scroll. This is a new feature. We're stuck in a-

    23. CV

      Oh, and you have different camera views

    24. CA

      ... in a cockpit view. It's a cock- it's like a cockpit view. So, like, these are some of the problems, though, right? 'Cause, like, I didn't ask it to implement this, and so, like, it implemented that anyways. But we are seeing Claire. We're seeing, like, the chat, the chat window's a little broken, so these are things that we have to fix. But ultimately, like, think about how long it would've taken to learn how to build this from total scratch, implement all of this, set up the multiplayer. Like, this would've taken several hours, if not days, to go and do just for, like, a hacky, fun prototype, and we did this in, what, 15 minutes, uh, total? Like, we got a long ways in a short period of time.

    25. CV

      This is, this is amazing. Okay, if I know you, we're gonna end this podcast, and this is gonna be your weekend project. You'll send it to me, and my kids can start playing, which they're already doing with the space game. So I, I understand that we could iterate and fix some things. It seems like, you know, part of why I love this demo is you've shown us some of the frustrating moments of working with these LLMs to code, and it's not always perfect. You know, you take two steps forward, one step back. You add multiplayer, but you break the window. You add zoom, but you accidentally zoom through the airplane. And so, um, I just think that's a really interesting process that nets out net positive. What, what do you think about that?

    26. CA

      Yeah, you know, I think, uh, one of the, the things that's, like, worth calling out here is, like, I talked earlier about the problem with people throwing too much plan at it, but I think that, like, a little bit of plan is a good thing, and some rules and some guidelines around it are a good thing. But I think, like, again, the iteration is what really matters here, and, like, how far we were able to get in such, like, a short period of time. And, like, as far as, like, creating velocity and creating speed, I think that's, like, the really cool thing here is, like, yeah, it wasn't perfect, but we got it doing the main things

  11. 26:4731:43

    Lightning round and final thoughts

    1. CA

      that we wanted it to pretty painlessly.

    2. CV

      Okay, so let's do a quick lightning round and then get you back to your game development. So question one: How do you strike a balance between sort of this, like, fun, exploratory stuff, building games, learning totally new technologies, and figuring out how to apply AI in your kind of professional day-to-day?

    3. CA

      You know, I think, um, the thing about this is that it really isn't that much different from the workflow that I do as, like, day job stuff as far as, like, building, building software, trying things out, trying new things to hack out. I build a lot of repros off of, off of AIs, like, when I work with customers and things like that. And so, like, the skin might look different. One's a game, and one is [chuckles] inter- enterprise SaaS software, developer SaaS software. But, uh, ultimately, like, the workflows end up matching a lot. And so I'm fortunate that the things that, like, I enjoy doing are very similar i- in a way. But I think of, like, the answer is really, like, intentionality, right? Like-

    4. CV

      Mm-hmm.

    5. CA

      ... I started building the game 'cause I wanted something fun to be able to show kids, and show my kids, show your kids to play with, have people be able to go in and have fun with, that was different from building just another, another web app. And I have to, like, be really, like, conscious about choosing which one that I wanna do, but the workflow matches up in a lot of the same ways. You know, the whole taking a, a broad concept and breaking it down into the things I wanna build inside of it and iterating on it. So it feels very similar, but it's just choosing, "What am I gonna- what am I actually gonna do? Am I building the fun thing or building the, the work thing?" And, and they overlap sometimes.

    6. CV

      And sometimes the fun thing is, as we, as we showed, a little frustrating. So I'll wrap with my favorite question to ask, which is: When your vibe coding AI assistant is constantly breaking things, stuck in a loop, or adding features [chuckles] you did not ask it to add, what is your tactic for getting it to listen?

    7. CA

      I mean, I just scream at it, "Why are you this way?" [laughing]

    8. CV

      [laughing]

    9. CA

      No, I, uh, I tend to ask it a lot of times, "Hey, can we start over? Hey, can we start fresh?" If we get, like, far off the path or far off of what I wanted to build, "Hey, we've been wrong for a while. Can we take a fresh look at this problem? Here are the main requirements," and I'll, like, list them out as, like, "Here are the main requirements. Let's take a fresh look at implementing these." Sometimes I'll call out, like, complexity, like, "Hey, I feel like we've layered on a lot." Or, or I'll literally say, "We've layered on a lot of solutions. Can we simplify this in some way and start over?" Um, I like to also, like, early on, set up, like, a good Cursor Rules file or have, like, Windsurf memories in place. Windsurf has its own, its own Rules files, too, but, like, I find that the Windsurf memories work really, really well for this, and, like, set big guidelines around really... what I really want it to focus on. But that doesn't necessarily help when it gets squirrely, to your point, off, off the- off the beaten path. So a lot of times just being very clear with it and very clear about, "Hey, let's start over. Let's reset this part." And also, like, taking these bigger problems and scoping them down smaller. And so, like, if we get way off the path, let's take that problem that's way off the path, and let's drill it down and say, like, "I want the menu to be here." Like, the chat window in the other, in what we were showing a moment ago, was way off the screen. I'm gonna go back in, and I'm gonna say, "Hey, the part of the upper part of the game has moved to the bottom, and the chat window's off. Can we fix those?" And I won't- I'll ignore everything else and just focus on that to keep the context window focused. So just being intentional, talking to it, giving it clear directions and clear expectations.

    10. CV

      I, I hate to tell you this, my friend, but it sounds like you're a product manager.

    11. CA

      Oh, God.

    12. CV

      [laughing]

    13. CA

      Oh, there we go. Oh, there, oh, there, there.

    14. CV

      Okay, Cody, this was so fun. I think you're going to inspire a bunch of people to build their own 3D multiplayer game in 15 minutes. I think we speed-run it. So where can we find you, and how can we help you?

    15. CA

      Yeah, uh, I'm, I'm on X, so @codydarkland. I'm, I'm, I'm on there often. I live, live digitally online, especially when building, building the games and stuff. As far as helping me goes, like, I get a lot of inspiration out from seeing other people tell these stories, and I think, like, going in and learning how to build something new, we're in this time period where everyone can go and do this. Everyone can... Like, my kids have sat down and started playing with building games and things like that. And so the thing that would help me the most is just being excited about going in and building, and, like, sharing the software you're building, the fun games you're building, and sharing stories like that. There's enough things going wrong, wrong in the world that, like, being excited for this new world we're in, where anyone can come in and build and build cool things, is just really inspirational. I draw a lot from that, so share it with me, tag me in it. I'll, I'll hype it up. You'll hype it up. It'll be, it'll be a lot of fun.

    16. CV

      Well, cheers to that. Thank you so much. This was really fun.

    17. CA

      All right, thank you. [upbeat music]

    18. CV

      Thanks so much for watching. If you enjoyed the show, please like and subscribe here on YouTube, or even better, leave us a comment with your thoughts. You can also find this podcast on Apple Podcasts, Spotify, or your favorite podcast app. Please consider leaving us a rating and review, which will help others find the show. You can see all our episodes and learn more about the show at howiapod.com. See you next time! [upbeat music]

Episode duration: 31:43

Install uListen for AI-powered chat & search across the full episode — Get Full Transcript

Transcript of episode xW5y2Yv_E2Y

Get more out of YouTube videos.

High quality summaries for YouTube videos. Accurate transcripts to search & find moments. Powered by ChatGPT & Claude AI.

Add to Chrome