I started writing C++ to do some JSON at work and it is absolutely horrible piece of shit language (even with nlohmann's and simdjson). I cannot believe people live like this.

between figuring out CMake scripts, std::optional being basically useless. I never feel done writing code because I don't feel like I have:

1. Checked all the exceptions

2. Checked all the places where my std::optional instance is null (the checks doesn't propagate their information)

3. Checked that I am not doing any implicit conversion.

4. Really understand what happens at overflow?

5. Really understand if my code is even UB free?

6. Debugging is a mess, I can't step through code because the smartass compiler removes an entire segment of code even in debug mode.

7. I wish this garbage is written in C instead. At least its honest that its primitive and sinful, unlike this LARPING high level language.

Only 2 things need to be true for this language to be permanently horrible: Hyrum's Law and backward compability. If it is possible to write bad code, then there will be bad code. Simple as. Doesn't matter how many guidelines you write or how many times you need to "teach" programmers or how many times you said people just need to be "better mkayyy?"

i was thinking of learning cpp for webgpu, this is discouraging

Consider learning Rust instead, and use wgpu [1].

[1] https://github.com/gfx-rs/wgpu/