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.
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
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.
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 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.
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
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.
@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++
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.
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.
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.
@@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
"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 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.
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.
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.
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.
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.
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
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.... =\
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
@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.
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.
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.
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.
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 😊
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 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.
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++*
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.
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.
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.
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…
@@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.
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
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
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.
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.
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.
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
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.
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.
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....
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.
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.
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.
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.
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.
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.
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.
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...
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++.
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 😊
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
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!
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
@@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.
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.
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.
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.
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.
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.
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
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-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.
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.
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.
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.
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.
Technically programming goes back further but yeah it's a new industry.
what is OGs?
@@thesuperyou2829 It's a slang term that stands for "Original Gangster"
I never thought of it that way, but it's very true and very profound.
I felt the same way when I came across this thumbnail
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!
Do you think will any of them consider Maria von france
Dude, install ad blocker.
Its not for free, his getting viewer base and thats more valuable than few cents out od advertise. Don't be fooled.
Adblock is not magic. You deny the content creator money for their work that you don't even have to pay for.
Ever heard of adblockers?
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
Dear Lex Thanks for your effort and providing this opportunity...
Great interview and great questions. Thank you Lex and Bjarne.
No AI?
Thanks for the timeline. It really helps me filter information! Great interview!
Thank you for the timestamps! This helps a lot and saves us so much time.
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.
"error: same variable (3) already in use" ;)
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.
What do you work with? Do you write complex code daily or you do more debugging than coding?
@@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.
C++ is wonderful. Thank you Bjarne and team working on C++.
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
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.
Recite his wisdom
Can you share his advice please?
@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++
@kenneth7239 no cap, it was an event in warsaw
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.
Cppfront is a legacy.
except he is too nice of a guy to say the word fuck
@@viisaus7187eah, but that showed he wouldn’t hesitate to take action when he faced an issue.
I got to learn C++ at college. This guy is indeed epic haha
That was good, however, maybe that should have gone to a portable library or synthetic, so you can give those power to another language.
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.
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.
well said
well, of course. he's a scientist. he started C++.
This reminds me of Neo talking to The Architect in The Matrix.
Kekeke
Yes, but which iteration?
Indeed it was lol
@@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
@@sherylacree9608 You forgot to close the script;
"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."
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.
@@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.
@@caseypdx503 Tyson is on theleft side of the comparison here but I don't really remember him specifically going against philosphy.
So why is c++ such a steaming pile of fecal matter?
@@arthurswanson3285 because you're dumb and can't handle it
The world owes Bjarne in so many ways... thank you Lex!
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.
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.
this is one of the best interviews i've ever seen, superb. Bjarne is a treasure
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.
The fact lex was able to have him on is incredible. What this man has done for computer science!!
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.
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
This podcast is a gift to the humanity
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.... =\
linux just had to make games work... nobody nerds out 24/7...
true!
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
I think he enjoyed this. You let him takes his time and didn’t rush him. One of his most fascinating interview. Thank you!
"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*
@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.
@erik masterchef I admit I was wrong, but creating a kernel is still a big job.
So true!
@Mermaids love dickYou are saying “forked” as if Unix’s source code was open source at that time.
@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?
Longest video I have ever watched on youtube that I didn't skip around . Thanks Lex. Thanks Bjarne for doing the interview.
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.
Was c++ the first object oriented language ?
@@roronoa_d_law1075 No, that was Simula. He references it a couple times in the discussion. His leap was to make "C with Classes"
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.
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.
I daresay he's an international treasure.
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 😊
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
There's not even a noble prize for math though
Turing Award?
@@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.
Hilarious really as Nobel undoubtedly had to use math for his dynamite
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++*
What did he say, I can't quite make it out
@@uncommonsensor "all of this ai stuff is on top of c++"
@@mv2e19 thanks
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.
Don't tell him about torch
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.
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++😉
Badass 70yr old!
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.
“Because we can surely do better than we do today” Phrase of a legend.
strong statement on the base of being already brilliant.
no. this is normal. imagine if he said that we can't do better than we do today
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.
@@Bobbel888 no
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…
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.
I am happy that this channel and these interviews are present. Thank you 🙂
Yeah this guy is a Legend. I love C++
Amazing! Lex has some serious podcast cred with all these big names hes able to get on. Keep it up!
ikr xD
Yeah, curious--not really oddly connected if you consider who he is--but the industry/public needs a common community conduit for communication.
How about Linus Torvalds
next?
We would definitely need a C advocate also on this show.
I mean when starsoupe makes it then why not Ken Thomson.
@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.
@@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.
Let's start a petition for it
@@platin2148 starsoupe? haha
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
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
Bookmarked
This comment really should be pinned
Was looking for this link. Thank you!
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.
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.
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.
We gotta get Gerald Sussman, Rob Pike, and Ken up here as well.
@@hexa3389 that would be awesome.
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
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.
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.
Never written a line of code in my life. Still listened and loved the entire podcast. Thanks to Bjarne and Lex
"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!
i watched the whole conversation. thank you!
I learned a lot just from from this video.
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.
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....
Thanks for bringing in one of the gods of modern programming languages. It was so great to watch even after a very long day!
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!
1:40 The smile right after the question explains how excited Lex was for this interview.
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.
The best thing about Bjarne Stroustrup, is that if you'd imagine a guy, who would have invented C++, he looks like it.
Is that called a self-fulfilling recursion of perception?
because the stereotype is based on him
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.
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.
so happy theres a podcast featuring guys like Bjarne. keep it up, Lex
Great interview!
This guy is really good at speaking and expressing himself.
He's a Professor at TexasA&M and lectures extensively as well. Check out his keynote speeches at each year's CPPConvention.
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.
This channel is a gem, usually youtube is full of junk but this video made this advertisment webpage into something nice.
Those most grateful are those who used to write device drivers in "C" Tell Bjarne THANK YOU!
rftulak agreed.
@@nullbyte2215 Every time you do char* lol
'There are things you can regulate but not inspiration'. Bjarne... Simply marvelous insight
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.
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.
for people who work with C++ every day, this interview must be like a interview with god.
Last 12 yrs basically, 🙏
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.
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.
more like an interview with Satan
@@renegadeace1735 why
Inspiring and honest... not cocky at all and humbling ...
Thanks !
1:39:53 "Not everyone can become a great artist; but a great artist *can* come from *anywhere*." -- Anton Ego (Ratatouille)
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.
One of the living legend of Computer Science
Thanks
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...
The man who made my CS experience a living hell, but proved useful on the long run.
Those diagrams and crops from wiki/webpages are great too. Thanks for the extra work!
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.
Mr. Stroustrup! Thank you for you contribution to computer science!
Loving the passion Bjarne is exuding during this interview!
I like what he says about simplicity, that applies to everything in engineering.
@pedro gomes I like C++ but ngl this is true lmao
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++.
Damn u Lex, I was going too sleep after a long day at work.
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 😊
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
Shiiieeeet. I've been slacking by knowing only java and python
Python is only useful by having libraries written in C++ and C behind it. Numpy for example, but also TensorFlow, PyTorch usw.
@@naibaf710 Yep, the Python interpreter is itself written in C (and not C++ for historical reasons)
Python is over 30 years old, your definition of "recent" seems to be a little broad
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!
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
Cash is used by all sorts of criminals
That was really an awkward moment.
I am really shocked that so many geniuses do not understand the role of cryptocurrency in economic
@@lotgon911 they do and that the problem, its the best thing ever happen to the dark market.
@@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.
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.
sana.halls!
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.
Brilliant interview and brilliant channel, thanks.
I don't know if it's actually doable but please consider an interview with Ken Thompson!
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.
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.
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.
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
C++ is what has made our modern world possible
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.
@@platin2148 C++ is not C with classes my dude
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.
@@platin2148 Yikes.
@@platin2148 This guy gets it. Memory bandwidth is the problem that more OOP can't solve.
This man is a legend. I read about him as an undergrad in 1985.
Thank you very much, Lex! Beautiful guests, beautiful podcast!
Very thankful for Lex to showcase our greatest human minds. Future generations will appreciate who actually built our environment.
Stroustrup seems like quite the character. Good sense of humor.
thanks Bjarne Stroustrup, for C++; and tp Lex for all these great interviews
Almost two hours of extremely enriching brain massage - Thank you very much!
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.
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.
Put the "like" prior to watching. Subsribed after watching. Thanks a lot from Russia for making this real.
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.