How I AIVibe coding a 3D multiplayer game in 15 minutes—with no game dev experience | Cody De Arkland
EVERY SPOKEN WORD
35 min read · 6,718 words- 0:00 – 2:45
Introduction to Cody
- CACody De Arkland
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.
- CVClaire Vo
What are your sources for figuring out how to scaffold with existing technologies?
- CACody De Arkland
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?"
- CVClaire Vo
I just think that's a really interesting process that nets out net positive.
- CACody De Arkland
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.
- CVClaire Vo
So we're gonna speed-run vibe coding this game.
- CACody De Arkland
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.
- CVClaire Vo
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:45 – 4:38
AI tools he’s using
- CVClaire Vo
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?
- CACody De Arkland
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-
- CVClaire Vo
Maybe I'll keep a running tab if I'm running the same things.
- CACody De Arkland
[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-
- CVClaire Vo
I-
- CACody De Arkland
... 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.
- CVClaire Vo
Yes, I think you, you have me beat, at least, at least right now. I'm not currently coding while doing,
- 4:38 – 9:37
How Cody vibe coded a multiplayer game: Spaceflight
- CVClaire Vo
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.
- CACody De Arkland
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.
- CVClaire Vo
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.
- CACody De Arkland
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.
- CVClaire Vo
Okay, so how did you learn how to [laughing] develop this space game, which still totally blows my mind?
- CACody De Arkland
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
- 9:37 – 13:49
Demo: Starting a new flight simulator project from scratch
- CACody De Arkland
now.
- CVClaire Vo
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?
- CACody De Arkland
You know what? Let's have some fun.
- CVClaire Vo
Yeah.
- CACody De Arkland
Let's start building one a little bit.
- CVClaire Vo
Okay.
- CACody De Arkland
Let's just do it live.
- CVClaire Vo
Oh, wait, so we're gonna build a game now?
- CACody De Arkland
We're gonna, we're gonna actually build one. We talked about doing this. Now we're actually going to do it.
- CVClaire Vo
Okay.
- CACody De Arkland
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.
- CVClaire Vo
So you're starting a blank, basically React?
- CACody De Arkland
Yep, an empty React project.
- CVClaire Vo
Great.
- CACody De Arkland
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-
- CVClaire Vo
[chuckles]
- CACody De Arkland
... skip all permissions. So it's just gonna YOLO all of this into place, and we're gonna see how it goes.
- CVClaire Vo
Great, so we're gonna speed-run vibe coding-
- CACody De Arkland
We are
- CVClaire Vo
... this game.
- CACody De Arkland
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.
- CVClaire Vo
Oh, look at you!... kid raised on flight simulators.
- CACody De Arkland
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,"
- 13:49 – 17:06
How to learn about libraries and technologies for projects
- CACody De Arkland
so...
- CVClaire Vo
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?
- CACody De Arkland
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?"
- CVClaire Vo
Love it.
- CACody De Arkland
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.
- CVClaire Vo
[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.
- 17:06 – 19:26
First run of the new flight simulator game
- CVClaire Vo
Okay, so where are we with this game? It looks like it wants to run.
- CACody De Arkland
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-
- CVClaire Vo
Shut up! Hold on. Hold your horses. You wrote, like, 27 words into this prompt-
- CACody De Arkland
[laughs]
- CVClaire Vo
... and now you have a video game?
- CACody De Arkland
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?
- CVClaire Vo
I mean-
- CACody De Arkland
And so this is a good example of going back in.
- CVClaire Vo
Got it.
- CACody De Arkland
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?
- CVClaire Vo
Should we say the nose of the plane?
- CACody De Arkland
Yeah, we should-
- CVClaire Vo
This is my liberal arts coming into play.
- CACody De Arkland
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.
- CVClaire Vo
Look, it even gave you a little, um, guide to the flight controls-
- CACody De Arkland
Little flight controls
- CVClaire Vo
... and you didn't ask it to do that.
- CACody De Arkland
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.
- CVClaire Vo
What I love about Claude Code is you can see your tokens go brr. [chuckles] Really use up those, uh, token fees.
- CACody De Arkland
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
- 19:26 – 20:43
Using multiple AI coding assistants simultaneously
- CACody De Arkland
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."
- CVClaire Vo
So you have dueling Claude Code going right now-
- CACody De Arkland
I have two tabs
- CVClaire Vo
... 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.
- 20:43 – 21:26
Unexpected features and visual improvements
- CVClaire Vo
Okay. Oh, we got a tail now!
- CACody De Arkland
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-
- CVClaire Vo
[chuckles]
- CACody De Arkland
... 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."
- 21:26 – 22:31
Testing the multiplayer functionality
- CVClaire Vo
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-
- CACody De Arkland
It is setting up the game itself-
- CVClaire Vo
Great
- CACody De Arkland
... 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-
- CVClaire Vo
Oh, it's so much better!
- CACody De Arkland
... 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.
- CVClaire Vo
It looks amazing.
- CACody De Arkland
I know you want your kids to play it so bad.
- CVClaire Vo
I- my kids are definitely, definitely
- 22:31 – 26:47
Reflecting on the development process and iteration
- CVClaire Vo
going-
- CACody De Arkland
[chuckles]
- CVClaire Vo
... 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-
- CACody De Arkland
[chuckles]
- CVClaire Vo
... game controls, but we can let that rest for a little bit.
- CACody De Arkland
Yes.
- CVClaire Vo
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-
- CACody De Arkland
Totally
- CVClaire Vo
... how long do you think just writing this code would have taken?
- CACody De Arkland
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.
- CVClaire Vo
This is amazing.
- CACody De Arkland
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]
- CVClaire Vo
This is very, very cute. Okay, so before this turns into a Twitch stream of us-
- CACody De Arkland
[chuckles]
- CVClaire Vo
... just playing your very fun flight simulator game, let's check in on multiplayer. Did you make this a real game?
- CACody De Arkland
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.
- CVClaire Vo
Okay, so you joined. You're, you're there, and then-
- CACody De Arkland
Oh, and I see-
- CVClaire Vo
Sentry-
- CACody De Arkland
I see multiple players, so now let's open up another tab. Maybe.
- CVClaire Vo
Oh, there's three players in the game now!
- CACody De Arkland
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-
- CVClaire Vo
Oh, and you have different camera views
- CACody De Arkland
... 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.
- CVClaire Vo
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?
- CACody De Arkland
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
- 26:47 – 31:43
Lightning round and final thoughts
- CACody De Arkland
that we wanted it to pretty painlessly.
- CVClaire Vo
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?
- CACody De Arkland
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-
- CVClaire Vo
Mm-hmm.
- CACody De Arkland
... 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.
- CVClaire Vo
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?
- CACody De Arkland
I mean, I just scream at it, "Why are you this way?" [laughing]
- CVClaire Vo
[laughing]
- CACody De Arkland
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.
- CVClaire Vo
I, I hate to tell you this, my friend, but it sounds like you're a product manager.
- CACody De Arkland
Oh, God.
- CVClaire Vo
[laughing]
- CACody De Arkland
Oh, there we go. Oh, there, oh, there, there.
- CVClaire Vo
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?
- CACody De Arkland
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.
- CVClaire Vo
Well, cheers to that. Thank you so much. This was really fun.
- CACody De Arkland
All right, thank you. [upbeat music]
- CVClaire Vo
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