Even with the latency/frame stuttering inherent in this sort of thing, it's been pretty amazing to re-play games with childhood friends who are now dispersed across the planet.
I'm debating using LLMs for my side projects. Does using one remove the "soul" of my project? On the other hand, a friend is actually making progress with his side app _because_ he's able to lean on the LLM after a full day's worth of working the day job. I might be able to actually do some of the things I've dreamed of and never had the capacity for. First world problems, I guess.
I've been doing exactly this now for a little while, and it breathed new life into my projects. It's been amazing, honestly. I was worried about the "soul" as well, especially for some projects where I got intimately deep in bit shifting and things, but realistically that project is now 100x more useful to me because it has a ton of features and even bug fixes that I never would have spent the time on before. I highly recommend it.
I think it depends on what you are doing the side project for.
Are you doing it to learn engineering? The learning potential of a back & forth with LLMs is wasted on people who don't have serious know-how.
Are you doing it to create a product, or learn how to do that? Then no, the LLM is helping you get over the hump of writing slow code.
I think we'll eventually drop the "vibe coding" and retronym coding to "slow coding" or something similar. There's advantages to slow coding in a world of AI coding, just like today there are advantages to dropping other types of abstraction layers (from writing direct code when using a WYSIWYG editor, to dropping into assembly code in a performance-critical branch of a game engine written in C++...).
But spending more time on writing code is not useful if you don't get something out of that additional time.
I built a few native iPhone apps 15 years ago, but these days do my tinkering in web tech and "Save to Homescreen." Probably couldn't do this if I wanted functionality like photo/video editing or heavy 3D, but for my relatively simple use case, Webkit is fine. This has the benefit of completely bypassing the App Store, and lets me share apps by just linking to them.
If you're familiar with web development, you can make games with HTML/JS, which is almost its own "engine." Think DOM elements for sprites, CSS animations for movement, requestAnimationFrame for an update loop, etc. This has the extra benefit of zero friction for players -- no native app installation necessary!
I have thought about doing this via PhaserJS in the past, but it just never clicks for some reason. I feel like my brain is missing some important component for making game design make sense.
I wrote some tutorials for making "grid-based" games that might give you some inspiration (https://ganbaru.games/writing-grid-based-games/) It's actually kind of crazy how many different types of games work with this approach.
I don't think it's iPhone vs. Android, rather "mega-corp $$$" vs. hobbyists. At the point where Android could be considered "open" (e.g. removing Google Play Services, etc.) you've lost a lot of the functionality that people come to expect from a smartphone. Sure, there are workarounds, but let's be honest: they're hacky and not a great experience.
reply