this post was submitted on 21 Nov 2023
175 points (90.0% liked)
Programmer Humor
32410 readers
1 users here now
Post funny things about programming here! (Or just rant about your favourite programming language.)
Rules:
- Posts must be relevant to programming, programmers, or computer science.
- No NSFW content.
- Jokes must be in good taste. No hate speech, bigotry, etc.
founded 6 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I've heard this trope before but I'm skeptic. I'm not a C expert but I can't believe memory bugs in that language are so much more benign than in C++.
With C, you need to carefully craft your own gun with just iron ingots and a hammer. You will shoot yourself in the foot, but at least you'll have the knowledge that it was your craftsmanship that led to it.
With C++, there are already prebuilt guns and tons of modifications that you can combine at will. If you shove it in the right way, you can make a flintlock shoot a 50 cal, but don't complain when your whole leg gets obliterated.
Memory bugs are only a tiny share of the foot guns in C++
They are, but it's also more than that. C++ is like if git were a programming language.
Yep. Incredibly powerful, and it will not hesitate to help you blow your own legs off.
The big difference is that git will save your legs in
reflogfor a couple of weeks.Learning about reflog was a game changer. Now I’m never afraid of breaking my branch. If I mess up, I can always
git reset —hardto a previous state.Another game changer was learning that a perfectly valid way of doing squash is to do
git resetto an earlier commit and then dogit commit -a. Saves a lot of rebasing headache.Interesting analogy, please explain