Programming Languages I used at Google (C++ rant)

Поділитися
Вставка
  • Опубліковано 10 лип 2024
  • If you were building a CRUD backend microservice would you actually use C++?
    🚀 neetcode.io/ - A better way to prepare for Coding Interviews
    🧑‍💼 LinkedIn: / navdeep-singh-3aaa14161
    🐦 Twitter: / neetcode1
    ⭐ BLIND-75 PLAYLIST: • Two Sum - Leetcode 1 -...
    #neetcode #leetcode #python

КОМЕНТАРІ • 261

  • @alkjdfowierj
    @alkjdfowierj 5 місяців тому +742

    Bro lives in a Swedish prison cell

    • @_Lumiere_
      @_Lumiere_ 5 місяців тому +61

      Lol funnily enough, it's similar to my Swedish student apartment. Except the prison cells might be a bit larger and better.

    • @nidavelliir
      @nidavelliir 5 місяців тому +1

      Lol

    • @wednesdrei
      @wednesdrei 5 місяців тому +8

      I'd actually live in a Swedish prison cell if it was that uncluttered

    • @justcurious1940
      @justcurious1940 5 місяців тому

      OK😂😂😂

    • @Blezerker
      @Blezerker 5 місяців тому +8

      hes just minmaxing bro

  • @sprytnychomik
    @sprytnychomik 5 місяців тому +207

    C does have a hashmap. It's called an array and it's using integers as keys.

    • @re1konn
      @re1konn 5 місяців тому +34

      🤣

    • @VivekYadav-ds8oz
      @VivekYadav-ds8oz 5 місяців тому +9

      Yeah in-fact it's a template specialized hashmap which is even cooler.

    • @aldrinseanpereira140
      @aldrinseanpereira140 5 місяців тому +3

      too bad the keys cant be modified hehe

    • @anon_y_mousse
      @anon_y_mousse 5 місяців тому +4

      That's certainly *a* way of looking at it. I'll stick to my implementation which allows me to use strings as keys.

    • @Dom-zy1qy
      @Dom-zy1qy 5 місяців тому +10

      It's actually a pretty good exercise to implement a basic hashmap in C. Would recommend

  • @hitarthpatel
    @hitarthpatel 5 місяців тому +355

    "C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do it blows your whole leg off" :-Bjarne Stroustrup

    • @devchaudhary78
      @devchaudhary78 5 місяців тому

      Do I know you?

    • @pranjalkumar4708
      @pranjalkumar4708 5 місяців тому +12

      Dissed his own product soo hard LMAO

    • @isodoubIet
      @isodoubIet 5 місяців тому +3

      The funny thing is it's not even true. UB is UB and it's no more serious in C++ than in C.

    • @vercolit
      @vercolit 5 місяців тому +15

      ​@@isodoubIethe means that C++ gives you tools to reduce footgubs by a pretty large amount. However, when you fuck them up, they make really hard problems to debug. It's not really about ub, any language that needs performance requires ub (rust included...).
      For example, instead of manually handling memory, you can use contructor/destructor pairs to allocate and deallocate memory for an object, making it less likely that you get memory leaks. However, if your class is movable and you fuck up your move constructor, your error will be harder to spot that if you used C.

    • @isodoubIet
      @isodoubIet 5 місяців тому +5

      @@vercolit Yes, I know that, but I still disagree -- the complete lack of structure in a C program will usually make it harder to debug than a C++ program that does the same thing. You'll still need to "move" things in C; the same semantics will be there if you want the program to behave comparably. The main difference is that C++ makes it _possible_ to make programs that would be too complex to write in C. Finding errors in such programs will be hard, but it's not the language's fault.

  • @onlinealias622
    @onlinealias622 5 місяців тому +83

    I work as a C++ developer at a smaller company, and I like doing my leetcode problems in Python because the simple syntax is a breath of fresh air lol

    • @penislicker9093
      @penislicker9093 5 місяців тому +1

      lol, im a python dev and i do leetcode in c++ because its nice to see run times under 400ms

    • @onlinealias622
      @onlinealias622 5 місяців тому +1

      @@penislicker9093 the grass is always greener i guess

    • @MrAbrazildo
      @MrAbrazildo 5 місяців тому +1

      Aaah, shut up! 😁

  • @AseshShrestha
    @AseshShrestha 5 місяців тому +69

    I work in Chromium code base and yes C++ still gives me headache even after more than 15 years of experience.

  • @arsnakehert
    @arsnakehert 5 місяців тому +110

    I've been into C++ for a long while, so I follow game developers and C++ experts and compiler implementors and C++ standards committee people on Twitter
    A running joke among them is that if you feel like you know C++, you don't know enough C++, and after many years of experience you know enough about C++ to understand you don't know enough C++
    I also joked about not even standards committee people not knowing all of the language, and an actual standards committee person replied to me saying they actually don't know all of the language

    • @birdbeakbeardneck3617
      @birdbeakbeardneck3617 5 місяців тому +3

      i saw couple things about c++ on ytb (a video about c++ new stdlib releases, templates, a video showing some standards, compiler reflection, smart pointers, )and more stuff (btw i barely coded in c++) and thought to myself(barely know c++, coded a bit in py, java and go) hmm ill give it a year and learn most of tthe language(it sounds complete whatever that means) well now i know better to not do that)

    • @williamcullum1193
      @williamcullum1193 5 місяців тому +2

      “the more I learn the more I realise how much I don’t know” Einstein

    • @tiagocerqueira9459
      @tiagocerqueira9459 5 місяців тому +4

      That was real for me. First eager to learn the power of C++, second feeling confident and third realizing the language is a minefield and go back to Rust where the compiler holds your hand like a child you are.

    • @Anriuko
      @Anriuko 5 місяців тому +8

      @@tiagocerqueira9459 Admirable honesty from a Rust enthusiast (Rust users are called enthusiasts). Me, I'm a badass so I only program in C. And by badass I mean that my code is bad and smells like ass. But what are you going to do when you were born an uncompromising bonehead.

    • @tiagocerqueira9459
      @tiagocerqueira9459 5 місяців тому +1

      @@Anriuko i swear every yt interaction today included some schizo behaviour. Still laughed. (My meds didn't make these comments go away 😩)

  • @NeetCodeIO
    @NeetCodeIO  5 місяців тому +97

    Just to clarify, there are of course more reasons why Google can't keep up with other companies.
    Btw I know I've made some negative videos about Google, but that's just because the negative stuff is more interesting to talk about. I would say my experience at Google was 90% positive, but I think there are enough videos out there talking about the WLB, free food, etc.

    • @satyamjha68
      @satyamjha68 5 місяців тому +1

      I think there is a video on youtube about C++ style guidelines at google , so I can understand why you feel that way! As I am a java guy but I am currently learning oops in C++ . I do find the differences . Like there are some concepts like operator overloading , default parameters which are not in Java (and Java has a reason for not having them). But I still love java ,cause it was my 1st coding language, so I am kind of biased towards it.

    • @VivekYadav-ds8oz
      @VivekYadav-ds8oz 5 місяців тому +1

      ​@@satyamjha68oh boy operators overloading and such is barely the tip of the Titanic-killing iceberg

  • @andrewbennett5733
    @andrewbennett5733 5 місяців тому +6

    I'm sorry this comment isn't directly related to the video but man I love these newer videos of you on camera. Your original NeetCode videos helped me a TON when I was learning DS&A, but hearing you talk about larger topics like this and putting a face to the voice is just too cool. Many of your talks like this have sparked curiosity around a topic and then I have to go on a deep dive to learn something new. Thank you for sharing so much!

  • @randomyoutubeuser8509
    @randomyoutubeuser8509 5 місяців тому +27

    Personally I find a large C++ codebase more readable than a large python codebase, my exp is from working in aerospace where C++ and Python are the primary languages for everything

    • @lashlarue7924
      @lashlarue7924 5 місяців тому +5

      Explanation highly desired.

    • @kippers12isOG
      @kippers12isOG 5 місяців тому +9

      Python in any large project becomes messy. Particularly without types

    • @amitozazad1584
      @amitozazad1584 4 місяці тому +3

      Legend

    • @melodyogonna
      @melodyogonna 4 місяці тому

      Lmao, very funny.

  • @user-wr4yl7tx3w
    @user-wr4yl7tx3w 5 місяців тому +4

    these insights are so informative

  • @guotesuoze
    @guotesuoze 5 місяців тому +50

    Corporate C++ may induce fear, but using C++ in private is may all time favorite when it comes to programming languages.

    • @devinjohnson5759
      @devinjohnson5759 5 місяців тому +8

      Corporate C++ is really scary for new grads

    • @carlpittenger
      @carlpittenger 5 місяців тому +16

      absolutely. C++ is epic, but Google's style guide is probably the worst i've ever seen and kills joy.

    • @niki4smirn
      @niki4smirn 5 місяців тому +1

      ​@@carlpittenger wow, for me it's the only ok option. though of course it's a matter of habit. may I ask what exactly you don't like so much about google style?

    • @carlpittenger
      @carlpittenger 5 місяців тому +9

      @@niki4smirn from what i can remember, the main thing for me is that i prefer almost always auto (the language itself is moving in this direction, as well as C++ successor languages), but Google's C++ style guide just generally seems outdated and like it's attempting to keep their C++ as basically C with classes as if doing so keeps their codebases safer and less complex.

    • @niki4smirn
      @niki4smirn 5 місяців тому +2

      ​@@carlpittenger Good point. Tbh, I violate this almost daily. This is a particularly odd rule, given that I think all editors now support highlighting deducible type...
      Still, most of the other rules make sense to me

  • @atomicCache_
    @atomicCache_ 5 місяців тому +2

    I'm encountering a similar issue at my workplace. C++ code can indeed become quite intricate, especially with meta-programming involved. It can be quite challenging to navigate through its complexities 😅😅

  • @KyleTanKH
    @KyleTanKH 5 місяців тому

    I can't tell you how relevant this rant is right now. I was pulling my hair out deciphering a backend service (recently!) written in C++, just to figure out that it wasn't doing anything more than simple CRUD functions 😢

  • @nirajandata
    @nirajandata 5 місяців тому +4

    as someone who regulary isocpp content, i find c++ code more readable and flexible than any languages I tried

  • @henu3detb
    @henu3detb 5 місяців тому +131

    javascript-on-a-backend-nonsense -- 👌

    • @user-qy1dy1ms9m
      @user-qy1dy1ms9m 5 місяців тому +3

      I do in js...🐐

    • @henu3detb
      @henu3detb 5 місяців тому

      @@user-qy1dy1ms9m please stop!

    • @fullstack_journey
      @fullstack_journey 5 місяців тому

      the sooner nodejs gets deprecated into oblivion and TypeScript become's a first class citzen, the better it's gonna get.

    • @jitx2797
      @jitx2797 5 місяців тому +1

      Maybe for a large company as google it makes sense and they already have services written in different lang.
      But for new startup js on backend completely makes sense

    • @bionic_batman
      @bionic_batman 5 місяців тому +5

      people finally start seeing the truth
      server-side JS was a mistake

  • @kernelpanic5672
    @kernelpanic5672 5 місяців тому +5

    c++ is super portable
    if they like a feature they can reuse it everywhere

  • @devkirandass7930
    @devkirandass7930 5 місяців тому +24

    Still I like C++ more than Java lol

  • @EbonySeraphim
    @EbonySeraphim 5 місяців тому +6

    If you intend on having a strict style guide for any programming language, enforced by code review, then you should have a linter that runs locally and automatically when you build and it should be double checked by an auto-build attached to the review itself. That way devs don't waste time locally, unless they're pushing stuff just to be casually and quickly seen.

    • @kikeekik
      @kikeekik 13 днів тому

      literally clang tidy

  • @liquidmobius
    @liquidmobius 5 місяців тому +35

    You're right, C++ is an extremely performant language, but development time and maintenance often outweigh any major benefit in many cases.

    • @MrAbrazildo
      @MrAbrazildo 5 місяців тому

      It just requires more discipline.

  • @Pertinax93
    @Pertinax93 5 місяців тому +2

    Sometimes I had problems reading the GCC errors, I tried to use Clang. Much much better to read and understand what's going on.

  • @RM-xr8lq
    @RM-xr8lq 5 місяців тому

    lot of newer programmers are surprised to hear some things are ran rarely, and don't understand how anything but speed could be a factor. different languages have different strengths and uses

  • @kikeekik
    @kikeekik 13 днів тому

    the thing is that C++ is also suitable for those high level cases. You can use C++ in a safe way where you don’t have to manage all those things if you are not concerned about performance. Just use RAII and smart pointers for reference and you’re good to go

  • @carguy-xv2cl
    @carguy-xv2cl 5 місяців тому

    Neetcode, can you do a video on backend vs full stack vs frontend? Seems like full stack is the new norm.

  • @adriatic123
    @adriatic123 4 місяці тому +3

    Some lang rules from the experience
    1 learn lang at least 25 years old. 90% of coding today is done with the 30+ y.o. languages.
    2 if you want to create a new lang you will probably fail, like so many newer langs (python being the exception for now). The world doesn't need a better lang but a better programmer
    3 all (old) langs have pitfalls, but generally, all have a purpose
    Personally.. i do JS, love C, admire C++. The life is too short for C++

  • @nathanwailes
    @nathanwailes 5 місяців тому

    I love these videos.

  • @sergten
    @sergten 5 місяців тому +1

    I can see why Google doesn't want every microservice in the same solution be written in a different language. Sure, protobufs and all, but still - maintenance burden of 10 languages vs 1 or 2 is going to take a toll. Having said that, unless it's a mature product and has a large legacy codebase, there is no reason to choose C++ over, well, (almost) anything.

  • @HelloSpyMyLie
    @HelloSpyMyLie 5 місяців тому +1

    Thanks for making this video. This is really inspiring for us who aspire to C++ and Big Tech

  • @jony7779
    @jony7779 4 місяці тому

    "The culture at google is write things in C++ even though they don't need to be." Can confirm having worked there fore 4 years.

  • @ngneerin
    @ngneerin 5 місяців тому

    A google mention a day, keeps irrelevance away

  • @yashkhd1100
    @yashkhd1100 5 місяців тому +2

    Joke is there are handful number of people who actually knows C++.
    On the serious note the reason why C++ is so complicated are array of features it provides and when you mix them ur creativity is the only limit.
    It has multiple class Inheritance(which most modern lang stay away from it) and mind twisting template constructs which produces countless combinations.

  • @HuE_99
    @HuE_99 5 місяців тому

    learning intro to coding in java and will have to take dsa in C++ is it cooked?

  • @enoch8835
    @enoch8835 5 місяців тому +4

    I was interning at google, C++ code was just unreadable for me

  • @anon_y_mousse
    @anon_y_mousse 5 місяців тому +1

    As a C developer that frequently uses hash tables, I find this kind of funny. The standard library has no hash table implementation, but it doesn't need one because several dozen implementations already exist. Granted, they're all different and the standard committee is definitely never going to agree on how to implement such a thing with so many competing ideas, but there's nothing stopping anyone from just picking the one they like and using it. I've been using my own library for about two decades now, and if you've been at it for any length of time you should have one too. However, that said, I would fully expect anyone who's new to programming to not want to go through the effort and they'd be better off learning a programming language that does it for them.

    • @samuraijosh1595
      @samuraijosh1595 4 місяці тому

      can you share your C hashtable library

    • @anon_y_mousse
      @anon_y_mousse 4 місяці тому

      @@samuraijosh1595 I have to find some space somewhere that I can upload it first. I refuse to use GH, but I may sign up with GL, though only because setting up a publicly visible server anonymously is next to impossible.

  • @nightshade427
    @nightshade427 5 місяців тому +1

    Why not use go vs java, you mentioned it was easy to read even if you never used it, and it's performant.

    • @NeetCodeIO
      @NeetCodeIO  5 місяців тому +6

      Yeah either would be fine with me. I just felt Java was the more natural comparison because everyone knows it.

  • @pb25193
    @pb25193 5 місяців тому

    Me, a google dev who does cpp daily, who got scared shitless by the number of things that cannot be done easily in java.

  • @benkogan1579
    @benkogan1579 5 місяців тому +4

    Go feels like that perfect language. It's such a simple language, yet so powerful and performant. Not to mention the build times.

    • @lucass8119
      @lucass8119 5 місяців тому +2

      There's a few fundamental design errors in Go that I take issue with. The type system is one of the worst I've ever seen, for example.

    • @benkogan1579
      @benkogan1579 5 місяців тому

      @@lucass8119 only huge problem I have with the type system is no enums. But I can manage.

    • @MI08SK
      @MI08SK 5 місяців тому +3

      It would be perfect if it didn't have the pascal like syntax

    • @MI08SK
      @MI08SK 4 місяці тому

      @Bebtelovimab go inherited the := syntax, and the varname before vartype from pascal.
      In C you define the variable type before its name. And in go its the opposite(like in pascal)

  • @niklkelbon3662
    @niklkelbon3662 5 місяців тому +1

    Someday google will understand, that it's required to hire people familiar with language they will write. Someday...
    But now they write c++ with 'senior' developers, which not know how to fix simple error

  • @dudeabideth4428
    @dudeabideth4428 Місяць тому

    That backpack is what Amazon gave you when you used to work there ?

  • @Jay-kb7if
    @Jay-kb7if 5 місяців тому

    I was gonna learn C++ but I haven't even learned A through to B++

  • @wednesdrei
    @wednesdrei 5 місяців тому

    Where's the Carbon at when we need it?!

  • @aj-loves-tech
    @aj-loves-tech 5 місяців тому

    6:13 that smile gets me Every time 😂😂❤❤❤❤❤

  • @yusufkolawole4291
    @yusufkolawole4291 5 місяців тому +1

    Thanks

  • @romzeek
    @romzeek 4 місяці тому +1

    How can anyone enjoy JavaScript when there is C++?!

  • @WillEhrendreich
    @WillEhrendreich 5 місяців тому

    I'd write Odin Lang for ultra performance code. I'm not even good at it yet, but it's just as fast as c or cpp and much simpler. Like..many many times simpler.

    • @nempk1817
      @nempk1817 5 місяців тому

      surely

    • @phitc4242
      @phitc4242 5 місяців тому +4

      C is about as simple as a programming language can be. if you're coming from a hardware point of view it all makes sense (pointers, memory etc)
      it's as if you had sonething like a piece of paper and some color at your disposal. nothing fancy. but it all makes sense
      the hard part is algortithms and data structures. C has no array, no hashmaps, linked lists, etc... iirc it has no mention of 'stack' in it's specification. (reason being to support old ass hardware that ran through mythic magic; to not limit the functioning of the language through the cpu's abilities)
      C can be very inconvenient or nasty at times. error handling, string operations, arrays, lists, hashmaps, type generic stuff (preprocessor/void*)...
      I think a better word for Odin would be convenient? Though I could be wrong, tell me what you think

    • @isodoubIet
      @isodoubIet 5 місяців тому

      It's easy to make a language simple when it doesn't do as much. Odin is not really a serious contender in any space where C++ is used because it has no answer to the memory management problem. Literally no answer.

    • @Navhkrin
      @Navhkrin 5 місяців тому

      I would say Mojo takes things even a step further. Simple syntax, but even deeper optimization opportunities with compile-time guarantees and access to IR.

  • @vigneshkumarganesan1529
    @vigneshkumarganesan1529 5 місяців тому

    Bro post videos on where we cannot avoid c++.

  • @pinchonalizo
    @pinchonalizo 4 місяці тому

    “… it doesn’t even have a hashmap” end of video 😂

  • @themagickalmagickman
    @themagickalmagickman 5 місяців тому

    Were you happy working 9 to 5?

  • @liangyu3771
    @liangyu3771 4 місяці тому

    I like the ending😂

  • @dracsharp
    @dracsharp 5 місяців тому +1

    At least C++ is not a good language to dabble in. You are probably not even getting the performance, only the headaches.

  • @_____case
    @_____case 5 місяців тому +1

    They're trying to fix this with Carbon.

  • @adi96adi
    @adi96adi 5 місяців тому

    0:12 Not true dude. A lot of ads stuff has TS "backend" as well as libraries

    • @NeetCodeIO
      @NeetCodeIO  5 місяців тому

      Really? Do you mean ssr clients or actually backend? They must be older because afaik boq only supported c++, Java and go.

    • @adi96adi
      @adi96adi 5 місяців тому +1

      @@NeetCodeIO I use the term backend loosely haha. Not exactly server code but definitely not just code responsible for populating a web app, though it does run client side.
      Don't wanna out too much 🤣🤫

  • @ilyukchiljin7640
    @ilyukchiljin7640 5 місяців тому

    kinda knew it'd be the case but a bit disheartened to hear that even google doesn't use golang for their stuff, been learning golang for about a month and I really like the language but feels like a waste of time if no one is using it :( might as well invest my time into learning Rust instead.. sigh

    • @BatmanAoD
      @BatmanAoD 4 місяці тому

      There are lots of companies using Go. And Google does use it, just not for everything.

  • @DeathSugar
    @DeathSugar 5 місяців тому +7

    Google should learn how to write decent C++ code, coz on average it looked awful, compared to yandex leaked code .

    • @phillipanselmo8540
      @phillipanselmo8540 5 місяців тому

      yandex leaked code? where?

    • @DeathSugar
      @DeathSugar 5 місяців тому

      @@phillipanselmo8540 torrents ofc. about 50gibs of them. or you can check some their open source projects they spawned like clickhouse(not sure if it's ain't c) or userver

    • @isodoubIet
      @isodoubIet 5 місяців тому +2

      Yeah apart from a few pockets like absl the quality of google C++ code is consistently awful. Chromium specifically is a disgrace.

    • @DeathSugar
      @DeathSugar 5 місяців тому

      @@isodoubIet I wonder which one. Coz I grasped some Fuchsia code (utilities mainly), google tests and some others and they looked terrible on average. What actual gems are there from google?

  • @HellCatLeMaudit
    @HellCatLeMaudit 5 місяців тому

    Maybe Google chose C++ as its standard because it wants to separate the people who love programming they would spend the time learning C++, or are computer science majors who are taught in C++, from the people who became devs only because they want the better pay but don't really have the talent for it? I don't know. But this choice of a language is definitely a decision made by a team who discussed this and settled for C++ instead of languages de jour like Rust or Java (which is kinda getting unpopular now.)

    • @BatmanAoD
      @BatmanAoD 4 місяці тому

      Google has been using C++ since the early 2000s at least, and Rust wasn't stable until 2015. Java isn't an option for some of the software they write using C++; for instance, Chrome needs to be in C++ primarily for performance reasons.

  • @Tigregalis
    @Tigregalis 5 місяців тому

    the elephant in the room - what are your thoughts on Rust?

  • @re1konn
    @re1konn 5 місяців тому +20

    Hence, Rust

    • @nempk1817
      @nempk1817 5 місяців тому +7

      surely rust is more easy to use than c++

    • @mikkelens
      @mikkelens 5 місяців тому

      @@nempk1817genuinely yeah. Its no Go or JS for stupidly simple syntax but its legitimately simpler syntax and semanticswise than java/c# and definitely moreso than c++. It’s somewhere between c# and c for language complexity. People only call it hard to use bc they cant be bothered to fix their bad programs

    • @VivekYadav-ds8oz
      @VivekYadav-ds8oz 5 місяців тому +3

      ​@@nempk1817Unironically it is easier to use. But some aspects of it are certainly painful. But it's mostly for the the library authors.

    • @nempk1817
      @nempk1817 5 місяців тому +1

      @@VivekYadav-ds8oz Can you say an example where Rust is more easier to use than C or C++?

  • @wilbertfundira9407
    @wilbertfundira9407 5 місяців тому

    Hi Neet. is the microservice b** sc*****ing? I have used the Java version of it and its great. Havent used the C++ version

    • @NeetCodeIO
      @NeetCodeIO  5 місяців тому

      Yeah, I def liked the Java version better

  • @sukapow
    @sukapow 5 місяців тому +8

    If Google was using a Microsoft language "Typescript", why they're just use "C#" to replaced Java and C++. C# exists to fixed both Java and C++ mistakes. I feel like Java should have been more like C#

    • @phillipanselmo8540
      @phillipanselmo8540 5 місяців тому

      dot net is horrible

    • @plaintext7288
      @plaintext7288 5 місяців тому +1

      Because by the time C# became good enough (.Net Core and even earlier than that, the whole ecosystem) there was an enormous amount of code written in Java that matured earlier
      So why write code in a language that not as many devs in the team know, when you can just use Java

    • @AI-xi4jk
      @AI-xi4jk 5 місяців тому +3

      Garbage collection is not for everyone.

    • @isodoubIet
      @isodoubIet 5 місяців тому +1

      "C# exists to fixed both Java and C++ mistakes. "
      Actually no, it's literally just to fix Java's mistakes. C# in fact didn't even learn from C++'s successes (see for example IDisposable and try... finally)

    • @sukapow
      @sukapow 5 місяців тому

      @@isodoubIet You know Java existed to fixed C++ problems but Java created more problems from itself.
      Microsoft solution was, welp let just combined both C++ and Java into one language and let what we got 😏 .
      Bro, that's like saying React existed to fixed Angular problems. Angular existed to fix JS problems. Vue existed to fixed React problems. Microsoft: "let bring Typescript into the table"

  • @driden1987
    @driden1987 5 місяців тому +1

    I hope I never have to learn google’s c++

  • @CallousCoder
    @CallousCoder 5 місяців тому +3

    C++ and c are the two languages I love but I still learn new things in C++.

    • @philipbotha6718
      @philipbotha6718 4 місяці тому +1

      C is basically on life support (C17 only fixed defects in C11. Though C23 will add a few useful features). C++ is a living language that gets a bunch of features every three years. Bit hard to keep up at times. Sofar every new C++ version has been a significant improvement for me. Though with the right libraries C++17 isn't too bad.

    • @CallousCoder
      @CallousCoder 4 місяці тому

      @@philipbotha6718 a good language is a stable language. You don’t want new features all the time - although some features in C++ I do really like and are a great improvement. But that’s why people in the embedded world stick with C, because it’s a simple enough language to prove and test your systems is doing exactly as designed without having to dig deep in compiler specifics and side effects.
      Which is crucial for embedded critical systems. C ain’t going anywhere in the critical systems world.

  • @RetroAndChill
    @RetroAndChill 3 місяці тому +2

    I love C++ as well, but holy shit there are so many frameworks that have all these macros and other elements that it makes it feel like each one is its own language.

    • @Anonymous-fr2op
      @Anonymous-fr2op 3 місяці тому +2

      What about python? Without frameworks this language wouldnt even exist😂

  • @alexisdamnit9012
    @alexisdamnit9012 5 місяців тому

    Learning C++ at school vs learning C++ on the job are very different. The level of skill you need to do your homework assignment vs getting a project production ready are very different. If all the experience you have is school, you’re basically inexperienced 🤷‍♀️

    • @NeetCodeIO
      @NeetCodeIO  5 місяців тому +2

      Yeah part of why C++ is difficult imo, the same learning curve isnt really there with java.

  • @vsaihruthikreddy7127
    @vsaihruthikreddy7127 5 місяців тому

    If Java devs face an issue writing in a C++ code base imagine Python devs(who only did Python their whole life), they be like “Now I see why hell appears before God does ”

  • @pinkavyek
    @pinkavyek 5 місяців тому

    Bro has beef with C++

  • @justcurious1940
    @justcurious1940 5 місяців тому +2

    Should I stop learning C++?Is it over for me ?

    • @levelup2014
      @levelup2014 5 місяців тому +15

      Yea give up please less competition 🙏

    • @pinkavyek
      @pinkavyek 5 місяців тому

      ​@@levelup2014💀

    • @isodoubIet
      @isodoubIet 5 місяців тому +5

      C++ is a great language, ignore the haters

    • @mistdoyhta696
      @mistdoyhta696 5 місяців тому

      learn rust

  • @Omnifarious0
    @Omnifarious0 5 місяців тому +2

    Sounds like teaching people Java is the problem. I despise that language.

  • @jvcmarc
    @jvcmarc 5 місяців тому +1

    Rust when?

  • @MrAbrazildo
    @MrAbrazildo 5 місяців тому

    1:18, what a hell?! It even got ranges! WTF are you saying?! 1:31, this is everything. With that, any tool can be made, thus any problem can be solved in a convenient way.
    6:00, despite C is the best part of C++, it's still kind dangerous alone. I write everything in C++, in fast pace, but I prefer to leave C in the past.

  • @LongTran-id2pl
    @LongTran-id2pl 5 місяців тому

    literrally your content could have just be "I doesn't have a hashmap 💀" *mic drop*

  • @sondn87
    @sondn87 5 місяців тому +2

    Not really a rant on C++ itself but more about a project using C++ while it should better use a different language. As a language, I agree C++ is a mess and hard to learn but I also think it's not going away anytime soon and there are always cases for using C++ even with the existence of new languages like Rust.

  • @johnpope1473
    @johnpope1473 5 місяців тому

    as a dev for many years - (now strive to do all coding via llm) I used to think swift should run everywhere - apis etc. Never took off - tensorflow swift died. Is kotlin server side the future? to be seen. I'm doing api crud / logic controller code over last 12 months in python / aws lambda - and arguably - this should have be done with typescript or golang or java. I had free reign to implement however I chose - but it really came down to me wanting to further python skills in lieu of doing more machine learning stuff in subsequent projects. It is clean - succint. In similar way - perhaps the people doing c++ services - really want to do some coding in c++ so they can jump into other projects using c++. I guess attracting staff could be a factor. You want these great minds working for you - but they want to code in c++. The future of coding is prompt engineering - chatgpt is operating at 155 iq - so let it decide what to code in.

  • @sungjuyea4627
    @sungjuyea4627 4 місяці тому

    broh that's why we need rust :)

  • @TrollMeister_
    @TrollMeister_ 4 місяці тому

    0:12 Javascript nonsense on the backend. I used to think that too but of late I have become more accepting ...in limited cases. It has its place such as for simple sites that need to be brought up qickly and where a 'heavy' language such as Java is an overkill. But it's not a good idea to build large complex/enterprise apps with javascript backend - for a host of reasons.

    • @TrollMeister_
      @TrollMeister_ 4 місяці тому

      For ex, Spring Webflux has all the advantages of node and all the advantages of Java but little of the disadvantages.

  • @tom_verlaine_again
    @tom_verlaine_again 13 днів тому

    C++ at Google is great.

  • @thanhdo1963
    @thanhdo1963 5 місяців тому

    Almost all modern programming language resemble human language. Unless we are talking about C, CPP, Assembly

  • @K9Megahertz
    @K9Megahertz 5 місяців тому +3

    So I've used C++ for going on 30 years now. I don't really understand why people say it's hard. I've not found it to be any more difficult than say other languages like python or rust. C++ has a ton of "features" that you don't necessarily need to use for most things.

    • @patboy24
      @patboy24 Місяць тому +1

      You only said that after 30 years, no one would spend at least 5 years learning how to write production-grade C++ just to add some features to legacy code (which competitors are already advancing in) unless they have no friends

    • @mobilemobile5799
      @mobilemobile5799 18 днів тому

      People are coming from high order languages like python, JS or Java where you have just int and suddenly they meet int, int32, int32_t, uint32_t, size_t and something like " typedef signed char int8_t;". I used to believe that IDE and compiler can auto suggest or select required type of int because at the end I am specifying to which platform I like to build code, but C++ still has very poor support in that area. But you can see it only if you have good knowledge of other modern languages.

  • @theblckbird
    @theblckbird 5 місяців тому +4

    RUST RUST RUST!!!

  • @ELMlKO
    @ELMlKO 5 місяців тому

    it doesnt even have a hashmap 💀

    • @itsbk6192
      @itsbk6192 5 місяців тому

      is this bait? Is std::unordered_map technically not a hashmap or something?

    • @NeetCodeIO
      @NeetCodeIO  5 місяців тому +5

      I said C does not have a hashmap.

    • @exnihilonihilfit6316
      @exnihilonihilfit6316 5 місяців тому +2

      ​@@itsbk6192Technically, you need to clean your ears.😅

  • @tariqosman5811
    @tariqosman5811 5 місяців тому +3

    C++ ❤❤💯✊🏻✊🏻✊🏻🫶👨‍💻👩‍💻🧑‍💻

  • @daviduzumaki
    @daviduzumaki 5 місяців тому +1

    no offence but i think these videos only satiate junior engineers. would have been cool if you were a senior and talked about some deeper topics

  • @jayleejw1801
    @jayleejw1801 5 місяців тому +3

    That’s why we all use Rust now. Easy

  • @suvalaki
    @suvalaki 5 місяців тому +2

    Skill issues...

  • @1emnL
    @1emnL 5 місяців тому

    c++ haters rise up

  • @revenantwolzart
    @revenantwolzart 5 місяців тому +3

    C++ stands for Chad!

    • @nempk1817
      @nempk1817 5 місяців тому

      That's C, C++ is Cuck

  • @AgentXegy
    @AgentXegy 5 місяців тому +2

    skill issue

  • @thearyanahmed
    @thearyanahmed 5 місяців тому

    JavaScript nonsense.
    Correct.

  • @pollathajeeva23
    @pollathajeeva23 5 місяців тому +2

    C>>>Rust>>Go>C#>>>Java. Zig is trying to became great and C++ is verbose.

    • @nempk1817
      @nempk1817 5 місяців тому

      The order of the most used languages now a days, just need to invert place c# in front of rust C in front of C# and go in the back

  • @eldebtor6973
    @eldebtor6973 4 місяці тому +1

    bro neither c/c++ are memory safe. sincerely, joe biden.

  • @deepsleepmusic9364
    @deepsleepmusic9364 5 місяців тому +1

    Bro don't use this kind of image as thumbnail. It makes bad impression.........(Persoal opinion)........ People those who know you, will must watch your videos. I like your teaching method and following you for a long time.

    • @NeetCodeIO
      @NeetCodeIO  5 місяців тому +6

      Trust me, no one hates these thumbnails more than I do. I would rather not put my face in them either.
      But they work. Don't hate the player, hate the game. 🎮 😢

  • @yusufkolawole4291
    @yusufkolawole4291 5 місяців тому +1

    Firs to like

  • @mistdoyhta696
    @mistdoyhta696 5 місяців тому +1

    RUST

  • @owlmostdead9492
    @owlmostdead9492 5 місяців тому +3

    C++ is the Javascript of the system languages, change my mind.

    • @jonforhan9196
      @jonforhan9196 5 місяців тому

      I've always agreed with this take. Both are wildly successful, endlessly abstractable, and both are a complete pain in the ass, both I choose them over any other language.

    • @owlmostdead9492
      @owlmostdead9492 5 місяців тому +3

      ​@@jonforhan9196 I honestly never write them until I have to, I really dislike the "flow" of JS and C++

  • @albertjohnson8605
    @albertjohnson8605 5 місяців тому

    the Quality is not good, It might get views, but not the thing people will rewatch or value in the long term

  • @shitinsideyou
    @shitinsideyou 5 місяців тому +4

    Rust is replacing C++...

    • @rea1m_
      @rea1m_ 5 місяців тому +16

      Nah C++ won’t be replaced anytime soon

    • @Qwantopides
      @Qwantopides 5 місяців тому +8

      Can't wait. So many exclusively C++ devs can write so terrible code we would be much better of with Go too.
      Rust is so much better. Don't have to setup linters, formatters, build systems just to have basic safety. Frick cpp.
      As a C++ dev, I recommend Rust.
      Most big companies have such terrible C++ codebases it would be cheaper to rewrite them in Rust.

    • @sukapow
      @sukapow 5 місяців тому +1

      ​@@rea1m_ Java exists to dominate c++ oop. It did a great job

    • @AseshShrestha
      @AseshShrestha 5 місяців тому +1

      Keep dreaming. It won’t happen

    • @arunkashyap3527
      @arunkashyap3527 5 місяців тому +2

      Hell nah

  • @damnstupidoldidiot8776
    @damnstupidoldidiot8776 5 місяців тому +2

    C++ syntax is pretty amazing, you are going to have to show some examples of unreadable C++ code.

    • @virno69420
      @virno69420 5 місяців тому +2

      Sure, why dont you explain this function (without using AI):
      template
      auto f(const T& x) -> decltype(x) {
      auto a = [&](auto b) {
      return [=, &b](auto c) mutable -> decltype(b) {
      auto d = [&](auto e) -> decltype(c) {
      return (c < e) ? e : c;
      };
      return d(b(x));
      };
      };
      auto g = [&](auto h) {
      return a(a(h));
      };
      auto i = [&](auto j) {
      return a(g(j));
      };
      auto k = [&](auto l) {
      return i(i(l));
      };
      auto m = [&](auto n) {
      return k(k(n));
      };
      return m(m);
      }

    • @damnstupidoldidiot8776
      @damnstupidoldidiot8776 5 місяців тому +2

      @@virno69420 Your code does not compile when f is called on an integer, which I assume is the intended argument type since it gets compared using less than.
      Please show real code that could actually be in a real program. Anyone can create a jumbled mess in any programming language.

    • @testtest-qm7cj
      @testtest-qm7cj 5 місяців тому +5

      @@virno69420 Anyone can write awful looking code in any language. Being able to write an ugly chain of meaningless simple lambdas in C++ does not prove anything. Try harder.

    • @Kurkkulimu
      @Kurkkulimu 5 місяців тому +3

      @@virno69420 You can write that in any language that supports generics and lambda functions. Just because you can does not mean that anyone will write code like that.

    • @Alt-sy3lf
      @Alt-sy3lf 3 місяці тому

      @@virno69420 naming functions as a, b, c and blaming c++?😂