Bjarne Stroustrup: C++ | Lex Fridman Podcast #48

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

КОМЕНТАРІ • 1,3 тис.

  • @ExpensivePizza
    @ExpensivePizza 2 роки тому +1904

    It's pretty amazing to think that the software industry is so young that the OG's are still alive today and can be interviewed like this. We've come a very long way in a very short time.

    • @monsterhunter445
      @monsterhunter445 2 роки тому +38

      Technically programming goes back further but yeah it's a new industry.

    • @thesuperyou2829
      @thesuperyou2829 2 роки тому +9

      what is OGs?

    • @ExpensivePizza
      @ExpensivePizza 2 роки тому +69

      @@thesuperyou2829 It's a slang term that stands for "Original Gangster"

    • @RyoHazuki1
      @RyoHazuki1 2 роки тому +8

      I never thought of it that way, but it's very true and very profound.

    • @ruslanfernandes1266
      @ruslanfernandes1266 2 роки тому +2

      I felt the same way when I came across this thumbnail

  • @Wrathos
    @Wrathos 5 років тому +3116

    The fact that I can watch conversations like these for free, with no spammed ads along the way is absolutely amazing.
    Keep up the brilliant work Lex!

    • @colingeorgejenkins9418
      @colingeorgejenkins9418 5 років тому +2

      Do you think will any of them consider Maria von france

    • @romakrigin8178
      @romakrigin8178 4 роки тому +16

      Dude, install ad blocker.

    • @hexploit2736
      @hexploit2736 4 роки тому +8

      Its not for free, his getting viewer base and thats more valuable than few cents out od advertise. Don't be fooled.

    • @ToastyWaffle456
      @ToastyWaffle456 4 роки тому +21

      Adblock is not magic. You deny the content creator money for their work that you don't even have to pay for.

    • @klarnorbert
      @klarnorbert 4 роки тому +3

      Ever heard of adblockers?

  • @lexfridman
    @lexfridman  5 років тому +1307

    I really enjoyed this conversation with Bjarne. Here's the outline:
    0:00 - Introduction
    1:40 - First program
    2:18 - Journey to C++
    16:45 - Learning multiple languages
    23:20 - Javascript
    25:08 - Efficiency and reliability in C++
    31:53 - What does good code look like?
    36:45 - Static checkers
    41:16 - Zero-overhead principle in C++
    50:00 - Different implementation of C++
    54:46 - Key features of C++
    1:08:02 - C++ Concepts
    1:18:06 - C++ Standards Process
    1:28:05 - Constructors and destructors
    1:31:52 - Unified theory of programming
    1:38:10 - Machine learning
    1:44:20 - Proudest moment

    • @HasanBasri-vf2kg
      @HasanBasri-vf2kg 5 років тому +15

      Dear Lex Thanks for your effort and providing this opportunity...

    • @diemaus5842
      @diemaus5842 5 років тому +6

      Great interview and great questions. Thank you Lex and Bjarne.

    • @waqidj
      @waqidj 5 років тому +4

      No AI?

    • @djmilen4o
      @djmilen4o 5 років тому +4

      Thanks for the timeline. It really helps me filter information! Great interview!

    • @GG-ms8ey
      @GG-ms8ey 5 років тому +4

      Thank you for the timestamps! This helps a lot and saves us so much time.

  • @nomenec
    @nomenec 4 роки тому +175

    Lex, thank you greatly for interviewing Bjarne Stroustrup! He has been a personal hero of mine for the last twenty years or more. He is not only a supreme engineer but also an adroit consensus builder. That is a rare combination and his consensus building seems to have played a critical role in forging the success of C++. I highly recommend his "The Design and Evolution of C++" to anyone interested in computing history, language design, or even politics. To me, Stroustrup's approach seems to be 1) understand the "customer's" problem and needs 2) assess the shortcomings of existing tools and prior art 3) design simple, pragmatic, correct solutions to fill the gaps and 3) deliver and communicate those solutions with humility. That is an admirable process I aspire to emulate.

    • @johnmachter40
      @johnmachter40 2 роки тому +16

      "error: same variable (3) already in use" ;)

  • @mika314
    @mika314 2 роки тому +33

    Thanks to Bjarne for starting and continuing to work on C++. I have been programming in C++ for 10 hours a day every day for the last 10+ years and I am still in love with it.

    • @gcma1999
      @gcma1999 2 роки тому

      What do you work with? Do you write complex code daily or you do more debugging than coding?

    • @mika314
      @mika314 2 роки тому +6

      @@gcma1999
      I make games. During the day I work on the server code and at night I work on my own single player game. Of course, debugging takes a lot of time.

  • @Morning_Rays
    @Morning_Rays 2 роки тому +8

    C++ is wonderful. Thank you Bjarne and team working on C++.

  • @leonciofigueiredo
    @leonciofigueiredo 3 роки тому +117

    You should organize a playlist with all the programming language creators. It was brilliant to interview many of them, it’s going to be a reference for many years from now. You’re the bomb

  • @nikhilrajbhar
    @nikhilrajbhar 2 роки тому +21

    I met Bjarne few days after watching this video, it was one the best experiences of my life. He is very humble, i asked him a roadmap to be better c++ programmer, he gave some excellent advice.

    • @anona4682
      @anona4682 2 роки тому +9

      Recite his wisdom

    • @hsheikh8000
      @hsheikh8000 Рік тому +2

      Can you share his advice please?

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

      @hsheikh8000 i was a 2nd year cs student struggling in programming, and he told me about the roadmap on how get better. As i had C background, he recommended that I go through A tour of C++

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

      @kenneth7239 no cap, it was an event in warsaw

  • @jshook
    @jshook 3 роки тому +196

    this man wasn't getting what he wanted out of the languages he had at his disposal, so he just said fuck it and created his own language and it became one of the best languages of all time. legend.

    • @yunjiehong4649
      @yunjiehong4649 2 роки тому +1

      Cppfront is a legacy.

    • @viisaus7187
      @viisaus7187 Рік тому +7

      except he is too nice of a guy to say the word fuck

    • @yunjiehong4649
      @yunjiehong4649 Рік тому +1

      @@viisaus7187eah, but that showed he wouldn’t hesitate to take action when he faced an issue.

    • @olivierbertier5299
      @olivierbertier5299 Рік тому

      I got to learn C++ at college. This guy is indeed epic haha

    • @kogaryu5558
      @kogaryu5558 Рік тому

      That was good, however, maybe that should have gone to a portable library or synthetic, so you can give those power to another language.

  • @jemo_hack
    @jemo_hack 5 років тому +52

    It’s amazing to here Dr. Stroustrup comment on his thought process of the C++ language. His ease of explaining a complicated subject in such elegance is truly artistic! Lex, amazing execution on you part, thank you for capturing this and sharing it with all of us.

  • @Wituz
    @Wituz 2 роки тому +28

    Such a humble guy. You can tell he is really interested in the languages and meta-level stuff. It reminds me how business-oriented programming today has become. It's so nice to see a guy like this, with so much love and thought for the craft itself.

  • @Mortum_Rex
    @Mortum_Rex 5 років тому +1473

    This reminds me of Neo talking to The Architect in The Matrix.

    • @superitgel1
      @superitgel1 4 роки тому +10

      Kekeke

    • @Robert_McGarry_Poems
      @Robert_McGarry_Poems 4 роки тому +34

      Yes, but which iteration?

    • @0dyss3us51
      @0dyss3us51 4 роки тому +5

      Indeed it was lol

    • @sherylacree9608
      @sherylacree9608 4 роки тому +1

      @@Robert_McGarry_Poems o j nii8 ki ok. Ino Koo kkjkii ki ok look j in in kkjkii kkk injn ki kkk non in k jnko. I see jkkkiiion kkk in kkk jj ki kkk kiiinni kkk ki kkkkjk bkk kkkkkkkkkkkkj kkk I. K nj kkk kkk kkk k kkk in o j kkk ki kkk ki kkk ki kkk k kkk kkk ki ino kkk kkk k I Koo kkk kkki kkk oin j kkk in ok look I kkkkjk ini8 kkk ki ik8 ok ok kkk kkkkkkkkkkkkj jkiiii ii know kkk bkk ikkki I ki in o kkk kknk ki I look no ki ok kkk kkki kkk kkk kkk kkk ki kkk i kkk nkkjojkn in kkk nj kkk ki kkk kkk ki kkk k kikkoman I nkkkiiiiiki kkk kkkkkkkkkkkkj kkk kkkkkkkkkkkkj kkk konijn ok in o kkk kkki n ok k kkk ki kkk kkk Koo kkk ki kkkkjk. I ki k look n 8kii kkkkkkkkkkkkj j job j nj k jj ki kkk k job i kkk know ok Koo. Jo okkoo kkk kkk kkk jj n kkk njk j kkk in o kkk ki job ojko kkk nj kkk k kknkkkkkk kkk nj kkk know ki n kkk kkk in ookj kkk k kkk Koo ki okknjo kkk Koo noj Koo kkk jj j kkk kkk Koo k kkk ki. J Kkk kkk kkkik o look kinn kkk bio kkk jj kkk n k k kkk I in i k in i in knonkik kkk kkki k k kkk n kkk kkkkkkkk k jj no kkk I kkkkjk k ki kkk kkkkkkknkkkkkkkkkk kkk k k kkk k in ki ok ok Koo inknkkij ii Koo in k in k I kkk kkk kkk nj in ki I kkk I ki bio kkk iijo. J Jon nj kknk I Koo ok kkk njoni kkk kkk ki Koo. Ok kkk kkk njk I kkkkjk I kkk ki k kkk kkk k kkk I kkk jj kkk onkjn j Koo k inn nj kkk ii k nj. J nj ki okj kkk kkkj nj kknk k Koo k k k k kkk kkki. Jk kkk. Ok no ookkknk k kkk k kkk ok kkk kkk k ink k n nnn. K n. Nn. K k k nok. I. K. Nj. Kkkkkkk k nj nok n k ii o. N n k jj k 8 k Koo ki k jj k. I k jj. I I k. Jk k kkk k jj pjok. Nn kkk k I n. Nkkk k k k k kkk nj ki ok. I I k ki k kkk 8 kkk. Ok k nj k. Ii k I. K. K no n n k kkk kkk. N. K. N ink. N. Ok ii k. N n ok. Ookj. Ok. N. No nj k jnko kkk. I ki k jj n k. K. K ii. N n o ink on k n o nnk n. K. Koo kkk k ii know. K kkk k o kkkkjk k. Jnj. N I n no ok n ok n nnn kkk k nj I ok. K. I k k k k k n n I I. I I n kkk no nj k nkkkkk ok n kkk onnk n ink ok nnk jn nj. N I j. N. J n. N look. Nj in k in all. J. K k n k k. K k I ki kkk k k nok nj ki 8 k jj k k. Kkk k o. I n nj onk k k k k k I kkk kkk jj k k k k kkk ki I j k kkk 8 k k k kkk ki kkk ki kkk n kkk kkk k kkk jj j k kkk nj k kojjn n nnkk no ki. I ii k ok Kno kkk kkkkkk knkkk k k n k k k k jj k k k k kkk k kkk kkk k kkk k nkkjkkkjk ki nj n kkk kkk nj kkk k Koo kkk inn k k k jj k k nj ink. K jj k k jj ki nnk kkk kknk k Koo kkk kkk k kkk k n ki n in on Koo njk. K njk inn Kno kkkkkkkkk kkk nj in ki. N k. J I. Kkk nn nn kkk jj o kkk Koo k kkk kkk kknk n in kkjkii kkk kkk k kkk kkk k kkk kkk kkkik kkk k jj ki k kkk. K kkk kkk jj ki nkkk kkk k k kkkki. K k k nkkjkkkjk no ki kkkkkkk j kkk jj in n kkk kkkkkkkk ki I in in nkkkk kkkkkkkk ki kkkkkkkkkkkkj ki k kkkkjk kkk kkkkkkkkkok k kkk k n kkk ki jj njk jj kkknnknnknnkkkkkkknnnk jj kkk kkkkkkinnkknnkknnkknkkknkkknokknkk k n kjkkkkkjnnnn kkk jj kkk k jj I knjnknkk nnkk k kkkki jk kjkninnkjkniknknnnkinn onknoonj kkkkkkk knjnonjjnkikjjjninijkjnnkknojnk j njjnonoini o jnknnjjonnokno ii jnjkkonnkn k k oki. Knnoji no nnknkji nnknkji ok nkin jknknkknnjnnnkkknkkkno kjjonnkkkji kojnnk jni

    • @Robert_McGarry_Poems
      @Robert_McGarry_Poems 4 роки тому +13

      @@sherylacree9608 You forgot to close the script;

  • @seanfitzgerald4207
    @seanfitzgerald4207 5 років тому +285

    "By the way, philosophy is important. You can't do good language design without philosophy, because what you are determining is what people can express and how."

    • @McRingil
      @McRingil 5 років тому +27

      The difference between Bill Nye or Tyson and the real scientist is that he understands the foundations of a field and assumptions made in the process.

    • @caseypdx503
      @caseypdx503 4 роки тому +10

      @@McRingil I assume by "Tyson" you're talking about Neil DeGrasse? If so, I'd say there is another significant layer of separation between Nye and Tyson...
      While they are both public figures, spokespeople, etc...Bill Nye doesn't even have a masters...he has a BS in engineering, while Tyson has an MA and a PHd...
      I think that's worth mentioning.

    • @McRingil
      @McRingil 4 роки тому +1

      @@caseypdx503 Tyson is on theleft side of the comparison here but I don't really remember him specifically going against philosphy.

    • @arthurswanson3285
      @arthurswanson3285 4 роки тому +6

      So why is c++ such a steaming pile of fecal matter?

    • @McRingil
      @McRingil 4 роки тому +30

      @@arthurswanson3285 because you're dumb and can't handle it

  • @javierfernandez6327
    @javierfernandez6327 5 років тому +68

    The world owes Bjarne in so many ways... thank you Lex!

    • @CygnusX-11
      @CygnusX-11 17 днів тому

      Yet, I bet no one would stop him in the street for a pic or something, it's crazy that the people who actually built civilization aren't as known as stupid people.

  • @KHANPIN
    @KHANPIN 2 роки тому +7

    There is something so satisfying hearing Bjourne talk about the fundamentals and low level code, as well as OOP. Definitely makes me want to get back into learning about low level code, as well as the concepts of OOP.

  • @jphonevids1065
    @jphonevids1065 5 років тому +40

    this is one of the best interviews i've ever seen, superb. Bjarne is a treasure

  • @aimantlavielj
    @aimantlavielj 2 роки тому +16

    What a privilege to be able to see such a legend and listen to his thoughts.. I was just a kid learning programming 20+ years ago - and back then this name was like a name of a god to me and others around me. Mindblowing.

  • @Laz3rs
    @Laz3rs 2 роки тому +76

    The fact lex was able to have him on is incredible. What this man has done for computer science!!

  • @TheSulross
    @TheSulross 4 роки тому +21

    In the early 90s I met Bjarne at a Usenix conference. Presented a problem per C++ and a proposal to address it, that he took an interest in and we corresponded via email for a while about it. Alas, at the time RTTI ended up being the lion share of C++ mindset for new improvements. And the problem I was looking at ended up being addressed by Microsoft with their COM implementation - which made it sort of feasible to have more or less practical runtime loadable modules extendability. But what was cool was that Bjarne is a great guy that is not aloof, but approachable. Lot of flame wars over the decades saying this or that, but in my book, Bjarne is a class act. And he's a giant in the world of computer science and programming languages.

  • @ginowadakekalam
    @ginowadakekalam 5 років тому +29

    0:00 - Introduction
    1:40 - First program
    2:18 - Journey to C++
    16:45 - Learning multiple languages
    23:20 - Javascript
    25:08 - Efficiency and reliability in C++
    31:53 - What does good code look like?
    36:45 - Static checkers
    41:16 - Zero-overhead principle in C++
    50:00 - Different implementation of C++
    54:46 - Key features of C++
    1:08:02 - C++ Concepts
    1:18:06 - C++ Standards Process
    1:28:05 - Constructors and destructors
    1:31:52 - Unified theory of programming
    1:38:10 - Machine learning 1:44:20 - Proudest moment

  • @kvasios
    @kvasios 5 років тому +281

    This podcast is a gift to the humanity

    • @operatoncreation6396
      @operatoncreation6396 2 роки тому +1

      i have glazed chicken wing bits on my elbow, also drunk.. but gonna pass out to this thinking about that time i wrote the best aterm window and setup the best scripts...
      then i formatted and installed windows to play age of empires 2.... =\

    • @operatoncreation6396
      @operatoncreation6396 2 роки тому +1

      linux just had to make games work... nobody nerds out 24/7...

    • @jpsxlr8
      @jpsxlr8 2 роки тому +1

      true!

  • @domaincontroller
    @domaincontroller 2 роки тому +6

    05:44 classes used for define type, simula, Nicklaus Wirth 06:19 brief history of programming languages, Fortran (formula translation), portability 08:09 Cobol, business people 08:24 algol, type, scope, not a set of translation phases, syntax, lexical, technical breakthrough 09:27 then simula came along to make that idea more flexible 10:58 for me the key idea, basically I could get my own types, that's the fundamental idea, under the constraints, hardware, environment 13:47 lisp, performance, reliability, deployability, cost of hardware, I don't like things to be too dynamic 15:47 smalltalk, ML, Haskell 16:45 it's good for any professional programmer to know at least five languages 18:09 the important thing that the number is not one 18:53 it's actually good to know machine code, machine architecture, assembler, c++ 20:21 Jason turner, ua-cam.com/video/zBkNBP00wJE/v-deo.html 22:40 machine code and C++ 22:45 functional languages, you can learn a lot, I don't care which, pick Haskell or ML, type notion that's really strict 23:08 you could pick JavaScript, python, ruby, when you build a tool you do not know how it's going to be used 24:13 bitcoin mining 25:07 original story of C++, efficiency, reliability 28:45 security, type, SQL injection 33:12 correct code looks like, c++ core guidelines 36:39 static checkers, sloppiness, great fan of static analysis 38:33 leaks, static analysis, error handler 42:00 tension between efficiency and abstraction, object-oriented programming language, I've never said that 47:15 algorithm, lock free, compiler techniques 50:15 GCC, compilers, single implementations, monoculture, clang 54:07 llvm 54:50 c++ is for people who wants to use the hardware really well and then manage the complexity of doing that through abstraction 55:21 thats looks very much like C, it has loops, variables, pointers, 55:57 after Dennis Ritchie, I'm probably the major contributor to modern C, Brian Kernighan 56:15 this C vs C++ fight are for people who don't quite understand what's going on 56:32 abstraction 59:26 vectors, Fortran ~ 01:01:10 implementation, simula, object-oriented, virtual function 01:09:46 generic component like a sort function

  • @chswin
    @chswin 2 роки тому +15

    I think he enjoyed this. You let him takes his time and didn’t rush him. One of his most fascinating interview. Thank you!

  • @cheesuscheetos4076
    @cheesuscheetos4076 4 роки тому +471

    "These C vs. C++ fights are for people who don't quite understand what's going on."
    Linus Torvalds: *Angry typing of e-mail intensifies*

    • @dko1905
      @dko1905 4 роки тому +23

      @popasmuerf It requires a bit of knowledge to create the most used OS in the world. Linus also uses C because it's simple, C++ can be a real mess to deal with, and for an added bonus C compiles faster.

    • @dko1905
      @dko1905 4 роки тому +5

      @erik masterchef I admit I was wrong, but creating a kernel is still a big job.

    • @NickEnchev
      @NickEnchev 4 роки тому

      So true!

    • @siddharthupadhyay6347
      @siddharthupadhyay6347 4 роки тому +3

      @Mermaids love dickYou are saying “forked” as if Unix’s source code was open source at that time.

    • @ObsessiveClarity
      @ObsessiveClarity 4 роки тому +3

      @Christian Weissmuller Do you disagree that a wider array of ideas can be expressed directly in C++ than in C while maintaining the same performance?

  • @tijani3141
    @tijani3141 4 роки тому +3

    Longest video I have ever watched on youtube that I didn't skip around . Thanks Lex. Thanks Bjarne for doing the interview.

  • @tannerbarcelos6880
    @tannerbarcelos6880 5 років тому +50

    This guy talked about the “turning left of different vehicles” being the spark of inheritance and polymorphism, and now I understand it 😂 it’s safe to say, there’s only one person who can truly teach c++, and that’s the inventor of it lmao. It’s makes sense to define a virtual turn left method and then whatever vehicle off the base class can use it for its form of vehicle at run time. Truly amazing story and explanation. C++ is great.

    • @roronoa_d_law1075
      @roronoa_d_law1075 5 років тому

      Was c++ the first object oriented language ?

    • @alecpbennett
      @alecpbennett 5 років тому +12

      @@roronoa_d_law1075 No, that was Simula. He references it a couple times in the discussion. His leap was to make "C with Classes"

    • @devrim-oguz
      @devrim-oguz Рік тому +2

      In class they always teach it like an animal inheriting its features etc. Which didn't make any sense to me at all. Seeing it in the form of a problem is a better way to understand it since you can tell where did this solution originated from.

  • @dragonore2009
    @dragonore2009 4 роки тому +11

    This was my favorite episode you did so far, it may not be the most popular by views, but I enjoyed it. Bjarne Stroustrup is such a national treasure, a man we can learn allot from. I enjoy his talks on C++ whenever cpp con happens.

  • @JBravo69
    @JBravo69 2 роки тому +296

    Since programming has become such a fundamental part of the 21st century perhaps the Swedish Nobel committee should consider a Nobel prize in this category 😊

    • @peterk2735
      @peterk2735 2 роки тому +41

      Especially since all of STEM relies on programming these days. In the past, mathematics was what tied it all together, but in the modern world none of it would be possible without programming

    • @itdepends604
      @itdepends604 Рік тому +12

      There's not even a noble prize for math though

    • @TheCuriousLifeOfCode
      @TheCuriousLifeOfCode Рік тому +15

      Turing Award?

    • @MikkoRantalainen
      @MikkoRantalainen Рік тому +18

      @@itdepends604 Some say that there's no math category in Nobel prizes because a mathematician married the girl that Alfred Nobel fancied after. I guess Alfred was a bit bitter about that and excluded mathematics from the prize.

    • @Pepespizzeria1
      @Pepespizzeria1 Рік тому +3

      Hilarious really as Nobel undoubtedly had to use math for his dynamite

  • @PaxiKaksi
    @PaxiKaksi 5 років тому +95

    1:43:47
    Tensorflow is a good example of that.
    You can give all those libraries with Python to AI/Data scientists/Neurophysicist but under it you have a computer scientist/hard-core engineer who made it with *C++*

    • @uncommonsensor
      @uncommonsensor 4 роки тому

      What did he say, I can't quite make it out

    • @mv2e19
      @mv2e19 3 роки тому +20

      @@uncommonsensor "all of this ai stuff is on top of c++"

    • @uncommonsensor
      @uncommonsensor 3 роки тому

      @@mv2e19 thanks

    • @ronaldhofman1726
      @ronaldhofman1726 2 роки тому

      nicely put, al the "esy" to use ready made libr and compnents as written in C++, , people have to learn C and C++ and leave the other languages, i hate best effort languages like java and python it;s intermdiate language and needs a VM , comming with with overhead penalty.

    • @the-designer-
      @the-designer- Рік тому

      Don't tell him about torch

  • @drew4054
    @drew4054 4 роки тому +12

    Awesome podcast. I am studying C++ as my main language in my BA in CS. Loved to hear the history and meet the man behind the curtain. Good stuff Lex.

  • @patriciat1694
    @patriciat1694 2 роки тому +19

    I barely ever got a C+ in school , yet as a seventy year old, I have the regular opportunity to listen in to Lex..and now to hear about C++😉

    • @YyNRCyY
      @YyNRCyY Рік тому

      Badass 70yr old!

  • @philipogunbona8602
    @philipogunbona8602 5 років тому +26

    Lex, thank you very much for bringing the legendary Bjarne to your channel. 🙏.
    The question about comparison between machine learning and C++ is unclear. One can implement machine learning in a variety of languages including C++. Machine learning is a way of building the model that describes a system using extensive data collected from the system while operating. The form the model takes may be different from the usual analytical closed form that one may be used to, but once the model is learned, programming the system is no different from what we have always done. A closed form analytical model is prone to error as much as a model derived from learning from data. The main difference is that we feel comfortable with closed form analytical model because we can name the variables and their interactions in the model. But a model is nothing but an approximation of “truth” about the system under consideration.

  • @george480
    @george480 5 років тому +102

    “Because we can surely do better than we do today” Phrase of a legend.

    • @Bobbel888
      @Bobbel888 2 роки тому +1

      strong statement on the base of being already brilliant.

    • @xybersurfer
      @xybersurfer 2 роки тому +3

      no. this is normal. imagine if he said that we can't do better than we do today

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

      Because we can surely do better than C++ and the obsession of creating class hierarchies for everything. Because the assumption that the world is made of objects is fundamentally mistaken, the world is only made of processes, and objects are only illusions created by temporarily repetitive enough processes.

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

      @@Bobbel888 no

  • @Luxcium
    @Luxcium Рік тому +2

    For each programmer 👨🏼‍💻 who has made some *C++* code available to us *TypeScript developers* hidden behind the JavaScript code in an NodeJS Package Module _( NPM acronym is - _*_Not Perfectly Managed_*_ )_ I will have to say thanks for your work… I am so passionated about high level languages I didn’t choose to go deeper into the C++ journey… Knowing a small subset of C not to die in my journey and like driving an automatic car first and never feeling bad about not driving manual 😅😅😅😅 I am shameless but grateful… Gratitude is encoded in the fabric of Lex Friedman podcasts and I am also grateful for being able to witness this interview…

  • @agustinbcu
    @agustinbcu 5 років тому +33

    C++ opens to me a new world, I', started with version 2 and later the 3. The C++ compiler war was great. Thanks for your contribution.

  • @swaminathan_r1
    @swaminathan_r1 Рік тому +1

    I am happy that this channel and these interviews are present. Thank you 🙂

  • @abdoulayediallo3777
    @abdoulayediallo3777 5 років тому +178

    Yeah this guy is a Legend. I love C++

  • @marcsman07
    @marcsman07 5 років тому +189

    Amazing! Lex has some serious podcast cred with all these big names hes able to get on. Keep it up!

    • @xDMrGarrison
      @xDMrGarrison 2 роки тому

      ikr xD

    • @billlets5460
      @billlets5460 2 роки тому

      Yeah, curious--not really oddly connected if you consider who he is--but the industry/public needs a common community conduit for communication.

  • @KasparJohannes
    @KasparJohannes 5 років тому +693

    How about Linus Torvalds
    next?

    • @platin2148
      @platin2148 5 років тому +41

      We would definitely need a C advocate also on this show.
      I mean when starsoupe makes it then why not Ken Thomson.

    • @90hijacked
      @90hijacked 5 років тому +18

      @mint CHILL There would be no linux without the GCC, What about stallman next?
      Oh right, we probably won't be hearing much from him either.

    • @nicolareiman9687
      @nicolareiman9687 5 років тому +6

      @@90hijacked he's probably gonna promote senders for presidency rather than talk about gcc. Stallman is not that technical person even though his background is.

    • @snlagr
      @snlagr 5 років тому +1

      Let's start a petition for it

    • @Misterz3r0
      @Misterz3r0 5 років тому +11

      @@platin2148 starsoupe? haha

  • @rajeswarigopal772
    @rajeswarigopal772 3 роки тому +3

    Ian a life long C++ programmer- of course graduated from Fortran & Boland Turbo C++ ! But I have not heard about C++ Builder!!! However it is great to from Einstein of C++. Thanks for the opportunity! Keep doing
    From
    Dr. S. Gopal, India

  • @k1ngjulien_
    @k1ngjulien_ 5 років тому +82

    The Pong game he was talking about by Jason Turner was actually written for the C64 not Motorola.
    Here's the video for that: ua-cam.com/video/zBkNBP00wJE/v-deo.html

    • @MarcofAmerica
      @MarcofAmerica 4 роки тому

      Bookmarked

    • @Blendletan
      @Blendletan 4 роки тому +1

      This comment really should be pinned

    • @danoak9371
      @danoak9371 4 роки тому

      Was looking for this link. Thank you!

  • @amotorcyclerider3230
    @amotorcyclerider3230 5 років тому +2

    20 years back, I had communicated with Bjarne Stroustrup with a question on virtual functions, virtual table, pointers. Within a few weeks he responded with a detailed email. I wish I had saved that email. His response helped and vouched to prove my solution was right back then while the client argued it was not. Looking up functions in a virtual table vs direct call. There is always a cost for flexibility. It all depends on the use case (or user story) and the scenario. Anyways, It was a great feeling to be able to directly communicate with the C++ Guru and get a response back with detailed explanation who agreed with my perspective.
    Nowadays, there are not many who knows what is Dynamic Binding and Polymorphism (or even heard about it) while it plays a vital thing in AI.

    • @bloodycrepe
      @bloodycrepe 4 роки тому

      Isn't polymorphism one of the core concepts of OOP? I don't think I've ever met OO programmer who did not hear about it. That statement makes no sense.

  • @marschrr
    @marschrr 5 років тому +94

    Too bad we didn't had the podcast in time for John McCarthy or Dennis Ritchie =/. On the other hand, Lex's work it's being far better than we could expect, every week.

    • @hexa3389
      @hexa3389 3 роки тому +2

      We gotta get Gerald Sussman, Rob Pike, and Ken up here as well.

    • @rahulvig5298
      @rahulvig5298 Рік тому

      @@hexa3389 that would be awesome.

  • @KerryOConnor1
    @KerryOConnor1 5 років тому +50

    he seems quite pleased by the intelligent questions, it's charming. i've been waiting for the right moment to crack the C++ book on my shelf.. i sense it's time has come

  • @tigrantadevosyan731
    @tigrantadevosyan731 2 роки тому +7

    The story of the creation of c++ is amazing. Such a humble person created one of the most important programming languages that are used in so many places. For more than 30 years c++ did not have real challengers for certain tasks and even though Stroustrup himself notices that languages like lisp, python, javascript, etc... are great for certain things but sometimes you need that zero-overhead abstraction to write reliable and efficient software. The only real challenger we currently have is rust which proposes really interesting ideas, I guess only time will show how useful of tool rust will become but it seems great that innovation on that front did not stop.

  • @lowmax4431
    @lowmax4431 2 роки тому

    I'm so happy to have the opportunity of hearing a conversation from someone that started it all. It's not often you get to hear a long form interview from historical figures like him.

  • @Andreas-yy8uk
    @Andreas-yy8uk 2 роки тому +9

    Never written a line of code in my life. Still listened and loved the entire podcast. Thanks to Bjarne and Lex

  • @the_arung
    @the_arung 4 роки тому +3

    "There's more to it all than just code, but code is central". You can be proud of your life's work, Bjarne. A big salute to the legend!

  • @nojvaz2392
    @nojvaz2392 5 років тому +15

    i watched the whole conversation. thank you!
    I learned a lot just from from this video.

  • @triplef3v3r
    @triplef3v3r 3 роки тому

    Omg this video must be the most valuable thing you can find in this messy world. Thank You Lex for having the king talking in front of you.

  • @dispatch3499
    @dispatch3499 2 роки тому +10

    Programming:
    Phase 1: Being able to get away from machine code to more abstracted code based on pure mathematics.
    Phase 2: Adding types and scope.
    Phase 3: Inheritance and runtime polymorphism....

  • @ppalutube
    @ppalutube 5 років тому +5

    Thanks for bringing in one of the gods of modern programming languages. It was so great to watch even after a very long day!

  • @nickbelanger5225
    @nickbelanger5225 5 років тому +35

    Wow! I've always been a fuge fan of Bjarne as I use C++ on an almost daily basis as an engineering student, and I love it. This is gonna be good!

  • @cesar_otoniel
    @cesar_otoniel 10 місяців тому

    1:40 The smile right after the question explains how excited Lex was for this interview.

  • @kilocide6242
    @kilocide6242 5 років тому +69

    I'm only a few minutes in but I just realized I'm watching a podcast where the inventor of c++ is talking about programming in the early SIXTIES. My mind is blow.

  • @SamuelHauptmannvanDam
    @SamuelHauptmannvanDam 4 роки тому +149

    The best thing about Bjarne Stroustrup, is that if you'd imagine a guy, who would have invented C++, he looks like it.

    • @dmoon9037
      @dmoon9037 4 роки тому +10

      Is that called a self-fulfilling recursion of perception?

    • @keenobaerry3195
      @keenobaerry3195 3 роки тому +13

      because the stereotype is based on him

  • @jamesanderson6882
    @jamesanderson6882 5 років тому +26

    I would love to hear a conversation with: Gerald Jay Sussman, Guy L. Steele Jr., Robert Virding and the Knuthinator: Don Knuth! I wrote c++ for 13 years so this was an interesting talk.

  • @w4gap
    @w4gap Рік тому

    One of, if not THE, most significant conversations on software engineering principles and philosophy I've had the pleasure of listening to. Very well done, as relevant today as it was when originally recorded.

  • @Toumasu
    @Toumasu 4 роки тому +6

    so happy theres a podcast featuring guys like Bjarne. keep it up, Lex

  • @edenalmakias817
    @edenalmakias817 5 років тому +9

    Great interview!
    This guy is really good at speaking and expressing himself.

    • @rdubb77
      @rdubb77 5 років тому +1

      He's a Professor at TexasA&M and lectures extensively as well. Check out his keynote speeches at each year's CPPConvention.

  • @misanthrophex
    @misanthrophex Рік тому +3

    In a hundred years or so, people will watch this interview and be in awe seeing these people that paved the way for the grandeur of humanity.

  • @JoeHADDAD-pt2fo
    @JoeHADDAD-pt2fo 2 роки тому

    This channel is a gem, usually youtube is full of junk but this video made this advertisment webpage into something nice.

  • @rftulak
    @rftulak 5 років тому +36

    Those most grateful are those who used to write device drivers in "C" Tell Bjarne THANK YOU!

    • @nullbyte2215
      @nullbyte2215 5 років тому +2

      rftulak agreed.

    • @YoloMonstaaa
      @YoloMonstaaa 5 років тому +1

      @@nullbyte2215 Every time you do char* lol

  • @pratik245
    @pratik245 2 роки тому

    'There are things you can regulate but not inspiration'. Bjarne... Simply marvelous insight

  • @kazwalker764
    @kazwalker764 5 років тому +14

    I was surprised that the functional languages got many mentions and that telecom as a use case was brought up quite a bit, but there was no mention of Erlang.
    Either way, this is amazing to listen to.

  • @wrench-weld-build6545
    @wrench-weld-build6545 2 роки тому

    DUDE.....the exposure to these people is awesome. WHAT YOU DO WITH IT IS THE KEY. People pay big bucks to listen to these types of folks.
    This channel is like being back in college but wayyyyy more betttterrrrrer. I am going to finally actually learn programming as it applies to my industry because of guys like lex. It gives me context....which I need before I spend a bunch of time learning something complex.
    It was so hard to learn in college because it was so rigid. I want to use programming as a tool. I don't want to dedicate my life to it. But listening to high level people like this in the field reduces all the b.s. you had to go through in college.
    Its like having a coach....and the problem with college professors is they do not teach to apply. They only know how to learn.
    A tool is something you use to achieve something. You don't have to be a tool maker to use it for its intended purpose, but it helps to be able to reference the tool makers knowledge.

  • @MilMike
    @MilMike 4 роки тому +431

    for people who work with C++ every day, this interview must be like a interview with god.

    • @kadambachannel
      @kadambachannel 3 роки тому +15

      Last 12 yrs basically, 🙏

    • @piechulla1966
      @piechulla1966 2 роки тому +9

      C++ has always been complicated. And the development goes on and on. Stroustrup does not exactly stand out as a brakeman. The question is how "modern" your code should be. If you run a static code analysis according to the C++ Core Guidelines against a 30 year old code base: 10000 to 20000 warnings are nothing special there. The idea of what good C++ is has changed over time. Because C++ is always evolving, you have to consider how "modern" you can afford to be. And whether it really makes a difference. I don't rewrite proven legacy code just for fun. You don't have that much time. But sure: A tool that checks your code against the C++ Core Guidelines is of course a blessing! I can't imagine doing without such tools anymore.

    • @ijoyner
      @ijoyner 2 роки тому

      Interview with god. That is why C++ has become a cult. Stroustrup is to C++ as L. Ron Hubbard is to Scientology and they are both to good thinking as Hubbard is to Bertrand Russell.

    • @renegadeace1735
      @renegadeace1735 2 роки тому +8

      more like an interview with Satan

    • @SOMEONE-eq5bu
      @SOMEONE-eq5bu 2 роки тому

      @@renegadeace1735 why

  • @astroboy01
    @astroboy01 4 роки тому +1

    Inspiring and honest... not cocky at all and humbling ...
    Thanks !

  • @Chiramisudo
    @Chiramisudo 5 років тому +14

    1:39:53 "Not everyone can become a great artist; but a great artist *can* come from *anywhere*." -- Anton Ego (Ratatouille)

  • @markovujanic
    @markovujanic 2 роки тому

    Thank you Lex for this and many other Interviews, you created library of such a enormous value that will be valued many decades from now.

  • @nilanjansarkar100
    @nilanjansarkar100 5 років тому +55

    One of the living legend of Computer Science

  • @Kybalion88
    @Kybalion88 5 років тому +6

    We really appreciate this kind of things, the interview. Thanks Lex for making it possible. So hyped up!! Its a pleassure to hear how Bjarne comunicate computer concepts...

  • @mexico14000
    @mexico14000 2 роки тому +1

    The man who made my CS experience a living hell, but proved useful on the long run.

  • @samiehessi8163
    @samiehessi8163 5 років тому +4

    Those diagrams and crops from wiki/webpages are great too. Thanks for the extra work!

  • @henrysmith9725
    @henrysmith9725 4 роки тому +2

    I love how Mr. Stroustrup is one of the most influential people in the world and is a normal guy who’s fantastic at explaining himself.

  • @user-qy2wf2lt6v
    @user-qy2wf2lt6v 5 років тому +9

    Mr. Stroustrup! Thank you for you contribution to computer science!

  • @SHEEPeros
    @SHEEPeros 2 роки тому

    Loving the passion Bjarne is exuding during this interview!

  • @guillermotomasini
    @guillermotomasini 5 років тому +21

    I like what he says about simplicity, that applies to everything in engineering.

    • @nishanth6403
      @nishanth6403 2 роки тому

      @pedro gomes I like C++ but ngl this is true lmao

  • @nhabib114
    @nhabib114 2 роки тому

    Thank you for these amazing interviews. I began programming in 1983 and was an extremely ordinary programmer until 2001. After that I went back to school. History is most interesting to me. I became very good at C but always struggled with learning C++.

  • @ekbastu
    @ekbastu 5 років тому +60

    Damn u Lex, I was going too sleep after a long day at work.

  • @TheNishant1980
    @TheNishant1980 5 років тому +2

    Lex you are yourself a legend. Please publish an interview of yourself as well someday. Like me, lot many people will be interested to know as to how you are able to pose such intelligent questions to all these legends 😊

  • @nguyenduy-sb4ue
    @nguyenduy-sb4ue 5 років тому +26

    C++ is the first language i have learnt, i have a love-hate relationship with it. Nonetheless C++ is arguably the most important language that every programmer should learn. Using recent high-level language like Python is good for prototyping but in term of performance, C++ is the king , period

    • @marcsman07
      @marcsman07 5 років тому +1

      Shiiieeeet. I've been slacking by knowing only java and python

    • @naibaf710
      @naibaf710 5 років тому +7

      Python is only useful by having libraries written in C++ and C behind it. Numpy for example, but also TensorFlow, PyTorch usw.

    • @marc2377
      @marc2377 5 років тому +2

      @@naibaf710 Yep, the Python interpreter is itself written in C (and not C++ for historical reasons)

    • @vibovitold
      @vibovitold 2 роки тому

      Python is over 30 years old, your definition of "recent" seems to be a little broad

  • @xdman2956
    @xdman2956 3 роки тому +1

    amazing podcast! can't believe so many people skipped the like button on this one...
    superb, magnificent, deep conversation, as delightful as Michelangelo's masterpieces
    thank you for this!

  • @cacoolkid1
    @cacoolkid1 4 роки тому +182

    Bjourne : 24:00 ""Bitcoin uses as much energy as Switzerland. Mostly used by criminals"!!
    Lex : "Yes". Pretending as though he doesn't deal lin Bitcon!! Lol

    • @Tavernum
      @Tavernum 4 роки тому +43

      Cash is used by all sorts of criminals

    • @Muhammad-sx7wr
      @Muhammad-sx7wr 4 роки тому +18

      That was really an awkward moment.

    • @lotgon911
      @lotgon911 4 роки тому +20

      I am really shocked that so many geniuses do not understand the role of cryptocurrency in economic

    • @alaaawad7180
      @alaaawad7180 4 роки тому +15

      @@lotgon911 they do and that the problem, its the best thing ever happen to the dark market.

    • @RabbitConfirmed
      @RabbitConfirmed 4 роки тому +5

      @@alaaawad7180 It's the best thing that happened to free humans ever, but you're too stupid to understand the opportunity and rich people don't care.
      The biggest criminals are the ones who profit from central banking.

  • @paulinesz15
    @paulinesz15 Рік тому +2

    C++ is still the programming language being studied in the Universities and Colleges here in the Philippines. I've studied this by year 2004, I was expecting for new basic programming language in the field but nah. This must be the foundation. Isn't it amazing watching this man, developer of C++🥰being interviewed for real.

    • @ryleitdept
      @ryleitdept Рік тому

      sana.halls!

    • @tequilasunset4651
      @tequilasunset4651 Рік тому

      I would argue that C is more "foundational" and there are are a lot of languages that can now do things C++ can do but better, but it is certainly a very good language and maybe the most influential among its peers.

  • @nazavode
    @nazavode 5 років тому +3

    Brilliant interview and brilliant channel, thanks.
    I don't know if it's actually doable but please consider an interview with Ken Thompson!

  • @springford9511
    @springford9511 4 роки тому

    This is GREAT stuff. I have tried to watched Bjarne a few times and it was all beyond me but you brought his ideas out of him in a way that was possible for me to understand. THANKS.

  • @fosres
    @fosres 4 роки тому +10

    Hello Lex! Awesome interview with C++ creator. I wish Dennis Ritchie was still with us. But you did have Brian W. Kernighan. May you get Ken Thompson on an interview. We would love to hear him talk.

  • @ricardootano7972
    @ricardootano7972 2 роки тому +1

    Around 1:30: "Philosophy is important. you can't do good language design without philosophy because you are determining what people can express and how".
    I've had long debates with many "hardcore engineers", that humanities are really important for software development. And that is an incredible sentence that defines what I feel better than I'd ever express.

    • @peterk2735
      @peterk2735 2 роки тому

      At the end of the day, outside of hardcore academia, programming is a practical skill that you use to create tools with which people resolve everyday problems in their respective fields. It doesn’t matter if it’s your mom ordering a frying pan or a quantum physicist in CERN studying antimatter, we create something that makes their lives easier. So apart from the specific domain knowledge, understanding humans and society is paramount if you want to be a good programmer

  • @AlphaFoxDelta
    @AlphaFoxDelta 5 років тому +34

    C++ is what has made our modern world possible

    • @platin2148
      @platin2148 5 років тому +4

      Alpha Delta incorrect remove the two pluses and then it's true.
      C++ help us to make that all to a huge mess and didn't even get it's own basics right e.g OOP.

    • @the-bgrspot6997
      @the-bgrspot6997 5 років тому +5

      @@platin2148 C++ is not C with classes my dude

    • @platin2148
      @platin2148 5 років тому +1

      The-BGR Spot man what do you think methods are magic sauce take a look at the assembly.
      Classes are just a bunch of fancy syntactic sugar. And actually the impl that C++ has is quite horrible and very restrictive.
      Not that there are any other languages that did better in implementing the true OOP paradigm which meant immutability was key.
      It is C + Classes and now with Polymorphism because C++ just picks up everything it can find because it doesn't have a goal to be something.
      And still the assertion that without C++ nothing would run is wrong nothing would work today if C doesn't exists the hack we wouldn't even have C++
      because guess what it was based on a c compiler. Your OS you are currently writing this angry message back is also very likely either unix or nt based and so all kernel code is C code not C++ because it is just impossible to get the abi stable with it and that for years (even apple did see that)
      If you want to see how horrible C++ is try to build a compiler with a bit of customization with LLVM.
      Or just look how long clang takes to build.

    • @AlphaFoxDelta
      @AlphaFoxDelta 5 років тому +2

      @@platin2148 Yikes.

    • @adama7752
      @adama7752 5 років тому +1

      @@platin2148 This guy gets it. Memory bandwidth is the problem that more OOP can't solve.

  • @marietta5316
    @marietta5316 3 роки тому +2

    This man is a legend. I read about him as an undergrad in 1985.

  • @zavarzak
    @zavarzak 5 років тому +3

    Thank you very much, Lex! Beautiful guests, beautiful podcast!

  • @txoojvamproductions6898
    @txoojvamproductions6898 3 роки тому

    Very thankful for Lex to showcase our greatest human minds. Future generations will appreciate who actually built our environment.

  • @FabianBarajas
    @FabianBarajas 5 років тому +4

    Stroustrup seems like quite the character. Good sense of humor.

  • @vergelab3399
    @vergelab3399 Рік тому

    thanks Bjarne Stroustrup, for C++; and tp Lex for all these great interviews

  • @isoadvector5819
    @isoadvector5819 5 років тому +2

    Almost two hours of extremely enriching brain massage - Thank you very much!

  • @camelcai
    @camelcai 3 роки тому +6

    Last week I had a phone screen with a robotics company, I was grilled on C++ templates , when do they get instantiated , how and why in headers etc. Wow templates are such a beast if you use it for Metaprogramming ! I used C++ in 1998 and then 20 years of Java/Python and now C++ is so much better I started loving it at second sight.

  • @learnpythontogether4490
    @learnpythontogether4490 5 років тому

    I am glad I have the opportunity to hear this podcast. A lot of people are here I personally follow their video. After hearing this podcast I fill like I am part of something.

  • @МихаилЧертушкин-я2с
    @МихаилЧертушкин-я2с 5 років тому +4

    Put the "like" prior to watching. Subsribed after watching. Thanks a lot from Russia for making this real.

  • @imensonspionrona2117
    @imensonspionrona2117 5 років тому +1

    When do you hear a guy speak that you totally agree with 100% of the time? This guy. Legendary talk, legendary guy. Thanks for this.
    And I agree, constructors and destructors are the way to go. I found that failing destructors are the best tools for pointing out flaws in your design.