Hacker Newsnew | past | comments | ask | show | jobs | submit | vunderba's commentslogin

This has been my experience too. AI is like handing someone a motorcycle. Sure they're going to move faster but those without a map won’t necessarily be heading in the right direction.

If I was still doing Windows development, I would likely still be using Winforms to this day - you can't beat it from a purely functional prototyping tool even if it doesn't produce the most aesthetic GUIs ever.

It's a great successor to IMHO one of the other all time best RAD environments, Visual Basic. (Though I've head Pascal had some really nice out-of-the-box tools for GUI work)


Delphi has an amazing RAD environment. For building small, self-contained desktop apps (with cross-platform support!) it beats any other modern offering... if you can get past the ecosystem. The language and ecosystem very much show their age.

Anyway, I think this generation is missing out on the experience of building in a real RAD environment. I'm more on the backend, but from what I see the pinnacle is fast hot reload, which pales in comparison to what could be.


Just a heads up, it's highly unlikely you're going to be able to get away with pure vibe coding (as defined by Karpathy) for game dev.

There's just no way around the fact that games need a lot of play-testing and visualization, all of which is difficult to capture discrete unit tests.

Many of the games I've released using an agentic CLI (OpenCode) would have been absolutely impossible to vibe code.

That being the case, any library that’s been around long enough to be well represented in the training data of the larger LLMs will work perfectly fine. Love2D, Phaser, etc., would all be solid options.


# I think it's possible to architecture around this. For example, here is one idea:

- make the game as functional as possible: as in the game state is stored in a serializable format. New game states are generated by combining the current game state with events (like player input, clock ticks, etc)

- the serialized game state is much more accessible to the AI because it is in the same language AI speaks: text. AI can also simulate the game by sending synthetic events (player inputs, clock ticks, etc)

