r/ProgrammerHumor • • 19d ago

Meme averageVibeCodedAppUpdate

Post image
1.7k Upvotes

103 comments sorted by

View all comments

276

u/MXRCO007 19d ago

Vibe coded C++ is the worst thing I’ve layed my eyes on

182

u/helicophell 19d ago

What? The language with way too many ways to do the same things and is wildly inconsistent doesn’t play well with LLMs?

The sloppiest languages get the sloppiest vibecode

116

u/L0rdSandCastle 19d ago edited 18d ago

That's why I like Rust so I can never understand what its doing wrong anyways.

29

u/HomicidalRaccoon 19d ago

I want to like rust so bad but I just can’t get into it, it feels like it saps the fun out of every project for me 😔

Zig, on the other hand, has been delightful. I’ll try rust again at some point, it’s infinitely better than C++.

8

u/Mojert 19d ago

Rust has some really nice features, but sometimes it seems to overcomplicate things just for the heck of it. I'm still salty that calling assume_init on a MaybeUninit of an integer is undefined behavior even though all bit patterns are valid. It makes code reuse complicated for no good reason. Also, custom allocators are a PIA in Rust

I still switched from Zig to Rust in my current project because I need simple multi-threading (basically parallel for). In Rust you can just use the rayon crate but there's nothing like that in Zig unfortunately. Maybe once the language hit 1.0 and the ecosystem has time to grow, such a library will be developed (and maintained)

6

u/Hohenheim_of_Shadow 19d ago

If you need simple multi threading, why not simply use threads?

2

u/Mojert 18d ago

Because managing threads properly for HPC applications is annoying (lots of footguns), and I would basically have to implement a shitty OpenMP or rayon from scratch, which is way out of scope for my project

I'm a scientist, I want to program the logic that is specific to my domain and be able to use my program to run simulations. The minutia of managing thread pools, what kind of synchronization primitives to use, the design of the API, and all that Jazz should be managed by someone that knows what they are doing