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

Поділитися
Вставка
  • Опубліковано 21 лис 2024

КОМЕНТАРІ • 341

  • @alkjdfowierj
    @alkjdfowierj 9 місяців тому +1191

    Bro lives in a Swedish prison cell

    • @_Lumiere_
      @_Lumiere_ 9 місяців тому +91

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

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

      Lol

    • @wednesdrei
      @wednesdrei 9 місяців тому +12

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

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

      OK😂😂😂

    • @Blezerker
      @Blezerker 9 місяців тому +13

      hes just minmaxing bro

  • @AseshShrestha
    @AseshShrestha 9 місяців тому +108

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

    • @ElementaryWatson-123
      @ElementaryWatson-123 2 місяці тому

      Then you shouldn't be working in C++. That's the problem at Google as well as other large companies, they employ a lot of people who don't have adequate expertise in C++ instead of hiring a much smaller number of those who have. I've been interviewing a lot of people for C++ positions, and US candidates were horrible, less than 1 in 10 were qualified despite their resumes showing they were working at various large companies on important projects. All the best candidates came primarily from Eastern Europe -- they love C++ and know language really well. The best team I ever hired was from Ukraine, four people who did the work of a hundred of average developers, and they wrote much better code at that.

  • @sprytnychomik
    @sprytnychomik 9 місяців тому +436

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

    • @re1konn
      @re1konn 9 місяців тому +67

      🤣

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

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

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

      too bad the keys cant be modified hehe

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

      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 9 місяців тому +14

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

  • @onlinealias622
    @onlinealias622 9 місяців тому +189

    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 9 місяців тому +4

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

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

      @@penislicker9093 the grass is always greener i guess

    • @MrAbrazildo
      @MrAbrazildo 9 місяців тому +2

      Aaah, shut up! 😁

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

      writing C++ is like writing code with anger issues ...
      template constexpr auto get_my_pp_bitmask() noexcept -> uintptr_t ...

    • @alex_smallet
      @alex_smallet 3 місяці тому +6

      It’s the other way around for me. I program in Python and use C++ at leetcode, because C++ is much more explicit and easier to understand. Python is the most obscure language designed for small scripts. A large Python codebase is a nightmare to support.

  • @arsnakehert
    @arsnakehert 9 місяців тому +193

    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 9 місяців тому +4

      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)

    • @williamcullumcodes
      @williamcullumcodes 9 місяців тому +4

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

    • @NotherPleb
      @NotherPleb 9 місяців тому +7

      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 9 місяців тому +15

      @@NotherPleb 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.

    • @NotherPleb
      @NotherPleb 9 місяців тому +1

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

  • @hitarthpatel
    @hitarthpatel 9 місяців тому +513

    "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 9 місяців тому +1

      Do I know you?

    • @pranjalkumar4708
      @pranjalkumar4708 9 місяців тому +20

      Dissed his own product soo hard LMAO

    • @isodoubIet
      @isodoubIet 9 місяців тому +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 9 місяців тому +21

      ​@@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 9 місяців тому +7

      @@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.

  • @andrewbennett5733
    @andrewbennett5733 9 місяців тому +13

    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!

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

    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 9 місяців тому +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 9 місяців тому +2

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

    • @ElementaryWatson-123
      @ElementaryWatson-123 2 місяці тому

      The problem with C++ at Google isn't any different from other companies in essence, only in scale, namely for every 10 developers there is at best one person with adequate expertise. Just like other companies Google tries to rectify it with guidelines and bureaucracy instead of hiring real experts and letting them run free.

  • @randomyoutubeuser8509
    @randomyoutubeuser8509 9 місяців тому +69

    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 9 місяців тому +9

      Explanation highly desired.

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

      Python in any large project becomes messy. Particularly without types

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

      Legend

    • @melodyogonna
      @melodyogonna 9 місяців тому

      Lmao, very funny.

    • @alex_smallet
      @alex_smallet 3 місяці тому

      @@lashlarue7924 because you cannot trace where certain variables and functions come from due to dynamic typing, because some errors, like a missing parameter, will surface only at runtime, because python developers like to write a messy unreadable code. In most companies C++ code conventions explicitly prohibit using obscure constructs and require the developer to write clear code which is easy to read. It looks like python developers are competing with each other to create the least readable code.

  • @EbonySeraphim
    @EbonySeraphim 9 місяців тому +21

    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 4 місяці тому +2

      literally clang tidy

  • @henu3detb
    @henu3detb 9 місяців тому +175

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

    • @GelloMello-j9z
      @GelloMello-j9z 9 місяців тому +4

      I do in js...🐐

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

      @@GelloMello-j9z please stop!

    • @fullstack_journey
      @fullstack_journey 9 місяців тому +2

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

    • @jitxhere
      @jitxhere 9 місяців тому +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 9 місяців тому +6

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

  • @KyleTanKH
    @KyleTanKH 9 місяців тому +1

    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 😢

  • @pb25193
    @pb25193 9 місяців тому +8

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

    • @janisir4529
      @janisir4529 3 місяці тому

      1. Printing to console.

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

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

  • @nirajandata
    @nirajandata 9 місяців тому +12

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

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

      C# is one language that's very cozy and relatively performant.

  • @atomicCache_
    @atomicCache_ 9 місяців тому +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 😅😅

  • @kikeekik
    @kikeekik 4 місяці тому +8

    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

  • @devkirandass7930
    @devkirandass7930 9 місяців тому +49

    Still I like C++ more than Java lol

  • @HairyPixels
    @HairyPixels 3 місяці тому +29

    C doesn't have a hash map because you were too lazy to take a few hours and write one yourself.

  • @X21XXI
    @X21XXI 3 місяці тому +1

    My C++ snake game is still the smoothest, most high performing, resilient and satisfying piece of code I’ve ever written, and C++ is the deepest rabbit hole of a language I’ve ever dug (JavaScript is slowly catching up though).

    • @hassaniq0777
      @hassaniq0777 3 місяці тому

      yea bro i love having 900 FPS in my animated, colored, sound effected Pong Game lmfao
      i love c++ so much

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

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

  • @yashkhd1100
    @yashkhd1100 9 місяців тому +3

    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.

  • @anon_y_mousse
    @anon_y_mousse 9 місяців тому +2

    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 9 місяців тому

      can you share your C hashtable library

    • @anon_y_mousse
      @anon_y_mousse 9 місяців тому

      @@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.

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

    these insights are so informative

  • @liquidmobius
    @liquidmobius 9 місяців тому +40

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

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

      It just requires more discipline.

    • @ElementaryWatson-123
      @ElementaryWatson-123 2 місяці тому +2

      incompetent developers can write bad code in any language

  • @yurisilva7860
    @yurisilva7860 3 місяці тому

    During my 15 years as a developer, by far, C++ is the hardest language I ever worked!

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

    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

  • @sergten
    @sergten 9 місяців тому +2

    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.

  • @DeathSugar
    @DeathSugar 9 місяців тому +11

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

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

      yandex leaked code? where?

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

      @@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 9 місяців тому +4

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

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

      @@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?

    • @ElementaryWatson-123
      @ElementaryWatson-123 2 місяці тому

      I was hiring people for C++ positions in our company. The situation in US is terrible, people state they know C++, they showed resume working for large companies, but hardly one in ten candidates was qualified. I also had a pleasure of interviewing people from Ukraine (that was before the war), and they knew the language amazingly well, something like three out of four were hired.

  • @carguy-xv2cl
    @carguy-xv2cl 9 місяців тому +1

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

  • @Omnifarious0
    @Omnifarious0 9 місяців тому +7

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

    • @ElementaryWatson-123
      @ElementaryWatson-123 2 місяці тому

      Java irreparably wrecks programmers brains, never hire former Java developers for C++ positions.

  • @ngneerin
    @ngneerin 9 місяців тому +1

    A google mention a day, keeps irrelevance away

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

    Thats true, learning c++ all the syntax is hard , i mean the interpretation of code with pointers is hard, just look at idea of smart pointers with sharing and unique properties , you would see how it can be difficult.

  • @nightshade427
    @nightshade427 9 місяців тому +3

    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  9 місяців тому +7

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

  • @_____case
    @_____case 9 місяців тому +2

    They're trying to fix this with Carbon.

  • @jony7779
    @jony7779 9 місяців тому

    "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.

    • @ElementaryWatson-123
      @ElementaryWatson-123 2 місяці тому

      a better question why would they need to be written in any other language?

    • @jony7779
      @jony7779 2 місяці тому +1

      @@ElementaryWatson-123 I didn't ask a question.

    • @ElementaryWatson-123
      @ElementaryWatson-123 2 місяці тому

      @@jony7779 I wasn't talking to you.

  • @pinkavyek
    @pinkavyek 9 місяців тому +3

    Bro has beef with C++

  • @RetroAndChill
    @RetroAndChill 8 місяців тому +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 8 місяців тому +4

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

  • @adriatic123
    @adriatic123 9 місяців тому +7

    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++

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

      Python is older than Java btw

    • @ElementaryWatson-123
      @ElementaryWatson-123 2 місяці тому +1

      Most new languages are created by people who don't know really well the existing ones (D-language would be an exception). They are attracted by one particular idea and create the whole language around it. Then they find out that the world is lot more complex and either they start years of evolution to get the holes covered during which the language becomes less and less clean, or they decide to remain a niche perhaps supported by some religious following.

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

      "The world doesn't need a better lang but a better programmer" is an incredibly stupid sentiment, if that was the case we would all be coding in Assembly and Fortran

  • @benkogan1579
    @benkogan1579 9 місяців тому +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 9 місяців тому +3

      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 9 місяців тому

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

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

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

    • @MI08SK
      @MI08SK 8 місяців тому

      @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)

    • @nnnp634
      @nnnp634 3 місяці тому

      ​@@MI08SKI don't like the looks of Go syntax (I have never used it though), but differentiating between assigning value and initialization is great

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

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

  • @code-master
    @code-master 3 місяці тому

    as an experienced java developer for a decade, the java sucks at compute heavy jobs, specially which have too much recursion, it'll block the GC & you really don't have any control over memory allocation and dealloc, you may likely see random JVM crashes because of OOM, for others C++ is overkill.

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

    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 9 місяців тому

      dot net is horrible

    • @plaintext7288
      @plaintext7288 9 місяців тому +2

      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 9 місяців тому +3

      Garbage collection is not for everyone.

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

      "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 9 місяців тому

      @@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"

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

    Saying Go is not used at Google is very misleading. Most of GCP infrastructure is written in Go.
    That you didn’t use it in your brief time at G does not mean anything else.

  • @HelloSpyMyLie
    @HelloSpyMyLie 9 місяців тому +2

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

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

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

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

    I love these videos.

  • @enoch8835
    @enoch8835 9 місяців тому +7

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

  • @daviduzumaki
    @daviduzumaki 9 місяців тому +4

    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

    • @chaos9790
      @chaos9790 2 місяці тому

      real eyes realize real lies

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

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

    • @philipbotha6718
      @philipbotha6718 9 місяців тому +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 9 місяців тому

      @@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.

  • @TurdFergusson374
    @TurdFergusson374 3 місяці тому +1

    You don't master c++, you get slightly less shitty at it!

  • @aaronfleisher4694
    @aaronfleisher4694 2 місяці тому

    Which version of c++ did you use?

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

    How are you supposed that? You ready the readability guide.

  • @sondn87
    @sondn87 9 місяців тому +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.

  • @josebarona6341
    @josebarona6341 3 місяці тому +1

    JavaScript on the backend nonsense 🥴

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

    Thanks

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

    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 9 місяців тому

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

  • @jsonkody
    @jsonkody 3 місяці тому

    Go was made so they can use it for server stuff instead of C++ ..

  • @liangyu3771
    @liangyu3771 9 місяців тому

    I like the ending😂

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

    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.

  • @TrollMeister_
    @TrollMeister_ 9 місяців тому

    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_ 9 місяців тому

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

  • @therandom1627
    @therandom1627 3 місяці тому

    Was he a full stack engineer at google?

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

    C++ at Google is great.

  • @Tmahmoud5811
    @Tmahmoud5811 9 місяців тому +3

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

  • @romzeek
    @romzeek 9 місяців тому +6

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

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

    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  9 місяців тому

      Yeah, I def liked the Java version better

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

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

  • @alex_smallet
    @alex_smallet 3 місяці тому

    I love C++

    • @Skmei6
      @Skmei6 2 місяці тому

      Have u coded one?

  • @sungjuyea4627
    @sungjuyea4627 9 місяців тому

    broh that's why we need rust :)

  • @paulhetherington3854
    @paulhetherington3854 3 місяці тому

    Key: "Ing at Google -- racial agreggate!" Ah ha - he be -- Charlie Sheen - Netherlands , Duch?

  • @suvalaki
    @suvalaki 9 місяців тому +3

    Skill issues...

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

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

    • @levelup2014
      @levelup2014 9 місяців тому +21

      Yea give up please less competition 🙏

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

      ​@@levelup2014💀

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

      C++ is a great language, ignore the haters

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

      learn rust

    • @ElementaryWatson-123
      @ElementaryWatson-123 2 місяці тому +2

      As Homer Simpson put it, if it's to hard it's not worth doing.😂

  • @jegadheeswarank6290
    @jegadheeswarank6290 3 місяці тому

    Room tour please

  • @alexisdamnit9012
    @alexisdamnit9012 9 місяців тому +2

    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  9 місяців тому +2

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

  • @K9Megahertz
    @K9Megahertz 9 місяців тому +4

    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 5 місяців тому +2

      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 5 місяців тому

      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.

  • @niklkelbon3662
    @niklkelbon3662 9 місяців тому +2

    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

  • @re1konn
    @re1konn 9 місяців тому +22

    Hence, Rust

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

      surely rust is more easy to use than c++

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

      @@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 9 місяців тому +4

      ​@@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 9 місяців тому +2

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

    • @intermitttence2022
      @intermitttence2022 3 місяці тому

      @@nempk1817The rust build system (cargo) is infinitely better than c++’s mess of different tools. You don’t have to learn scripting languages like CMake in order to get your stuff to compile or install dependencies.

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

    There's Rust but ... he's like C++'s super anal OCD brother who never stops complaining

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

    RUST RUST RUST!!!

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

    skill issue

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

    c++ haters rise up

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

    C++ stands for Chad!

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

      That's C, C++ is Cuck

  • @novantha1
    @novantha1 2 місяці тому

    Redpill: Code the most immediate low level features with C/C++ (possibly using intrinsics and multithreading) and create Lua interfaces for them and glue it all together that way. I personally find it not too bad writing short modules in C++, as long as you stay away from most of the object oriented features. Binding to Elixir can be pretty fun because you can run the processes from wherever you want pretty easily.

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

    it doesnt even have a hashmap 💀

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

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

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

      I said C does not have a hashmap.

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

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

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

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

    • @JoaquinDev
      @JoaquinDev 3 місяці тому

      rust is good, crazy learning curve. I believe Zig will surpass it at least for systems level stuff in a couple years.

    • @Tigregalis
      @Tigregalis 3 місяці тому

      @@JoaquinDev Surpass it in what sense?

    • @JoaquinDev
      @JoaquinDev 3 місяці тому

      @@Tigregalis i believe it will become the preferred 'new systems level programming language'. It still has long ways to go when compared to rust, but for what it is right now, after only 8 years of development, its great. My for fun language/hobby is C and C++ for embedded, zig to me just feels right and intuitive. Rust doesn't feel like that for me (100% could be a skill issue)

    • @Tigregalis
      @Tigregalis 3 місяці тому

      @@JoaquinDev I'm not so sure about that. Zig isn't a safe language. By the time Zig is "ready" no one will want to use it for most applications (and we're assuming Rust will stagnate). Mojo honestly has a better chance.

    • @JoaquinDev
      @JoaquinDev 3 місяці тому

      @@Tigregalis it doesn't have to be a safe language to overtake Rust. You have to trade performance for safety. Rust's error messages are horrible when using complex types or lifetimes, and the learning curve is steeper than Zig's could ever be, and it takes a long time to write and push to prod a program in Rust.
      Zig on the other hand, faster compile times, super easy to use, the tooling a building system are amazing, interoperability with C, no hidden control flows, and last but not least, probably the best debugging experience out of all low level languages. And zig still has bounds that can be defined by the dev for 'safety'.
      Memory safety is a skill issue.

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

    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 9 місяців тому

      surely

    • @phitc4242
      @phitc4242 9 місяців тому +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 9 місяців тому +1

      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 9 місяців тому

      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.

  • @1234fewgfwe
    @1234fewgfwe 9 місяців тому +3

    That’s why we all use Rust now. Easy

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

    JavaScript nonsense.
    Correct.

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

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

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

      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

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

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

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

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

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

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

    • @adi96adi
      @adi96adi 9 місяців тому +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 🤣🤫

  • @mrotss
    @mrotss 3 місяці тому

    if neetcode is dumb im a brick

  • @eyesopen6110
    @eyesopen6110 3 місяці тому +1

    javascript is garbage.

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

    Rust when?

  • @eldebtor6973
    @eldebtor6973 8 місяців тому +3

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

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

      Finally Joe Biden says something that makes sense

  • @daemon_zero
    @daemon_zero 3 місяці тому

    C++ is my language at home. Its horrible, I love it.
    I don't really like C. I understand why people like it. The simplicity.
    C++ affords me all the power C has, but also gives me more abstraction to work with.
    Java is fine. Pretty well organized and readable. I can see how Java people are able to think broadly. Its does conduct to this.
    I think maybe people are immediatists? Is productivity typing? With C++ I spend more time thinking than typing. With Java more time typing than thinking. Time to accomplish something: about the same. Java code reads like a well written contract. C++ reads like an obscure datasheet. That's one for Java.
    I wonder if it's worth learning JavaScript.

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

    RUST

  • @MJ-cf9nl
    @MJ-cf9nl 3 місяці тому

    If you gonna write anything in C/C++ then you should use Golang instead. C language is a very important language to learn but not safe to use. It gives you that deep knowledge and understanding about programming that the other languages don't offer.

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

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

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

    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 9 місяців тому +2

      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.

    • @PaulPari
      @PaulPari 3 місяці тому

      Yapping