Should you Learn C++ in 2018?



the single most successful YouTube video ever put out was on should you learn C++ in 2016 I was funny to me because I just threw it out there because people are asking and the first line I think in that video I said I never written commercial code in C++ and then I go on and then a lot of people attacked me said how can you comment on C++ if you've never written code commercially I did hello world that's pretty much it well I can comment on it because I'm a professional software developer for over 20 years and I've written software nine different languages commercial software and so I have a pretty good idea what the market is like and generally speaking so if I've driven you know ten nine different types of race cars but I haven't driven the tenth I can still comment on the tenth type of race cars ever driven them as arathi you know I know enough about cars at this point know about enough about racing and I'm sure I would have heard a lot about what that Maserati cars are like relativity the other nine types of cars I've driven I can comment on that same thing with C++ now I've never written C++ code before in a commercial sense but I know what C++ is all about and I understand the market because I understand software development and I understand the market now is C++ still a viable option 2018 well we're at two thousand two months away from 2018 for sure C++ is going to be viable I would imagine for at least another ten years although I'm hearing from people friends of mine who are C++ coders are saying it's getting pretty messy because they're constantly trying to retrofit C C++ to make it be able to follow the paradigm du jour the current hot way of were writing code and they're saying he's telling me this for his opinion but it's a bit of a mess now C++ will have his place for quite a while I would imagine longer because it's highly highly performant so you're going to see being used to build gaming engine and reading low-level type of speed centric apps maybe AI type of engine so use the rate the kernel and C++ and then to do everything else in Python or and go or something so yeah C++ is still viable I think the most important thing you have to consider when you're looking at any programming language whether it be C++ Java JavaScript Python PHP ruby swift you have to look at the type of work ti not ity PE the type of work that you want to do that's such an important thing because C+ C++ programming is a totally different beast than doing JavaScript programming or doing Python programming it's a totally different thing it takes a different mindset really it's like a sprinter versus a long-distance runner right the body of the sprinter is totally different the training of the sprinters totally different versus the marathon runner they're both great athletes they're both to be respected but it's a different game so what you should do if you're considering C++ look at the type of work that it is and maybe try the hello world and understand what you got to do because with C++ it's a low-level language meaning it's reading closer to CPU meaning you got to handle a lot more details you got a handle memory management you got a handle it's just a lot more verbose it takes a lot more code and you can sleep a lot and C++ to get certain things done versus a same the same task being done in PHP or Java or Python or JavaScript you know you get the idea so again what are my main what are my main thesis if you will one of the main philosophies but I hold after so many you know two decades of being a developer that the language is all very specific the quality of the language is specific on the task what you have to do if you want to write a gaming engine Python would be the worst language to do it in or one of the worst C++ would be the way to go but if you want to write web apps real quickly and get into the good place and do small business development you don't want to go C++ you want to go PHP it kills there it kills etc etc etc you get the idea so you have to consider the language based on the type of work what you want to do and the type of mind that you have for instance AI programming which requires lots of math and stuff not for me I'm terrible at math so for guys who are terrible at math you want to do web app development you may want to do high level game development it's you know that kind of stuff business apps where the math is really not that important if it you know add subtract multiply divide you know that's pretty much the limit of of the math that you need for that kind of work but when you started getting into AI machine learning it's a whole different game it's uber nerd it's not something I'm interested in that's something I I would want to do maybe if I put my mind to it I could but so if you want to get into AI and chances are you're gonna do AI gonna be writing Python I think maybe go you got to be well aware but you got to be doing a lot of math so beam the half centric again I'm not one of these guys so PHP sucks or Java scripts the best or Java is the best or Python no it depends what you want to do the only thing I rip on is Ruby Ruby on Rails and actually there's a lot of good things that that framework Ruby on Rails is a web framework is actually really good and Ruby in terms of the language itself really good or things I really like about it a couple things you don't like about it but it doesn't run very fast at runtime and it's very nice it's we could most not very initially it's becoming more and more of a nitch language and I'd recommend not doing Ruby Ruby on Rails because it's it's falling into niche meaning it's it's you can have less and less opportunity there that being said you know there's still gonna be a lot of legacy Ruby and rails apps out there and so you probably get paid big money to do it because they're gonna be fewer and fewer Ruby programmers but you know that's sort of you see the end of that road down the line maybe 10 years or something whereas you look at Java c-sharp PHP they got such huge install bases in their own right Python that it's not going anywhere so yeah anyway I'll stop going off on one of my tangents again I even forget the point of this video so I'm going to end it right here Joe

