Algorithms + Data Structures = Programs - Episode 46: Programming Language Awards ~ Coming Soon!

Episode Date: October 8, 2021

In this episode, Bryce and Conor talk about math, what the Nobel Prize of C++ would be called and the future programming language awards!Date Recorded: 2021-10-03 Date Released: 2021-10-08Beard Twitt...er ThreadFunctional vs Array Programming TalkMatt Godbolt on TwitterTwo’s Complement PodcastBen Deane on TwitterTroels Henriksen on TwitterADSP Episode 43: Parallel Scans and AssociativityADSP Episode 44: Should You Drop Out of School?ADSP Episode 45: Algebraic Groups and Birds!Lex Fridman #226 – Jo Boaler: How to Learn MathLouis Dionne on TwitterHana Dusíková on TwitterIntro Song InfoMiss You by Sarah Jansen https://soundcloud.com/sarahjansenmusic Creative Commons — Attribution 3.0 Unported — CC BY 3.0 Free Download / Stream: http://bit.ly/l-miss-you Music promoted by Audio Library https://youtu.be/iYYxnasvfx8

Transcript
Discussion (0)
Starting point is 00:00:00 And then, oh yeah, that's what I was also going to say, which I forgot to say last time. Ben said, you know, for a math major, Bryce seems to know very little about math. It is true. It was a very bad student. Welcome to ADSP, the podcast episode 46 recorded on October 3rd, 2021. My name is Connor, and today with my co-host Bryce, we talk about math, what the Nobel Prize of C++ would be called, and the future of programming language awards. So first of all, what is this?
Starting point is 00:00:48 I was, unfortunately, I haven't really been following the twitter thing too much because i was on a 24k run this morning um and then i had to watch the billions episode uh but like jf is is trying to create this can has beard committee first of all anybody that wants to have facial hair, do not let JF or any committee. Y'all do whatever you want. Except for Connor. However you identify. I've seen facial hair on Connor and not that. You do you, including me.
Starting point is 00:01:17 I'm allowed to have facial hair too. You have such a baby face. Why would you want to muck that up by putting on a mustache that looks like a 13-year-old crew? It was. Wow. I'm pretty sure. I'm not sure if this podcast has a code of conduct, but if we did, I'm pretty sure you're
Starting point is 00:01:36 in violation of that code of conduct, Bryce. No, it looked good. I'm just giving you a rough time. Well, admittedly. Admly admittedly we don't need to backtrack bryce it didn't look good i'm just i'm just trying to make you know a wholesome inclusivity statement you do you don't let other don't let some committee that jf is you know what did he didn't he try and even put himself in charge of the committee or no he tried to put hannah in charge um also to also so uh
Starting point is 00:02:05 bryce i don't think listens to the the podcast but i had that strawberry perrier opening the other day didn't go well here we go round two this time we've got a grapefruit buble and it's gonna be magnificent it's gonna i don't i didn't understand like half the words that you just said. And no, I don't listen to podcasts. Here we go. Are you ready? Woo! Except now I'm going to have to silence you because right when I opened it, you started talking. Classic Bryce got in the way of the Grapefruit Buble opening. Yeah.
Starting point is 00:02:38 We should probably figure out where Dave is. Yeah, Dave. Don't disappoint me, Dave. I'm fired up to learn it's gonna be great episode gonna be great episode did you listen to episode 45 I sent I sent Bryce a tweet saying that I was super excited because I had forgotten that in the middle of that episode when I started giving a little preview of combinator birds how excited I got when you said that, oh yeah, I'm a big fan of birds. And that might be the single most excited I've been during one of these recordings. And yeah, while we're waiting, while Bryce is getting Dave, feel free to check out my
Starting point is 00:03:15 From Retirement talk, Functional Versus Array Programming, which premiered yesterday, October 2nd. Yesterday, for the listener listener is not actually going to be yesterday. It is going to be a week ago. But I'm proud of you. You said the listener. Yeah, I mean, I got to be honest. When I was editing it, it does sound a bit weird. We should have another poll.
Starting point is 00:03:41 Do you, the listener, prefer to be referred to as a collective as the listeners or just as an individual i feel like i've done i've done pretty well on uh on our on our polls so so uh yeah i mean i can get down for a poll so so i'm uh i started on i started unpacking my my programming books today because I have some temporary bookshelves. And I have books two and three of The Art of Computer Programming by Gnu. And you might wonder, well, where's book one? And also, isn't there like a book four? I'm pretty sure there's a book four.
Starting point is 00:04:24 Well, I was given book two and also isn't there like a book four i'm pretty sure there's a book four well i was given book two and three by my uh mentor hartmut and uh i asked him where's the rest of this at and he's like yeah you don't really need them these these two are the important ones wow shots fired hartmut yeah also bring your bring your mic a little bit uh if you did listen to the podcast you'd know that my audio quality is just 10 times or 100 times better than yours and matt gobbelt matt gobbelt and i were chatting about that the other day because we both we both edit our own uh we're the editors behind the podcast so matt has to compliment with ben rady that's his co-host's name, I believe. And yeah. Ooh, look at that.
Starting point is 00:05:06 Now say something. Yeah. See, but now I can't see you. I mean, you can never see me. I'm always in the dark. The other microphone configuration was better when I was recording from my sofa. And also my audio was better when I had a gigantic sofa to soak up all of the noise. Yeah, it's a bit more echoey now.
Starting point is 00:05:24 Also, too, if you listen to the podcast, I just remembered this. There's a bunch of things that I didn't think we were going to get to talk about today because we had Dave on. But I've started, and you're going to love this, Bryce. I've started to, every once in a while, you go on these tangents that are, you know, one time you'd start talking about your furniture for the second time. I just start speeding you up at 10 times speed um so you'll say oh and so an update on my furniture and uh yeah i'm getting my bed in a month and then we uh it's the best i have i have you know
Starting point is 00:05:57 you think as the executive producer of this whole thing that you've got the power but no the the person the person yeah of course the person who edits is is always the true that has the true power just like the person that takes the minutes always has the true power um what are the things that i was going to bring up so um yeah we talked about the algebraic groups um after right the day after that we had originally recorded that so i think we recorded it on what September 11th. I talked to Ben Dean for a couple hours on September 12th and he was, he confirmed that indeed a group is what the term that we were looking for,
Starting point is 00:06:34 for the inverse scans. What do you need? I feel like there was some other stuff though. Oh, there was, there was the, the, our ongoing debate with what's-His-Name from Twitter about whether this operator is associated or not. Oh, yeah. I didn't see your tail end of that, but I sort of— I'm pretty sure he's right now because— I told you, you needed to do a proof.
Starting point is 00:06:58 No, so I agree with him. I think—this is Trolls, Henriksen, right? Yeah, yeah. agree with him i think um uh this is trolls henriksen right yeah yeah i was agreeing with him but i think what he was i think he was misunderstanding that i was agreeing with him and just saying that my code example was wrong and then i i kept on trying to communicate i agree but you could indeed write a overload set that is different from my code example that would work and and i think he he kept there was some there was some miscommunication at some point, but the point that I was saying is that I agree with him.
Starting point is 00:07:30 You just, you needed some fancier overload set than I had in my code example. Oh, yeah, yeah, yeah. I think I would agree with that. I mean, we had the same thing when we wrote the max consecutive ones where sorting out how to write some of those overloads is a little bit complicated usually a tricky one is is the sort of the aggregating one where you've got you have your intermediate data structure on the left and the right and you have to sort out how to do you have to do some kind of merge thing yeah yeah yeah did we send a did we send a message to to dave yes i did yes but this this episode
Starting point is 00:08:10 might now become the waiting for dave aberson i mean dave is an important guy and it's sunday morning so i mean also like time zones but yeah there was a couple there was a couple things what did we what did we uh we did the the three parts of 43 44 and 45 were uh i can't remember what 43 well yeah associativity the associativity um requirements and whether yeah having a binary operation with an with overloads does that qualify as associative that was 43 then we did a tangent on should you drop out of school um you can't call it a tangent when the podcast is all tangents uh i mean sometimes we have a goal a destination and then we reach that goal and like the the parts the tangents that we take on the way to that goal are tangents,
Starting point is 00:09:06 but the path itself sometimes, it's probably all tangents. You're correct. And then, yeah, and then the group. Oh, that was the thing I wanted to correct too. I said at one point, oh, it seems like I should learn about set theory. And then Ben Dean accurately or correctly corrected me and said oh that's group theory not set theory and i was like oh yeah fair point um which shows how little i know about math and then oh yeah that's what i was also gonna say which i forgot to say last time i ben said you
Starting point is 00:09:37 know for a math major uh bryce seems to know very little about math it is true yeah i thought that was fantastic because at one point too i was like yeah i'm not you know i'm not a pure math guy and you're like well i have a math major and then we still proceeded to not really the the one key thing that i learned in my math education was how to construct a proof. And I still think that that's like the one like useful piece of knowledge that you can, that you really get out of math, a math degree. Yeah, I've been, I've been listening to, what podcast did I listen to the other day day it was one of the more recent lex friedman ones where he had on let me just go find it uh her name was i want to say joanne
Starting point is 00:10:32 kohler or joe bowler that's actually pretty close j-o and then b-o-a-l-e-r and yeah she is a math educator that's probably like an under understatement of what she does she's probably got a phd and she's a professor somewhere here let's let's go to the episode and get some uh and get some details joe bowler is a professor of mathematics education at stanford and the co-founder of u-cubed whatever that is anyways it was a very interesting conversation it was it was a shorter podcast his are usually like three hours long and this one was only an hour and a half but she was talking about how our podcast that is that is uh the key is 2.2 times speed baby and uh and then that three-hour podcast is only an hour and 20 minutes or something
Starting point is 00:11:19 but she was just talking about how like how poorly math is taught and not only how poorly it's taught, but the reputation around math that it's just known as this sort of nerdy thing that a lot of people aren't good at. When really the math that is taught in school, it's a lot of the long form multiplication and long form division and just a bunch of steps and stuff. But there's another kind of math where it's purely visual. long form multiplication and long form division and just a bunch of steps and stuff but like there's another kind of math where it's like you know purely visual and someone won she was talking about how this woman from india basically was told as a kid that you know she was terrible at math when would never be good at it or whatever and then she went on to win the fields medal which is like the nobel prize of mathematics um because she was more of a visual mathematician than she was like a... Anyways.
Starting point is 00:12:08 If we had a Nobel Prize of C++, what would it be called? Good question. Good question. If we had a Nobel Prize. Well, what is... Is it Nobel and Fields? Are those named after people? Yeah.
Starting point is 00:12:22 It would probably be it'd probably be stepanov right because whoa really well but because let's hope bianna doesn't listen to this podcast no no no no i i because bianna bianna is still active in the community right like like you you have a you have the uh an award or something is named for somebody that's like retired or is no longer no longer involved. And the most prominent C++ person that's no longer involved, I'd argue, is Stepanoff. How does this I'm not going to agree or disagree. I'm just going to ask you a question.
Starting point is 00:12:57 How does this fit with one time? You told me about your philosophy or view on not like superstar or like pedestalizing people across communities. And you were very anti sort of like, you know, oh, we should all look up to this one person and aspire to be like them. Yeah, yeah. See, that's why it would be a bad idea. But this is why I was going to say, how does this? We constantly talk about bad ideas. How does naming it after a person uh how does that
Starting point is 00:13:27 what's the word work mesh right right how does that how does it would not you would not do that oh so we're not naming it after a person now that's what i was thinking is we should name it after like uh um the compiler frustration um uh what do they call like uh the awards that they hand out at award ceremonies that you didn't actually win anything they're just recognizing like a lifetime achievement yeah it's like the lifetime achievement of compiler frustration award goes to because you know that like the majority of c++ developers careers and development cycles isn't the majority if it's not the majority it's the plurality uh is spent you know fighting
Starting point is 00:14:05 with the compiler and trying to i guess maybe at a certain point if you're louis dion or you know hana dusakova you have you ever you have you know achieved a certain level of what's the word trans you've you've you've transcended and like you have the mystic arts of, like, you know. I don't know. No, I think the more C++ you learn, the weirder your compiler errors become. Yeah. Because, like, it doesn't get better. It just gets worse because then you get to the point where, like, you write code that, like, it's not a compiler error. It's just, like, the compiler, like, fails. not a compile error it's just like the compiler like fails like it gives you an internal compiler error like an ice as they're called you know
Starting point is 00:14:50 where there's like a bug in the compiler and you have to go and diagnose it um yeah internal compiler error yeah ice i like i like the lifetime achievement lifetime achievement in like you know mount template programming or mount something you know yeah yeah yeah i like that all right we'll put it to the listener you know you tell us what the what the lifetime achievement or uh the equivalent of a field or nobel and c++ would be and we'll choose the best one. And also, who should get the first one? Because, of course, Connor and I will now host a black tie award ceremony. Are we going to have the annual? But, like, why would we just do it for C++?
Starting point is 00:15:40 I think we should do it for, oh, my goodness, Bryce, we come up. No, that's, you know, I'm being negative. I've got to tell my ego to be quiet here. But I'm just, I was thinking, and now I'm going to say it. I apologize for the hubris. But that was, that's an amazing idea. We should have the annual, like, programming language awards. It's completely zero guidelines. We just sit here, two cis-het white guys, letting the people know who gets the awards.
Starting point is 00:16:11 Yeah. We'd have to turn it into some kind of a – maybe we could do it with like a joint, you know, the podcasts come together. Yeah, we should definitely do this. We should definitely do this. I'm going to leave you to make all the arrangements all right yeah i'll try and think of um see this is this is like a perfect example of like what my job currently is like having some random meetings with people kicking around ideas most of them are bad and somebody's like oh we should do that and i'm like all right great go do it make it happen
Starting point is 00:16:51 yeah i'm already brainstorming i'm just trying to think of how to like the c++ itself get an award or do we just create the thing is is i don't know enough about um other communities but that's the thing is we could just, we'll call it, we'll call the awards explicitly in the title of them, like consciously biased, like completely acknowledging the fact that, you know, I probably only know like a couple of people in the closure community.
Starting point is 00:17:22 So if someone's getting an award in the closure community, it's one of the people that I know. how come this person didn't get the award i didn't know about them so they were not considered due to my lack of awareness of who we could call it the programming language people we like i don't know that's uh i don't think that's explicit enough of like because then it's like do you not do you not like the people that you haven't? And it's like, no. We'll brainstorm.
Starting point is 00:17:49 The Twitter, we've got a certain number of listeners now. All we have to do is say tweet at us or open an issue and poof, then we get our answer. It's fantastic. Some bubble in Roman, they had the group. That was great. And then Ben Dean afterwards told me. This is going to be like the listener is watching at least me learn every episode.
Starting point is 00:18:14 And it's going to be interesting in five or ten years. Yeah. You should teach me some stuff about combinators or something. While we wait for Dave. Is Dave coming? Have we heard from him? I have not heard from Dave. He might be asleep.
Starting point is 00:18:29 Oh, man. Do we want to do like a mini Combinators episode until Dave shows up? If Dave shows up? I think so. Okay, here we go. Oh, boy, oh, boy. Oh, boy, oh, boy. So, thanks for listening. We hope you enjoyed and have a great day.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.