Interviewing the creator of C++, Bjarne Stroustrup

Поделиться
HTML-код
  • Опубликовано: 17 ноя 2024

Комментарии • 88

  • @d_techterminal
    @d_techterminal 2 года назад +82

    Wow... Legend himself 😵😵🙌🙌

  • @christiannovak3204
    @christiannovak3204 2 года назад +40

    Nice to see Bjarne in this video, what a legendary character. We must be about the same age. Learned c++ early in my software engineering career, in the chain of assembly language, c, Java, c# and lately Python. c++ is the only language that I’ve continued using extensively in my career.

    • @jaimedpcaus1
      @jaimedpcaus1 2 года назад +2

      That's a cool answer. So, where and how do you use c++? I often see (RUclips ) people using C. And I don't understand why there is a need to use C vs C++? Thanks

    • @sophiacristina
      @sophiacristina Год назад +1

      ​@@jaimedpcaus1 I'm not a master programming, and i can't answer for him... But i love C++ because the philosophy of "no language that is lower-level than C++ except assembly", and that it doesn't care about your programming style, it tries to fit it all for everybody. Also because the type systems is super precise, i know "exactly" what is happening to my computer when i code it... It is old enough to have lot of libraries and resources, it can adapt to C. And my style is the polemic OOP, which C++ classes makes it very easy to do, especially the easiness for inheritance and that template is so complete that it is turing complete, which, for some is a problem, but for me it is amazing, since template (wiki: Template metaprogramming): "The output of these templates can include compile-time constants, data structures, and complete functions. The use of templates can be thought of as compile-time polymorphism. The technique is used by a number of languages, the best-known being C++, but also Curl, D, Nim, and XL." One example of that is how you can make a factorial function to be done at compile-time (Wiki: Compile-time function execution).
      Philosophies of the language (from Wiki):
      "Every feature should be implementable (with a reasonably obvious way to do so).
      Programmers should be free to pick their own programming style, and that style should be fully supported by C++.
      Allowing a useful feature is more important than preventing every possible misuse of C++.
      It should provide facilities for organising programs into separate, well-defined parts, and provide facilities for combining separately developed parts.
      No implicit violations of the type system (but allow explicit violations; that is, those explicitly requested by the programmer).
      User-created types need to have the same support and performance as built-in types.
      Unused features should not negatively impact created executables (e.g. in lower performance).
      There should be no language beneath C++ (except assembly language).
      C++ should work alongside other existing programming languages, rather than fostering its own separate and incompatible programming environment.
      If the programmer's intent is unknown, allow the programmer to specify it by providing manual control."

  • @vectoralphaSec
    @vectoralphaSec Год назад +18

    If C++ had a package manager like many other languages like Python with pip/ conda to install external 3rd party libraries and modules, it would be a literal game changer. It would fundamentally change C++ forever for the better and i hope that one day it happens.

    • @sakost
      @sakost 10 месяцев назад

      well, there is a conan exist...

    • @NoradNoxtus
      @NoradNoxtus 10 месяцев назад +1

      even bjarne wants that i think from one of his talks years ago he said how complicated it was to get a graphics lib installed on 3 different osboxs in his class. someone just needs to takeover C++ as a whole and dictate 1 version for it.

  • @dekutree64
    @dekutree64 Год назад +4

    Coroutines are a revolution for game programming. The difference in readability and line count versus finite state machines is amazing. I've only gotten to use them on "bare metal" systems like Nintendo DS where you can safely fiddle with the CPU registers to control the program flow. It will be awesome to have them as a standard language feature.

  • @contextfree
    @contextfree 2 года назад +24

    It was great working with you on this! Thanks much!

  • @apenasmeucanal5984
    @apenasmeucanal5984 2 года назад +47

    what a perfect timing, i’ve been getting into cpp lately and it’s like you read my mind on the subject to be covered

    • @Light-nn6hn
      @Light-nn6hn 2 года назад

      Uci ics45 and 46 are great courses for cpp if u cant find good resources 😄

  • @AnyFactor
    @AnyFactor 2 года назад +15

    "Q. Question you wish you were asked?"... Every interviewer should ask this question on every interview.

  • @mokus603
    @mokus603 2 года назад +24

    06:48 "I realized that you have to have something that you can read over a weekend..." 252 pages of C++

  • @siddharthchauhan1129
    @siddharthchauhan1129 2 года назад +12

    I started with java when i started coding. The concepts like reference and object creation , didn't make sense to me earlier. I use to think it is very weird . Then I learnt C++ . started with C++11, that changed how I think about learning how to code. I started appreciating the design structure for other languages. And it makes sense why college curriculum introduces C++ in early years. To appreciate design of certain things, we need first learn what it is like to design something on our own. we learn the trade offs first hand. I am absolutely in love with C++. I get it that market structure needs languages which solve other problems like , how fast code can be written or how easy it is to manage and read, but quite really whenever any language wants to do something quick, they are gonna call c++ api at the back. Learning C++ has been an asset to my knowledge base.

    • @tatianaes3354
      @tatianaes3354 Год назад

      Do you like new C++ versions with concurrency, modules, concepts, constrains, etc?

  • @raz0229
    @raz0229 2 года назад +9

    Wow, this needs a lot of views. Thank you for conducting this interview

    • @mCoding
      @mCoding  2 года назад

      You're welcome and thanks!

  • @harshrathod50
    @harshrathod50 2 года назад +8

    Came here from ContextFree channel. Subscribed. Looking forward to consuming mCoding's content henceforth. 🔥 You guys are great inspiration.

  • @Songfugel
    @Songfugel 2 года назад +41

    I wish there were subtitles, as a non-native speaker, I am having trouble hearing everything he is saying at times :(

    • @NateLevin
      @NateLevin 2 года назад +9

      The youtube auto-generated ones are right about 95% of the time for me.

    • @Songfugel
      @Songfugel 2 года назад +39

      @@NateLevin In a technical speech, 95% of time doesn't really cut it when the 5% it gets wrong are the important words you aren't familiar with, but yes, turning them on helped quite a bit

    • @harshitjoshi3082
      @harshitjoshi3082 2 года назад

      Yes

    • @raz0229
      @raz0229 2 года назад +1

      @@NateLevin I'd say 99 percent

    • @circuit10
      @circuit10 2 года назад

      Even as a native speaker it’s a bit difficult because he has a strong accent

  • @el_chivo99
    @el_chivo99 2 года назад +17

    ngl when i read this i thought it was going to be a FANG style technical interview question and i was like ohhhh shit haha!

  • @EMB3D
    @EMB3D 2 года назад +5

    cpp is getting better and better each release ... considering how big it is, i am pleased with the pace they are catching up to modern languages

  • @mecwave4726
    @mecwave4726 2 года назад +3

    I thank you for the question about suggestions for novice learners

    • @mCoding
      @mCoding  2 года назад +2

      Very welcome!

  • @lepsycho3691
    @lepsycho3691 2 года назад +1

    Holyshiit, Amazing!
    Edit: just finished watching and I'm surprised how short the video is. However, there is some gold nuggets of info in there!

  • @jadespy399
    @jadespy399 2 года назад +9

    Geez, I was just wishing C++ had coroutines/python generators for my current project.

    • @mCoding
      @mCoding  2 года назад +8

      I think easy generators are a priority coming in C++23.

    • @harshitjoshi3082
      @harshitjoshi3082 2 года назад

      What are you working on

  • @lucasrba
    @lucasrba 2 года назад +1

    Thank you very much for this interview!
    The question about starting now is what I needed.
    I will certainly acquire that book.

    • @darer13
      @darer13 2 года назад

      how is the book?

  •  2 года назад +1

    Wow an interview with Bjarne.

  • @alexmercer4627
    @alexmercer4627 2 года назад +2

    Great interview. I've been loving the new Cpp content.

  • @Ghasakable
    @Ghasakable 2 года назад +1

    Very inspiring and an amazing video, thank you very much

  • @Mutual_Information
    @Mutual_Information 2 года назад +4

    wow! Such a legend!

  • @AntoshaPushkin
    @AntoshaPushkin Год назад +1

    I hoped it was a C++ technical job interview for Stroustroup as if he was applying for a software engineering position

    • @mCoding
      @mCoding  Год назад

      Haha i don't think he needs to apply for jobs anymore.

  • @rdubb77
    @rdubb77 2 года назад +1

    His college textbook with the swan on is really good. Though he says it can be a beginner book, it’s not, in the same way I wouldn’t recommend C++ to a beginner

  • @grmancool
    @grmancool 2 года назад +3

    I thought I'd be like a mock job interview

  • @johnwig285
    @johnwig285 2 года назад +3

    That's not the creator of C++, that's Chuck from Better Call Saul

  • @CAMOBAP795
    @CAMOBAP795 2 года назад +2

    Initially, from the title, I thought that it will be a "job"-interview of Bjarne Stroustrup...

  • @3rdClassFilms
    @3rdClassFilms 2 года назад +1

    Thanks for conducting this great interview :) Any chance it will be available in textual form for easier citing?

  • @pavliv
    @pavliv 2 года назад +3

    First thought was that interviewing him for some job and im like thats messed up, if anything, it's Bjarne whos gona interview someone else.

    • @mCoding
      @mCoding  2 года назад +3

      Hahaha yes not a job interview, just a normal one.

  • @anirangoncalvesbr
    @anirangoncalvesbr 2 года назад

    Congratulations! Huge achievement sir!

  • @mahdies9620
    @mahdies9620 2 года назад +3

    the king

  • @omginever
    @omginever 2 года назад +5

    can he reverse a linked list though?

    • @pranavnyavanandi9710
      @pranavnyavanandi9710 2 года назад

      Lol, why is there a need to do that though? I know it's a question, but is there any use case for such a thing?

    • @Virbox
      @Virbox 2 года назад +1

      @@pranavnyavanandi9710 to pass a job interview

  • @vectoralphaSec
    @vectoralphaSec Год назад +1

    So did he pass the technical interview?

  • @HypnosisBear
    @HypnosisBear 2 года назад +2

    The legend ⚡⚡🔥🔥⚡⚡

  • @ananyobratapal5521
    @ananyobratapal5521 2 года назад

    Wow this was so unexpectedly cool ❤️

  • @JohnWasinger
    @JohnWasinger 2 года назад

    Would pre-compiled STL headers be an example of a module?

    • @kebien6020
      @kebien6020 2 года назад +1

      I would say yes. Modules are meant to bring the advantages of pre-compiled headers but as a standard part of the language (right now they are compiler-specific extensions). They also provide a new way to control visibility in a way that private and protected couldn't (because they are just for classes).

  • @ibrahimcious
    @ibrahimcious 2 года назад

    perfect timing

  • @destiny_02
    @destiny_02 2 года назад +2

    respect++

  • @its_code
    @its_code 2 года назад

    Wow 😳😲 amazing information
    Love 💕 from Pakistan

  • @kordru
    @kordru 2 года назад +1

    amazing..

  • @ich6885
    @ich6885 2 года назад +1

    Nice, that's gonna be interesting :D

  • @szymoniak75
    @szymoniak75 2 года назад +1

    wow, nice

  • @eulefranz944
    @eulefranz944 2 года назад +1

    Wooooow

  • @cater1337
    @cater1337 2 года назад +4

    linus is missing here, what a talk would it be

    • @embeddor2230
      @embeddor2230 2 года назад

      linus hates C++.

    • @cater1337
      @cater1337 2 года назад +9

      @@embeddor2230 thats why it would be good, confrontation

    • @embeddor2230
      @embeddor2230 2 года назад +5

      @@cater1337 I really don't get why Linus hates modern C++. His arguments of readability feel very subjective and kind of like "C is better, because we have always done it in C". I personally think the STL's code (which is considered by many the most unreadable code on God's Earth) much more readable than the linux kernel code.

    • @destiny_02
      @destiny_02 2 года назад +2

      I first thought you were talking about Linus Sebastian

    • @elliott8175
      @elliott8175 2 года назад +3

      @@embeddor2230 I'm not a fan of Linus, but I think his issue with C++ is that he can't mentally compile it to assembly, which he can do for C. Given his focus on efficiency being an absolute priority, and that assembly languages are truly native languages to him, I can understand his dislike for C++.
      He seemed to have mellowed a bit over the years. There was one video during an interview where he just said that it's absolute garbage, without explanation. In a more recent talk, during the question time I saw him answer whether he'd consider transitioning to more modern languages, and he didn't rant at all (shockingly!) but just said that he can't figure out what's going on at the assembly level.

  • @guilherme5094
    @guilherme5094 2 года назад

    👍👍!

  • @trag1czny
    @trag1czny 2 года назад +1

    discord gang 🤙🤙🤙

  • @georgiilkov9915
    @georgiilkov9915 2 года назад +12

    An interview with God himself. Wow

  • @gecho2925
    @gecho2925 2 года назад +1

    oh my...

  • @bosch5303
    @bosch5303 2 года назад +1

    woo

  • @MithicSpirit
    @MithicSpirit 2 года назад

    Discord gang

  • @zacklayman6294
    @zacklayman6294 2 года назад +5

    i wanna see him leetcode

  • @jonathan3488
    @jonathan3488 2 года назад

    Holy shit

  • @numberonep5404
    @numberonep5404 2 года назад

    O.

  • @mercer5888
    @mercer5888 2 года назад +1

    Weird editing

  • @theabyss5647
    @theabyss5647 2 года назад +1

    He's the worst person in the computer sciences. C++ is really bad and his book about programming it just terrible to the extremes.
    I respect him but it's impossible to respect his creation.

    • @jwadaow
      @jwadaow Год назад +1

      C++ is bad and yet because of the free choices of engineers it is used widely. Do you see the problem reconciling your statements?