As a Java expert, i have to say C++ is the GOAT. C is the old GOAT. I thought Java is not that special, but as i started using these popular languages like JS and Python recently, i started to appreciate these more verbose languages like C, C++ and Java. For me they are the big 3. If you can learn any of them well, you will pick up pretty much any other language in no time.
@@garciafede Yeah, i never coded in Rust but from what i noticed it looks very decent, it's highly praised in the community. At the end of the day, with the rise of AI and these integrated AI editors like Cursor AI, which i also started using recently, if one can understand the context about what needs to be developed and has prior programming experience, programming language becomes just a tool, a mean to an end. My recommendation to the new programmers would be to learn C or C++ first and learn it well, then their foundation will be strong and they will be able to code using pretty much anything.
I'm gonna get a lot of hate for this, but I feel that a lot of concepts in C#/.NET also translate to other languages in similar ways as the languages listed above; I would add it to my personal list.
C++ brings a lot to the table. I do enjoy using C as it is a lot simpler, but I do love using things like generics and other stuff you mentioned. I usually write in a more procedural fashion than OOP which gives me the simplicity of C with the benefits of C++.
Yeah - templates are cluttered sometimes but in general make life easier, and I do love that C++ lets you choose what features to embrace and what not to embrace -- as you said, you can stick with a procedural style if you wanted
@cc1drt For small projects, things that I want to get up and running quickly, or web apps I'll use Python since I'm more familiar with the web and graphics libraries that are available in that realm. For other projects, I'll use C#
I have no comment on the language itself. I too love and like the expressiveness of the language. But in this modern times, not having a proper build system, dev tooling is a massive let down. Learning basic and writing some programs is fine, but you see hell when exposed to bazel, cmake, makefiles, static linking, dynamic linking, using 3rd party libs (massive pain), and on and on.... In a nutshell, tooling is the worst.
@@nifiz158 pip is terrible IMO. I've had tons of problems with it and if you don't use virtual environments everything may break. A package manager that allows such things and exposes you to such stability problems shouldn't be the gold standard, if it were the world would be doomed.
Op made an excellent point here. Cooperation of third party libraries is very painful and there is no official build system. Also, I often have problems deciding if I should write an method as .h + .cpp or header only. Other then that though, I simply love the amount of control and power C++ gives you, you can simply do anything in any way and this feels so liberating
@@LowLevelSpeedrun op is so stupid. This video is clearly titled "Why I love C++", obviously it is subjective. I hope comments like this, and the dislikes don't deter you from sharing your opinions
You had to put OOP at number one. How am I suppose to manage continue watching now? I hate C++ to my core and I also started with C. I never even thought to leave C for C++ or any other horrible language like Java for example
I don't really agree with many OOP principles, but the concept itself can be useful - at the lowest level, it's just structs with more syntax sugar. Personally, I find it useful sometimes and that's why I put it in my list
@@LowLevelSpeedrun "At the lowest level is just structs with more Syntax" that is not at all what OOP is, it has NOTHING to do with syntax. You should learn the definition of the terms you use before talking about them.
@@marcossidoruk8033 Sorry if I was unclear, I meant objects themselves; I conflate the terms sometimes because I don't follow OOP a lot; the only OOP concept that I regularly use is polymorphism
Your comment is wrong, and your attitude sucks. I know that for people, that have little human contact, it can be hard to be normal. But please try to be less of a complete pain lol
@@marcossidoruk8033 OOP may not be all about Syntax, but definitely i wouldnt agree has NOTHING to do, otherwise we would just do it in C. why you guys have to be so pedantic
As a Java expert, i have to say C++ is the GOAT. C is the old GOAT. I thought Java is not that special, but as i started using these popular languages like JS and Python recently, i started to appreciate these more verbose languages like C, C++ and Java. For me they are the big 3. If you can learn any of them well, you will pick up pretty much any other language in no time.
I think the same way... In my opinion, I would add Rust and Kotlin (even as a substitute for Java)
@@garciafededamn, your tastes are same as mine. I love those 2. C and C++ are great though
@@garciafede Yeah, i never coded in Rust but from what i noticed it looks very decent, it's highly praised in the community. At the end of the day, with the rise of AI and these integrated AI editors like Cursor AI, which i also started using recently, if one can understand the context about what needs to be developed and has prior programming experience, programming language becomes just a tool, a mean to an end. My recommendation to the new programmers would be to learn C or C++ first and learn it well, then their foundation will be strong and they will be able to code using pretty much anything.
I'm gonna get a lot of hate for this, but I feel that a lot of concepts in C#/.NET also translate to other languages in similar ways as the languages listed above; I would add it to my personal list.
Java is the most horrible language I've seen in my life. Gladly we have Go now
C++ brings a lot to the table. I do enjoy using C as it is a lot simpler, but I do love using things like generics and other stuff you mentioned. I usually write in a more procedural fashion than OOP which gives me the simplicity of C with the benefits of C++.
Yeah - templates are cluttered sometimes but in general make life easier, and I do love that C++ lets you choose what features to embrace and what not to embrace -- as you said, you can stick with a procedural style if you wanted
I agree with your points!
I would also add move semantics and constexpr into the mix, they are my favourite fixtures.
Move semantics messes with my head sometimes 💀
constexpr is amazing though
I use c++ for competitve programming, and dont really use it for development. But as far as I have seen, c++ is the best language i have ever used
Yeah, C++ is definitely a relief for performance intensive projects, but otherwise, I don't really use it either
@@LowLevelSpeedrunwhat do you typically use for projects instead?
@cc1drt For small projects, things that I want to get up and running quickly, or web apps I'll use Python since I'm more familiar with the web and graphics libraries that are available in that realm. For other projects, I'll use C#
I thought my headphones were broken lol.
I love C and am currently learning CPP, its got some amazing features even at the beginner level.
Lol - I finally figured out how to fix the audio
c++ is kinda epic
I'll rather deal with Rust trait bound errors, safe object, async traits.
Respectable, to each their own
my left ear enjoyed this :D keep it up
Thanks! Sorry about the audio - I already recorded some of my future videos so beware for the next few... but I'll fix the issue soon!
@@LowLevelSpeedrun no worries lad
I have no comment on the language itself. I too love and like the expressiveness of the language. But in this modern times, not having a proper build system, dev tooling is a massive let down. Learning basic and writing some programs is fine, but you see hell when exposed to bazel, cmake, makefiles, static linking, dynamic linking, using 3rd party libs (massive pain), and on and on.... In a nutshell, tooling is the worst.
Yeah, you're right, this is mainly why I don't use it for projects that don't need it
I love using Python for small tasks for that reason, pip is amazing and should be a golden standard.
@@nifiz158 Yeah - I love the fact that pip can install from git repos and local filesystem too - it makes developing packages super easy
@@nifiz158 pip is terrible IMO. I've had tons of problems with it and if you don't use virtual environments everything may break. A package manager that allows such things and exposes you to such stability problems shouldn't be the gold standard, if it were the world would be doomed.
Op made an excellent point here. Cooperation of third party libraries is very painful and there is no official build system. Also, I often have problems deciding if I should write an method as .h + .cpp or header only. Other then that though, I simply love the amount of control and power C++ gives you, you can simply do anything in any way and this feels so liberating
The audio gave me cancer
ow my left ear
I'm sorry about that!
1. Subjective
2. Subjective
3. Bloat
4. Lies
On point 4: stuff like io streams and itterators are 10x slower than printf and for loops, I know, I tested it.
You're right, some of the points are subjective because this video is obviously stating my opinion, of which I never claimed objectivity.
Benchmarks tend not to be very well-rounded, do you mind sharing your test code?
@@LowLevelSpeedrun op is so stupid. This video is clearly titled "Why I love C++", obviously it is subjective. I hope comments like this, and the dislikes don't deter you from sharing your opinions
@@oh-facts Thanks for the support ❤️
You had to put OOP at number one. How am I suppose to manage continue watching now?
I hate C++ to my core and I also started with C. I never even thought to leave C for C++ or any other horrible language like Java for example
I don't really agree with many OOP principles, but the concept itself can be useful - at the lowest level, it's just structs with more syntax sugar. Personally, I find it useful sometimes and that's why I put it in my list
@@LowLevelSpeedrun "At the lowest level is just structs with more Syntax" that is not at all what OOP is, it has NOTHING to do with syntax. You should learn the definition of the terms you use before talking about them.
@@marcossidoruk8033 Sorry if I was unclear, I meant objects themselves; I conflate the terms sometimes because I don't follow OOP a lot; the only OOP concept that I regularly use is polymorphism
Your comment is wrong, and your attitude sucks. I know that for people, that have little human contact, it can be hard to be normal. But please try to be less of a complete pain lol
@@marcossidoruk8033 OOP may not be all about Syntax, but definitely i wouldnt agree has NOTHING to do, otherwise we would just do it in C. why you guys have to be so pedantic