Found this gem. A single well made video in a channel. The Channel owner probably made this channel just to house one video I guess.
I havent watched it all the way through but it seems to have alot of substance. By the looks of it the guy probably has spent atleast a year developing professionally in C++ and is pretty pissed to make that video as a ventfest
See if you cant agree with something he said
I’m all for humourous roasts of things, but does anyone really find this funny? Was the author possibly being serious? I don’t know. What I do know is that I stopped watching after the first four examples because they were all deliberately incorrect or misleading, but also didn’t seem funny to me.
- Crazy initialization
That sure is a lot of ways to initialize a variable! Even though some of these variables are quite different and would be initialized differently from each other in many other languages, even only counting the initializations that are functionally equivalent, there are a bunch of abuses of syntax that I’ve never seen used in the wild.
At this point I had hope that this was meant to be amusing.
- Printing to the console
C++ has had a version of C’s printf function from the very beginning. That weird stream syntax has some hardcore fans but many people ignore it. I did my CS degree close to 30 years ago, and the only time I used stream syntax was for one lab class exercise in which we had to show that we understood how to use stream syntax.
They still could be going for a comedy roast, I guess.
- Getting a random number
Much like the printf statement for number 2 above, C++ had its own version of C’s rand function from the start. I’ve never even heard of the stuff that’s being shown in this part of the video.
OK that was virtually the same fake point as the previous one, and still no punchlines in sight.
- Having to type “static_cast” every time you recast a variable
Nope, you don’t. You’re free to ask the compiler to automagically recast your variables to another type without giving any further detail just like you can in C. In fact, they’re often called “C-style casts”. There are even implicit casts, where you literally don’t add anything, and just cross your fingers that the compiler does what you think it should do. It’s like a little bit of the thrill of dynamic typing brought into C++! By using the static_cast keyword, you can tell the compiler that you understand that there’s a potential issue with this recast, but that you expect that the standard way of handling it will be fine. There are other keywords for more unusual situations; it’s not just a random bit of busywork added for no reason.
- Crazy initialization That sure is a lot of ways to initialize a variable! Even though some of these variables are quite different and would be initialized differently from each other in many other languages, even only counting the initializations that are functionally equivalent, there are a bunch of abuses of syntax that I’ve never seen used in the wild.
Initialization in C++ is so simple that somebody wrote a nearly 300-page book on the subject: https://www.cppstories.com/2023/init-story-print/
I plan to read it after finishing this 260 page book on move schematics in C++: https://www.cppmove.com/
if you like C++, you dont know it well enough
Or you are a masochist and just used to the abuse.
The video isn’t humorous, it’s dead serious. C++ is terrible language.
I think the video is intended to criticize what is modern C++. From what I’ve heard, at least a large crowd of the modern C++ movement considers the C APIs outdated and is of the opinion you’re meant to use the C++ ones. Seen from that angle, many of the examples in the video make more sense.
- Crazy initialization
It’s 2h of AI pics with text read by an AI voice, which you didn’t watch all the way through, but still felt you needed to share anyway.
Thanks for warning before I clicked the video. Saved me the click.
It’s wrong. The voice is not AI.
Clicked it, and you are right. It’s not AI at all, just not a professional microphone.
The voice is not AI, the video is quite good imo minus the slop pics.
I personally treat it as a feature movie length podcast without video. I don’t like that the video uses AI slop pics, but since I’m not looking at them I still enjoy it greatly.
I was thinking about that as well, why the fuck does he sound like Patrick star.
yet none of that makes the criticism invalid
“AI bad” people around here are as insufferable as the sloppers
If you can’t be bothered to put any effort into creating content, then why should people waste their time reading / watching it?
I watch things because they’re good, not because they were hard to make. It’s a good video, I couldn’t care less they used AI images because they’re there to support the content, not be the content.
This isn’t about “AI bad”.
This is about how incredibly rude it is to expect people to spend 2h on a video OP didn’t even care about enough to watch it themselves, and the uploader didn’t even care about enough to make it themselves.The video appears to be manually voiced and manually scripted. I agree though that the AI slop images are annoying.
I’m not even an AI-bad person and I can’t stand AI videos. I’d rather watch a reaction video with a real person than this original.
it’s likely a manually scripted video using a good AI voiceover and some AI images to support it.
This AI voice is better than a lot of human voiceover and the images are not the center of the video, so I couldn’t care less.
Is there any source for the voice being AI? I’m pretty sure it’s just a guy.
javascript exists; his point is invalid
There are two types of languages:
- Ones people complain about
- Ones that don’t get used
JavaScript, especially when using TypeScript, is quite frankly one of the most pleasant development experiences. Yes, there are still footguns here and there due to poor early choices and maintaining decades of backwards compatibility (===, etc), but literally all of them are caught by basic linting.
Go try using Salesforce’s bastardized version of old Java (Apex) if you want to experience a truly unpleasant language.
Go try using Salesforce’s bastardized version of old Java (Apex) if you want to experience a truly unpleasant language.
I have. I like it more than JS as a language.
I just fucking hate the fact that it’s basically useless outside of salesforce; no one gives a fuck if you can code in apex except for people that need you to program some useless shit in salesforce
Apex doesn’t have namespaces. It doesn’t even let your organize your classes into subfolders. It is an absolute F-Tier language.
Try TypeScript, try React, try Go / Swift / Kotlin, spend more time with C#.
Apex doesn’t have namespaces.
Why do you need namespaces? Apex has a singular purpose on a single platform.
They managed to make a worse version of ColdFusion, truly impressive.
C++ and JS are objectively shit languages from the pool of used languages.
What you quoted is one of the many COPEs Bjarne used in his lifetime. Because unlike JS people. who admit that JS is shit that was originally hastily put together, Bjarne needs the C++ bureaucracy, and the facade of superiority (even if it only lives in his own mind), to keep going because he has nothing else to show for.
Visual Basic Requires A Registered OCX.
Which one? Hahahahaha.
Which one? Hahahahaha.
Nice one.
I program JavaScript for a living. I’ve noticed how I’ve become blind to my language’s idiosyncracies, but I still believe it isn’t super bad. Especially with all the new shiny features that were piled on ever since 2018-ish (I think).
It is definitely nowhere near as bad as C++. And I’m only 6 minutes into the video.
I hate JS and I feel miserable writing it… but 5 minutes in and I’m convinced CPP is worse than JS. Even having learned some of it before I did JavaScript.
Would be true except it is not a programming language, it is a scripting language.
it’s turing complete and has syntax. you’re splitting hairs.
I am not. A programming language can be directly compiled into assembly to program the instructions. A scripting language isn’t compiled and can only provide instructions on when and what to do to a program that has already been told how by an actual programming language.
This distinction is both illogical and ahistorical. Python is a scripting language that has a compiler. Indeed, any scripting language can be translated into a compilable language and then compiled, a process called transpiling.
There’s also Java, which definitely compiles down to bytecode, but for a machine which physically doesn’t exist. The Java Virtual Machine is an emulator that runs on supported hardware, in order to execute Java programs. Since the Java compiler does not produce, say, x86 assembly, your definition would assert that Java is not a compiled language, despite obviously having a compiler.
As an exercise for everyone else, also have a look at Lisp, a very-clear programing language with a compiler, but some specially-built machines were constructed that optimized for Lisp programs, with hardware support to do checks that would take longer on other architectures.
You are talking about the compiler, not the language itself. Humans program in programming languages such as JavaScript and C to write computer programs. The code is human readable text in both cases. Both are code to describe how a program operates. Therefore C and JavaScript are programming languages.
With your logic, is Python not a programming language? The common compiler is an interpreter. But there are also real compilers that produce machine code. What about C# and Dotnet langauges and Java? They produce Bytecode that needs to be interpreted by an interpreter and executed at runtime, as these are not machine code yet. Are those not programming languages?
I’ve seen many people use a very different definition of “programming language”.
Yeah you clearly don’t know how modern languages work. Most “scripting languages” are compiled nowadays, in a preprocess step.
Why is a scripting language not a programming language? I am not sure if you are joking (would be fitting to be honest, but ask nonetheless in case it is serious). JavaScript is a programming language, and scripting is a sub category or type of it. The language itself does not define if its a scripting language, this is defined by the compiler.
What about compilers that compile to C first and then machine code / self running executable? I think this is how some Python compilers work (no I am not talking about bundles). What about C# and Dotnet? Java Bytcode?
Aha, so it is like HTML
HTML is not a scripting language, it is a markup language to describe text and give it meaning. You can’t write programs in HTML itself.
The guy called js not a programming language. Could my comment have possibly been a hommage to an old joke and old discussions on the internet?
HTML is a markup language. It only defines layout.
HTML with CSS is Turing complete.
The fuck?
You don’t need a specific video to understand this simple truth.
Im sure his point could be made in less than 2 hours
And it was, the last half hour is not about c++ but his bad editor.
I’m sure he spent less than 2 hours making the video.
It’s all AI.No, the voice is real, the script is real, it goes immensely in depth, and I really enjoyed it despite the images.
What was the point? Something something too many features (which I agree with)?
Lots of points that just aren’t true or strawmans.
No idea, I didn’t let the LLM steal more than a minute of my time.
I knew what this was before I clicked the post… since this is a feature movie I quite like and it’s a guilty pleasure of mine. 😆 (No offense intended to anybody who likes C++. To each their own.)
We are a weir bunch, programmers, aren’t we? We have entire movies about inanimate objects that we get extremely worked up about.
Isn’t JavaScript is the worst programming language to ever exist.
I learned C++ as my first language, but haven’t touched it since really. Since it was my first language, I always liked it. But, watching this video and reflecting on my understanding of other languages, I have to agree. The language is a bloated and inconsistent mess. The fact that this video is over 2 hours says a lot.
The one thing that was good about learning c++ first was that every other language was extremely easy to pick up. And, to be clear, I learned c++ out of a textbook, which means I learned it pretty thoroughly. I did not need a textbook to learn other languages. They tend to be much more intuitive and simple if you know c++. The exception is JavaScript which is just buggy by nature and really requires knowing the bugs so they don’t bite you.