- the functional serialized game architecture is also great for unit testing: a text-based game state + text-based synthetic events results in another text-based game state. Exactly what you want for unit tests. (Don't even need any mocks or harnesses!)

- the final step is rendering this game state. The part that AI has trouble with is saved for the very end. You probably want to verify the rendering and play-testing manually, but AI has been getting pretty decent at analyzing images (screenshots/renders).

# Here is an example of a simple game developed with functional architecture: https://github.com/Leftium/tictactoe/blob/main/src/index.ts

- Yes, it's very simple but the same concepts will apply to more complex games

- Right now, there is only rendering to the terminal, but you could imagine other renders for the browser and game engines


That's true - state serialization can definitely help.

> AI has been getting pretty decent at analyzing images (screenshots/renders).

I've found AI to be hit or miss on this - especially if the image is busy with lots of elements. They're really good at ad-hoc OCR but struggle more with 3d visualizations in a game that might be using WebGL.

For example, setting up the light sources (directional, lightmaps, etc) in my 3D chess game to ensure everything looked well-lit while also minimizing harsh specular reflections was something VLMs (tested with Claude and Gemini) failed pretty miserably at.

https://shahkur.specr.net


I hadn't thought about how to write tests for games before.

I tend to only use LLMs to complete projects that are relatively unique and that haven't been done before. Because if I'm not going to get anything out of the journey, I might as well get something out of the destination.

*Piece Together*

An animated puzzle game that I built with a fairly heavy reliance on agentic coding, especially for scaffolding. I did have to jump in and tweak some things manually (the piece-matching algorithm, responsive design, etc.), but overall I’d estimate that LLMs handled about 80% of the work. It's heavily based on the concept of animated puzzles in the early edutainment game The Island of Dr. Brain.

https://animated-puzzles.specr.net

*Lend Me Your Ears*

Lend Me Your Ears is an interactive web-based game inspired by the classic Simon toy (originally by Milton Bradley). It presents players with a sequence of musical notes and challenges them to reproduce the sequence using either an on-screen piano, MIDI keyboard, or an acoustic instrument such as a guitar.

https://lend-me-your-ears.specr.net

*Shâh Kur - Invisible Chess*

A voice controlled blindfold chess game that uses novel types of approaches (last N pieces moved hidden, fade over time, etc). Already been already playing it daily on my walks.

https://shahkur.specr.net

*Word game to find the common word*

It's based off an old word game where one person tries to come up with three words: sign, watch, bus. The other person has to think of a common word that forms compound-style words with each of them: stop.

I was quite surprised to see that this didn't exist online already.

https://common-thread.specr.net

*A Slide Puzzle*

Slide puzzles for qualified MENSA members. I built it for a friend who's basically a real-life equivalent of Dustin Hoffman's character from Rain Man. So you might have to rearrange a slide puzzle from the periodic table of elements, or the U.S. presidents by portrait, etc.

https://slide-puzzles.specr.net

*Glyphshift*

Transforms random words on web pages into different writing systems like Hiragana, Braille, and Morse Code to help you learn and practice reading these alphabets so you can practice the most functionally pointless task, like being able to read braille visually.

https://github.com/scpedicini/glyph-shift

All of these were built with varying levels of assistance from agentic coding. None of them were purely vibe-coded and there was a great deal of manual and unit testing to verify functionality as it was built.


> All of these were built with varying levels of assistance from agentic coding. None of them were purely vibe-coded and there was a great deal of manual and unit testing to verify functionality as it was built.

It also seems like none of them are relatively unique and all of them have been done before.


Name them. Go ahead, I'll wait.

Simon toy that's integrated into an ear training tool?

Blindfold chess with Last N moves hidden?

Mensa-style slide puzzles?

An extension that converts random words into phonetic equivalents like morse, braille, and vorticon?

I've also made some way less useful stuff like a win32 app that lets you physically grab a window and hurl it which invokes an WM_DESTROY when it completely is off the screen.

And an app that measures low frequencies to tell if you are blowing into the mic and then increases the speed of the CPU fan to cool it down.


Just a heads up - your github only has a single HTML file for the landing page itself - not the actual source for the chess game.

You're right to point that out. I misspoke in the description. The repository currently only contains the landing page and project files. The chess engine itself isn't open source at the moment. Thanks for catching that.

It'd be pretty easy to spot too, because most people don’t even bother trying to hide it (either out of laziness and/or ineptitude).

A lot of users don’t seem to realize that anyone can click on the domain in a "Show HN", and Hacker News will show you all the times that domain has been submitted. So you’ll see four or five different low karma sock puppets accounts that have all submitted the same site.


Oooooh that’s a great idea!

You also falsely accuse anyone else who shared their URL genius

This already happens now. Go look through a few of the "Show HN" authors - you'll inevitably see around several accounts that are 50-100 days old with a karma of 1 to avoid a green label.

The OP is talking about posts, not comments. The simplest solution might be to prevent someone from posting a "Show HN" until they’ve earned twenty-five or fifty karma, to demonstrate that they’ve been actively participating on Hacker News rather than using it solely to promote themselves.


This leads inevitably to karma farming bots who upvote each other’s submissions à la Reddit.

It’s a speed bump at best.


Yeah I considered that - but any friction is better than none. Maybe integrate an additional consideration by which low karma (threshold < 5 karma) accounts cannot upvote other low karma accounts.

Honestly, we don’t really have the same cold start problem that a brand new social media site would. We already have plenty of reputable active users here. So HN could restrict new accounts to only being able to comment initially. As they participate, their comments receive upvotes, allowing them to build up enough karma (even a small amount of 25) which unlocks the ability to upvote, and then, finally, the ability to create posts.


Creating more friction can also lead to a higher percentage of bots. I for one immefiately leave when I realize that I need to jump through several hoops before I'm actually allowed to participate on a site. Someone building a bot farm on the other hand is probably willing to tolerate quite some friction before giving up.

That's true. On the other hand, Hacker News is a pretty well known entity, so I think new users would be more willing to put in the time.

I also don't think it's too unreasonable to ask people to make comments and participate in the community before allowing them to do more.


A speed bump might still be preferable to nothing.

I have seen accounts that were dormant for years suddenly start posting frequently, all with slop. (I don't know if this represents people having an epiphany about AI use, or accounts being compromised or just what.)

Yeah I've seen this too - like a weird equivalent of HN sleeper agents that suddenly get activated.

It's not a perfect equivalency but putting the drawer on the right side seems to be a bit inconsistent with their own Finder display (Show Items as Columns) where you drive from left-to-right with the right-most being a preview of a media asset such as a picture for example.

But I wasn't an early user of MacOS, I don't know when this Column layout was first introduced.

> The Preview app is about the content. The content is king.

If "left-hand" is king I wonder if they would have reversed the drawer's position for localization in countries with RTL languages.


> But I wasn't an early user of MacOS, I don't know when this Column layout was first introduced.

1989. See the screenshot: https://en.wikipedia.org/wiki/NeXTSTEP

Instead of the drawer on the side, NeXTSTEP had the Shelf on top: https://en.wikipedia.org/wiki/Shelf_(computing)


Thanks TIL. Tangentially related, I'm a huge fan of the aesthetics of the NeXTcube (even if by all accounts it was a bit of a nightmare to build from a engineering perspective).

https://en.wikipedia.org/wiki/NeXTcube



"I wonder if they would have reversed the drawer's position for localization in countries with RTL languages."

I believe AppKit did so.


I took the time to bring down the repo and compile it because I grew up playing SkyRoads on an old 486 DOS machine when I was a kid so I'm intimately familiar with the subtle details of the game (the weird bouncy physics of the hovercraft, the speed of the game, etc).

At this time, this project DOESN'T really work. At all. I mean it's totally unplayable. Within 5 seconds of starting the game, the vehicle was literally teleporting all over the place.

So it's a very cool proof-of-concept, but I'd be more in interested in a repost when Codex is finished.

Video of the current state:

https://imgur.com/a/R3A6Xse


This post is rather peak irony given that your very first post on Hacker News is basically soliciting feedback. Your karma is ONE and you seemingly have never participated in any other threads or given feedback to anyone else yourself.

I take a little time out of my day each week to browse "Show New" and offer some constructive feedback. I wish others would do the same, but c’est la vie.

As for your idea there have been a few attempts at this in the past, usually in smaller more intimate settings. I’m part of a private Discord with only about a dozen other devs who do exactly this, but we all know each other, so there’s a camaraderie that encourages everyone to share and give feedback.


Fair point about the irony. Posting here before participating much isn't exactly practicing what I'm preaching.

The Discord example you mentioned is interesting though. A lot of the good feedback exchanges I've seen seem to happen in small private groups where people know each other, like friend groups.

The thing I'm trying to figure out is whether something like that dynamic can work with strangers if the incentives are structured correctly. My small experiment pairing devs up seemed promising, but it's obviously a tiny sample size.

I myself browse through new reddit posts to check out new projects and give them feedback to, and used this account to share this project and spark a discussion, though it is fair that it seems ironic with a single karma on my side.


> The thing I'm trying to figure out is whether something like that dynamic can work with strangers if the incentives are structured correctly. My small experiment pairing devs up seemed promising, but it's obviously a tiny sample size.

It's hard to say honestly - building a system with proper incentives that simultaneously isn't abusable by bad actors is going to be tricky.

FWIW, I do agree with you - I occasionally checkout r/playmygame or r/SideProject and as somebody who also builds a lot of apps, it's depressing to see the number of posts that fail to elicit even a single response.


True, responses are rarely seen, and when they are seen they are bland "Looks good" type of feedback. Difficult to encourage feedback, and even more difficult to encourage good feedback.

Experimenting displayed improved feedback when given a proper structure. I guess it is rewarding to people when they see feedback they hope for get implemented. Though the feedback-loop is something that rarely occurs.

EDIT: Grammar fixes


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: