upvote
FPS.cob: A first person shooter in COBOL

(github.com)

We need to start putting guardrails on hn to not allow those esoteric projects to be published. Before ai, it was impressive that a person has that much passion and dedication to go down the rabbit hole, and it usually comes back with some cool anacdotes that are nice to read.

Today, it's shallow, emptied out of the content.

It's not impressive that Claude wrote it, it was impressive if you have written it, OP.

reply
> It's not impressive that Claude wrote it, it was impressive if you have written it, OP.

Do you have evidence that it's Claude written? Looking through the source it isn't clear to me, at all. Plus, even if it _was_ Claude/LLM assisted, why does that take away from the project?

reply
You have to remember that this forum is for people who have a passion and an intellectual interest in coding and development, and discussing such with like-minded people. Stimulating intellectual curiosity. An interest in what humans think and do is an implicit part of the experience.

An engineer vibe-coding a project generates an end product, yes, but what is there to be interested in or to discuss? Chances are said engineer isn't even capable of discussing the project in any depth. Are we going to be left discussing nothing but prompts and Claude workflows, and how we got the black box to do a thing? OK. Who cares? I guess we can all politely clap and move on.

I don't know if the posted project was written by an LLM or a human, but I have to agree with localhoster than AI has sucked a lot of the joy out of a lot of HN.

reply
We need to start putting guardrails on hn to not allow those pointless comments complaining about usage of AI.

If you have nothing else to comment on then can you stop crying please?

reply
I saw the recent "would a slop button be useful in addition to flags?" and my immediate response was "only if I can also flag people whining about slop.

Adds absolutely nothing to the discussion.

reply
We need to start putting guardrails on hn to not allow those pointless comments complaining about usage of peepee poop

Could you stop evacuating your bladder and bowels? Puuuuhfleas

reply
As OP: I _didn’t_ write it. I’m not the author. I just thought it was neat.

But thanks for the accusation.

reply
Exactly. But the damage is done. I find nothing anyone does in tech impresses or interests me anymore. The only things that interest me are things I’d like to also do myself. I imagine it’s probably the same for a lot of other people.

Like OK someone vibecoded an FPS in COBOL or Pokémon emerald in a web browser with web assembly? Ok good for them, piss off karma farmer.

reply
> Like OK someone vibecoded an FPS in COBOL or Pokémon emerald in a web browser with web assembly? Ok good for them, piss off karma farmer.

Sorry, but most of these discussions reek of extreme gatekeeping. First off, neither of these things are impossibly difficult and are easily doable with some dedication by hand. LLMs simply accelerate the process, the human still has to come up with the architecture, _idea_ and plan to do something like this.

reply
It's only cool if it's in written in brainfuck via pencil and paper.

Bonus points if it's ink on paper.

Bonus points if ink and paper are hand crafted by the creator rather than the filthy casuals that rely on paper mills to make their paper for them.

reply
I think what we’re seeing play out in this thread is the devaluation of software engineers. If a growing number of people have the sentiment that an engineer vibecoding an idea has less value than a human doing it then that is all that will matter in the end.
reply
It would be nice to have screenshots. Also it’s just a single commit, did you use AI? Quoting the readme: “FPS.cob is what you get when you decide that game development is too easy nowadays”.
reply
I have many projects with 0 commits, meaning were I to use git, it would be a single commit. It does not mean anything.
reply
It’s odd it’s not linked in the repo but the author made a your video:

https://www.youtube.com/watch?v=qzpZQe7JT-o

reply
Submitted a PR: https://github.com/icitry/FPS.cob/pull/6/changes. You can see a screenshot at the link.
reply
I hope for their sake that it's an agentic AI experiment.
reply
Why the negativity?

If someone wants to have fun in COBOL, let them have fun in COBOL.

If it’s agentic fun, that’s cool. If it’s an interest in the language, that’s cool. It’s not like you have to have an ROI for a fun side project.

reply
It’s also OK to be turned off by AI use in hobby projects and it is also OK to prefer disclosure of the use of AI in projects so I can make that choice.
reply
As a few people have asked for screenshots, I spun it up. Here's a video of the basic gameplay: https://peterc.org/misc/fpscob.mp4 .. it's clunky, but it does play.
reply
You know what, that is some pretty readable code.. COBOL might have been on to something there. I've gotten so used to syntax soup this is refreshing.

https://github.com/icitry/FPS.cob/blob/main/fps.cob

reply
I had to get into an old tcl program for work recently and had the same thought. I wouldn't necessarily pick it today but it was kind of nice in a way that's unfamiliar to me from modern development.
reply
The tcl syntax is fine. And modern tcl is fine.

But tcl 7.x and before was a pure string-based language. Everything was essentially a eval(). People would hit syntax errors on production code.

Fun, painful times.

The flip side: the interpreter is super simple and fun to write.

reply
Tcl is still entirely stringly typed. That's never changed.

There are under-the-hood optimisations to make it less insanely slow but that only affects performance.

Tcl is a cool hack (the interpret is simple to write) but it's insane to actually use it. I wish the EDA industry would realise that.

reply
Looks like it outputs PPM and use ffplay as a display driver:

https://github.com/icitry/FPS.cob/blob/497867bb6827bcfc32d50...

reply
They should compile it to WASM and host it.
reply
Doesn't run for me. Just I/O errors and quits.
reply
Come on, we need screenshots!
reply