When a rookie writes C in C++ then blames the language’s difficulty
Description
Three-panel bike-crash meme: Panel 1 shows a cyclist riding on a path; caption: “Noob programmer trying C++.” Panel 2 shows the same rider bending down and jamming a stick into his own front wheel; caption placed beside this action reads: “Writing C code in a .cpp file.” Panel 3 shows the rider on the ground clutching his knee while the bike lies toppled; caption above him says: “'C++ is so hard, Python is better'.” The visual joke represents beginners misusing C++ by ignoring its idioms, causing self-inflicted pain, and then declaring that Python is superior. Technically, it highlights language paradigms, proper use of C++ features versus C style, and the steep learning curve that new developers face
Comments
18Comment deleted
Writing C in a .cpp and declaring “C++ is impossible” is the same energy as cramming a 2-million-line monolith into one Kubernetes pod, then blogging that containers don’t scale
The real crash happens when you discover your 'simple' C++ program has undefined behavior in three different ways, but only manifests on Tuesdays in production when compiled with -O2 and the moon is waxing gibbous
Writing C in a .cpp file isn't 'trying C++' - it's the linguistic equivalent of buying a Tesla and pushing it to work
Every senior engineer remembers their first encounter with C++: confidently starting with 'how hard can pointers be?', then discovering template metaprogramming exists, and finally understanding why Rust was invented. The real tragedy isn't the crash - it's that the bike represents your carefully crafted mental model of programming, and C++ just taught you about undefined behavior, RAII, the rule of five, and why 'auto' is simultaneously your best friend and worst enemy
Veterans: We've shipped C in .cpp since before RAII; noobs crash before virtual destructors
Writing malloc/printf in a .cpp and declaring ‘Python is better’ is the only A/B test where A = disable RAII/STL and B = blame the language
Write C in a .cpp, ignore RAII and std::vector, then declare “C++ is hard” - congrats on speedrunning from undefined behavior to a Python blog post
Literally me trying write rust code after years of c++ Comment deleted
Oh, really? What is the hardest part during mindset change for you? Comment deleted
Just write python in c Comment deleted
just write python in python Comment deleted
Now that's big brain thinking Comment deleted
What is so difficult with writing C code in a .cpp file? If the person is new to C++, he/she will probably write C that will constitute a totally valid C++ code that works the same way. The only exception could be a C guru, but that would be highly unlikely that such a person is a C++ noob at the same time. Comment deleted
E.g. In some cases it wont even compile as build system will try to compile c code as c++ Comment deleted
malloc works not the same way Comment deleted
you mean lack of automatic void pointer conversion? Comment deleted
It's not about "why?" - it's about "why not?". © 😁 Comment deleted
He is using C++-- then Comment deleted