Quick reactions from trying it out: One of my questions about this is the same as my question about "low-code" tools-- how they enable novices to debug errors or edge cases in the generated code.
Example: I played the tower defense style game example you linked in the comments for a few minutes, and found a bug (or perhaps a gameplay edge case I'd want to treat differently: a second bullet gets fired in the direction of an enemy that just died, wasting a shot). I cloned the project and poked around in the code to try to fix that, though without knowing the language and generated code that wasn't trivial.
Next, I thought-- I'll use the chat interface to explain this bug / edge case and ask for a suggestion. I was impressed, the conceptual explanation of how you might fix this seemed reasonable! However, the suggested generated code seemed incomplete and was full of "// ... rest of the code ..." comments, and when I clicked "Apply suggestions" that seemed to overwrite the existing program, so the application no longer runs (chunks of the program are just "// ... rest of the code..." lines). And I didn't see an obvious way to undo or get back to the previous code.
Anyway, that's feedback on my initial experience, I could see this being useful to generate the skeleton of a program or as an interface to get how-to suggestions that I'd then more carefully implement/integrate myself.
As of right now you still need to be familiar with the code that it gives you. But personally even when I work on a game I resolve bugs by chatting with the AI about it. We're also trying to surface any kind of actual errors that happen so you can feed it back to the AI. So far I haven't seen a bug I can't fix in this way, but then I've been coding for 20+ years.
As for the "//...rest of the code" stuff, yeah it's my white whale. We're just limited by the context size. We have a bunch of things coming up to separate the code into multiple files and various tricks to squeeze more of the context size. It's a constant battle.
Another thing we're toying with is automatic debugging that lets it go back and forth on bugs until it actually works.
Your reaction was almost exactly the same as mine. The very first thing that made me realize that Rosebud was a big deal was how consistently accurate the AI was when it came to figuring out what was wrong with a project.
Having a debugging assistant that is that good, in my opinion, alone makes Rosebud a better option than most 2D game development environments for most people.
The issues with the incomplete code get in the way, but the team has already identified them, so they shouldn't be a problem for too much longer.
This comment says the exact opposite of what you're praising Rosebud for. The debugging not only wasn't helpful, it actively made the game unworkable and unrecoverable.
Thanks for the great feedback! There are currently a couple of ways to address this. You can simply ask in the chat, for example, by saying, 'please provide the code for the full program.' Or, you can ask a specific question with instructions, like 'how to change the color of the asset.' This approach will prompt the provision of the correct code snippet and detailed action steps, including where and how to implement it in the code tab. Ultimately, our goal is to streamline this process to make the experience smoother for users
Thanks for trying it! One of the more impressive things we have seen so far is how some beta testers with no coding background were able to get deep into debugging by having our AI explain what the issues are and how to fix them. However, as you pointed out, it does not reliably provide working code all the time for the user to apply directly. This is something we are aware of and are trying to make the generated code better and more reliably provide working solutions with no formatting errors. It is basically quite a hard (and thus fun technical) problem we are solving.
Quick reactions from trying it out: One of my questions about this is the same as my question about "low-code" tools-- how they enable novices to debug errors or edge cases in the generated code.
Example: I played the tower defense style game example you linked in the comments for a few minutes, and found a bug (or perhaps a gameplay edge case I'd want to treat differently: a second bullet gets fired in the direction of an enemy that just died, wasting a shot). I cloned the project and poked around in the code to try to fix that, though without knowing the language and generated code that wasn't trivial.
Next, I thought-- I'll use the chat interface to explain this bug / edge case and ask for a suggestion. I was impressed, the conceptual explanation of how you might fix this seemed reasonable! However, the suggested generated code seemed incomplete and was full of "// ... rest of the code ..." comments, and when I clicked "Apply suggestions" that seemed to overwrite the existing program, so the application no longer runs (chunks of the program are just "// ... rest of the code..." lines). And I didn't see an obvious way to undo or get back to the previous code.
Anyway, that's feedback on my initial experience, I could see this being useful to generate the skeleton of a program or as an interface to get how-to suggestions that I'd then more carefully implement/integrate myself.