41 thoughts on “Should you Learn C++ in 2018?”

  1. Hey I'm going to be developing a website based on a dating and curious if java would best suit my needs any thoughts? I do know c++ but java would be new for me

  2. C++ was the first language I learned, and it was way more difficult than if I had learned python. I’m very grateful I learned C++ because I learned so much about proper syntax/coding and the most important thing I learned was THE LOGIC OF CODING. That was the biggest take away for me, even if it was so much harder than learning python first….I agree with this video!

  3. Take into account that what is called "Modern C++", aka c++11, 14, 17 and so on… standards adopt more and more libraries and models into language standard. It just closes the gap between c++ to more "high-level" languages. How java, python and c# are going to adopt c++ things in return? They just don't.

  4. The purpose of programming languages is not to write programs, but to adapt your program to the platform that you are in. On iOS this platform is UNIX and the C programming language (and the LLVM framework and all the high-level languages it supports), on Windows you have C/C++ with C# (and others) as the high-level language on Android its GNU Linux and C (plus the high level APIs in Java)… on the web its GNU Linux and C (plus any high-level frameworks built on top, like javascript, perl, etc), for machine learning its Tensorflow and CUDA, which are both C++ (with high-level access via very mature python bindings). I think its actually interesting how everything is built on the same foundation: C or C++ with various high-level sugarcoated languages on top.

  5. One of the best programming intro to coding videos I've seen so far! Thanks Stefan, peace and blessings to you.

  6. i really enjoy c++, its the first language i learnt when i was 16. It to this day (i'm 19 now) helps me in learning everything, basically i can learn any new language i want now because c++ taught me all the concepts. All i had to do to learn javascript was learn the syntax (which isn't as different as i thought it would be from c++) and some other things that javascript offers, same with any other language i learnt. I definitely recommend c++ in 2019

  7. I'm a 17 y/o swedish guy, and I want to learn programming. I do find it fun, but the real reason I want to learn programming is so that I can work some part time job (at any company) while I continue my studies. As of right now I do not know which language is most frequently used within start up programming jobs. I hear that C++ is a type of language where if you get a good concept of it you will have a much easier time understanding the other languages, but I do not know if that's true or not.

    Basically I would like some advice on if I should start with C++, so that I can learn the other languages with ease (only if whatever job I'm looking into requiers it). I don't have a particular type of ''work'' that I want to do, I just want to have a good opportunity of getting a job and was wondering which programming language gives me the best chances of getting a job.

  8. It really depends on the task. If you do embedded stuff especially with sensors, signals, actuators C++ nails it all way all day. First of all C++ can use larger assembly tables, you evan can use assembly directly, and it has it all when it comes to memory management and real time condition. On Top of that you have the sweet tools from object oriented languages which makes your work reusable if done right.

  9. hi ,
    i hope to answer my question ………………………..
    my task is to make a program enable me to make drawing by using the mouse as AutoCAD
    and enable me to treat a huge nuber of strings and calculatings
    which programming language is the best to do this task ?

  10. I learned to write a little not only in c++ but also in MASM, an assembly language IDE. Although most Java/C#/Python/JS/PHP programmers can get by without, I would still recommend that software developers write at least 1 small program in c++/c/delphi and 1 in an assembler of choice. Blasm/Fasm/Masm/Sasm/Nasm/Tasm or HAL. Your general understanding of software engineering and what happens behind the screens, will improve greatly. A lot of concepts will be a lot clearer

  11. I develop embedded applications, guess what I program? C++. I developed critical real-time systems, guess what I programming? C++ and C. I wrote drivers and antivirus cores, guess what language? C++ and C. I already wrote code in C# and Java, and guess I was not doing? Medical devices, critical real-time system or antivirus cores. Are we moving to a point where there will be no critical real-time applications? I doubt. I would say that there will be more, much, much more.

  12. C/C++ was my first language and was core/fundamentals at my school …DIDN'T TEACH ME SH*T …Now I am stuck on the legacy team working on AIX systems and all my coworkers get to move on to analytics, machine learning and all the cool hip stuff…..Do yourself a favor kids….DON'T learn C++ …And if you already know it don't tell anyone because you will be the only one…. and you will be stuck…for..ev..er…..because its never going away.

  13. Go Learn C++ | Do not Listen to anyone regarding C++ | Make C++ your Religion and pray it | This will help you grow from bottom of hell to the heights full of twinkling stars |

  14. @0:53 Maserati is not a race car. It's a car maker. Race cars are not identified by their makers (not to mention more often than not the car maker has little to do with the actual race car, especially in professional series where the running team should take most if not all credits). Race cars are often identified by its model designation: e.g. F2003-GA, F2004, DBR9

  15. I have learnt many things in C++. But the problem is that it is difficult to download header files. When I download one header file I have to download sub-header also and that keep going. Please help!

  16. You should know C++ because of its knowledge gain. You will be an Expert programmer if you know C++ and a C++ programmer is ready to migrate into many language.

  17. What language would be best for making a revolutionary file compression program.
    Involving godly insane amount of nested loops.. this is a real number.. summing up the total nested loops… to process ONE BYTE will require a total loop count of 65,536 …. I can make it less but that’s the max. When I’m done with this I’ll be fitting blue ray movie on a floppy. I started learning C++ for this, am I on the correct path?

  18. I'm a computer science graduate however I never worked professionally in my field as I work in Mass media for 20 years, I still know my way around procedural type programing, and know both C,C++ and a little x86 assembly, as a hobby I'm doing a small application that accesses DVD rom/HDD directory to read a specific file and if found simply launch another program, what language is better suited for this task in your professional opinion?

  19. Nowadays if you happen to learn good c++, it actually solves most problems you can have. Runs everywhere, emerging technologies AI, RNN, Opencv are easily adoptable to a competent c++ programmer. So, these silly videos trying to manufacture a criteria based on javascript loving people is not the best way to go.

    If you happen to learn c++ as fist programming language it is the best thing that can happen to you as a programmer. It prepares you in structure of a program and it takes time to master, but people don't have time nowadays they want to write everything in javascript.

    I see this as the language that prevails if written, and even fun to optimize.

    It comes with the price of not being easily digestible, but so are most beat things in life.

    Regards, a person who loves c++ and works with c#.

Leave a Reply

Your email address will not be published. Required fields are marked *