Algorithms + Data Structures = Programs - Episode 94: Special Guest Kate Gregory! (Part 3)

Episode Date: September 9, 2022

In this episode, Bryce and Conor continue their interview with Kate Gregory and talk about the future of CppNorth and her most recent PluralSight courses.Link to Episode 94 on WebsiteTwitterADSP: The ...PodcastConor HoekstraBryce Adelstein LelbachAbout the Guest:Kate Gregory is an author, sought-after conference speaker, trainer, Microsoft Most Valuable Professional (MVP), and partner at Gregory Consulting. Kate has been using C++ since before Microsoft had a C++ compiler. She is an early adopter of many software technologies and tools, and a well-connected member of the software development community.Kate is one of the founders of #include whose goal is a more welcoming and inclusive C++ community. She also serves on the board of directors of Cpp Toronto, a non-profit organization that provides an open, inclusive, and collaborative place where software developers can meet and discuss topics related to C++ software development.Show NotesDate Recorded: 2022-08-15Date Released: 2022-09-09FULFIL Mint Protein BarElderberry FlowerCppNorth ConferenceCppCast CppNorth EpisodeKeynote: “Am I A Good Programmer?” - Kate Gregory - CppNorth 2022PluralSight Courses- Kate GregoryBeautiful C++: 30 Core Guidelines for Writing Clean, Safe, and Fast Code by Guy Davidson & Kate GregoryCarbon Programming LanguageIntro Song InfoMiss You by Sarah Jansen https://soundcloud.com/sarahjansenmusicCreative Commons — Attribution 3.0 Unported — CC BY 3.0Free Download / Stream: http://bit.ly/l-miss-youMusic promoted by Audio Library https://youtu.be/iYYxnasvfx8

Transcript
Discussion (0)
Starting point is 00:00:00 the dog just went into i'm sorry this is the worst i'm gonna like i'm gonna get a new co-host price you've gone so available i'm just saying welcome to adsp the podcast episode 94, recorded on August 15th, 2022. My name is Connor, and today with my co-host Bryce, we continue with part three of our four-part interview with Kate Gregory, where we talk about the future of CPP North and her most recently released Pluralsight courses. My elderflower cordial situation, which is a perfectly ordinary drink in the UK. And every time I go, I bring back like four or five bottles wrapped up in my suitcase.
Starting point is 00:00:52 Like some people might bring back scotch if you're going to Scotland. Bryce, maybe you're going to bring back a lot of scotch, but I would just, it'd be elderflower cordial coming home with me. I am traveling pretty light to Scotland. It's just going to be a carry-on bag. So I think nothing's going to be coming home with me i am i am traveling pretty light to scotland it's just gonna be a carry-on bag so i think uh nothing nothing's gonna be coming back with me my my favorite thing this is gonna i mean i'm gonna get flamed for this but when i went to ireland for the second time to visit my sister earlier this year don't bring up the fact that you think you're irish no no that's it not the point here i mean i am half irish um i just uh will not do the i i don't think actually on this podcast i have done an
Starting point is 00:01:30 irish accent you've told the story correct i'm not going to i'm not going to because i would not let you publish an episode i mean in which you did the scottish the irish accent because you would be banned from returning to Ireland. I don't think that's true. I got a legal sister. I don't know what the opposite of a legal sister is, but she's my sister and she lives there. So I get to go. But the thing I was going to mention is that I discovered this protein bar called Fulfill.
Starting point is 00:02:03 And the mint flavor is the best protein bar I've ever had. So, I mean, Kate's got her black licorice Mentos and I think it was elderflower tea. Elderflower something, something. I have a fair cordial. Yeah. Yeah. And Bryce has got a secret hot chocolate. That's a little bit different than tea.
Starting point is 00:02:22 Or sorry, what is, I don't even, I heard elderflower and I think my brain just like attached because I've seen elderflower. What is cordial? It's a concentrated fruit flavored syrup. You add water to it. Then you drink it. And it's like, like you could think of it as like a lemonade concentrate or something. Like a Kool-Aid, a European Kool-Aid kind of thing. Yeah, but it's so the number one thing in England is Ribena,
Starting point is 00:02:51 which is blackcurrant. You can get Ribena here. There's a lime thing, which you can get here. But the elderflower is made from the flowers of elder. I actually planted elders at my house so that I can. It's a long-term strategy. It's going to be another 10 years or so but eventually I can make my own elderflower cordial oh wow yeah that makes I never I've
Starting point is 00:03:12 always just heard elderflower together I never put together I mean well that's there's other flowers like sunflower that you don't say without the flower part so there's an actual plant there's elderflowers and there's elderberries right your was it your mother was a hamster and your father smelled of elderberries might be the way around so monty but no you can't do monty python oh my goodness i know monty python i just don't you know it's his butt a scratch see i've redeemed myself a little bit um i just haven't seen them all yeah so elder berries and elder flowers both come from elders. Yes. Which is a tree thing. Good to know. Good to know.
Starting point is 00:03:48 All right. So we've got, I think, roughly 15 minutes-ish left. Before we get to sort of talking about, because I think we should talk a little bit about your Pluralsight, because it's topical, Pluralsight course. Is there anything you want to say about future cpp north while we're on the topic of where we took a little digression to talk about sort of food and travel and whatnot i would definitely say plan on being there next summer and and there may be an opportunity uh we're discussing whether or not it's possible to let people have a super super super early bird while they're still remembering how great it was. Oh, wow.
Starting point is 00:04:25 But if you can't book now, you can at least talk to work about it now. An awful lot of people on Twitter were like, why was I not told this conference was happening? I would have gone. And it's like, well, come for 2023 then. We'll be very happy to have you. Yeah, it's hard with a first-time conference because I feel like the inner, I don't want to call it inner circle, but like the folks that are on C++ Twitter and that, you know, listen to C++ podcasts.
Starting point is 00:04:52 And because I think CppCast had an episode that, who went, was it Diana and Nat that both went on? I think Diana and Jason went on one and Nat and Mike went on another, but I may have the pairings mixed up. Okay. But you know what? When I asked in the keynote, how many of you, is this the first conference you've ever been to? And like a third of the room put their hand up. Yeah, that's true. So that was impressive.
Starting point is 00:05:18 We did get, you know, we did get some reach, but I think it's always in subsequent years after you've done it once and you've got people talking about it and trip reports going out and stuff. Well, we proved that we can do it, right? Like you put together a program that was a damn good conference program. And the speakers all had a good time. The attendees all had a good time. The venue is magical. You know, probably my favorite moment of the whole conference was Tuesday morning announcements when Mike said, lunch today is on the streets of Toronto. You know, just go out and find a place and spend $3 on a sandwich at St. Lawrence Market. The idea that people can eat.
Starting point is 00:05:59 We spent more than $3. You spent a little bit more than $3. We didn't go to St. Lawrence Market. We went to Miku, which is very yummy but yes but that's kind of the deal right like you can you can get you can get a burger or some fries and gravy or whatever or you can you can have a very sophisticated meal and it's up to you and you're not in a in a conference center in the middle of nowhere where it's literally an hour walk just out through the parking lot uh i i was in i was in orlando in june or july because that's when you want to go to
Starting point is 00:06:33 orlando and the speaker hotel was right next to the conference center so they didn't run a bus and it took 25 minutes to walk through the hotel parking lot across the street and through the convention center parking lot where you finally collapsed in a puddle of sweat inside the first air conditioning you've been in. And I was like, you need a bus. I'm not doing this walk every day. It's so gross. But, you know, like that's the scale of a lot of conference centers. They're huge.
Starting point is 00:07:01 I think conferences that are in the city center are that that's the best option yeah it sometimes can be well sometimes it typically is a lot more expensive which is why certain conferences choose i won't say outskirty areas but just definitely it's not city center but the advantage but if you're um if you're at a conference location where the venue has you as a captive audience, they can charge whatever they want for food. Yeah. If people are saving $100 or $200 a night on the room rate, but they have no choice but to spend $100 a day on food. They're not gaining. Yeah. Yeah.
Starting point is 00:07:53 Or I remember I like to have a can or a bottle of Coke in the morning. I'll have one coffee and then I switch to Coca-Cola. And being in venues where they're like, no, I'm sorry, this is the Pepsi building. You can only have Pepsi. And also every ever like even even in expensive cities like Toronto and New York, there are budget options for lodging. Yeah. Yeah. I'm super happy with the with the locale and being able to walk from the train station. You know, I know Patrice took the train from Montreal. I took the GO train from the outskirts of town. You know, this carbon footprint thing is real and, you know, you don't necessarily have to fly. I think it's the future.
Starting point is 00:08:36 Yeah, I can quote Titus Winters, who, as Bryce can reaffirm is a worldly individual with the man of tastes. And when I was chatting with him at the end of the conference, he wasn't even saying this just about CPP North, because I think he had been there before for a committee meeting in 2017 or so. And he said of all the places I visited Toronto, really is one of his favorites because of the diversity of food options like Toronto has great food in general, but also just a great diversity of different, you know, basically authentic cuisines from different parts of the world, because that is basically the people that make up Toronto
Starting point is 00:09:12 is we've got different little micro communities and, you know, we all blend together, but like you can go to different parts of town and get, you know, really good sushi or really good Indian food or, you know, choose your cuisine, basically you can find it. And he said in his list of top restaurants, like a couple of them are in Toronto, which I guess I kind of take that for granted that, you know, I haven't lived in a
Starting point is 00:09:33 ton of place. Definitely. It's got better food options than Sunnyvale, California. Oh, that's not true. Although it's a real shame that you can't get a decent bagel anywhere in Toronto. We did so well. We did so well. I mean, did we even settle the debate? I expected somebody to, like, kidnap me and sit me down, like, blindfolded and do a blind taste test of bagels while I was there. I was a little disappointed that didn't happen. I think there was Francis, who was a member of the
Starting point is 00:10:08 C++ Montreal meetup, who came from Montreal, I believe, was there and I believe brought bagels on a Sunday maybe before the conference started. I can't remember exactly what happened. I flew in late on Sunday. I see.
Starting point is 00:10:23 You missed the bagels. You missed the maple tarts. You're not getting the full conference experience, right? I will say this. Sorry. The dog is eating something. I don't know what the dog's eating. I will say this.
Starting point is 00:10:39 For next year, I will agree to a bagel blind test if somebody will arrange it. You bring some from New York. We'll get the Montreal folks to bring some. We'll get some bread donuts from Toronto, but we'll also get some real bagels from Toronto as well. We'll do some sort of bagel off. We'll figure out how to make it happen. I don't think you should be eating that oh he's not talking to us he's talking to the dog so you want to talk you want to talk about the course yeah um so this just got launched if i'm
Starting point is 00:11:17 following the twitters correctly correct yes like the last business day of july or something i know i was so busy in July. I was so crazy busy in July. Really? What were you doing, Kate? What were you doing? I was like running this conference and practicing my keynote. And the way that I do the courses is first, I write everything 100% totally written.
Starting point is 00:11:39 All of the demos tested on all the operating systems, everything ready to rock. And then I start to record. And then in week one, I like record rock. And then I start to record. And then in week one, I like record a module and then I give it to my editor. And then week two, I record a module and I get the first one back from my editor and I review it. And then I send it to a tech reviewer and blah, blah. And so there's like a pipeline, right? And so we get to the conference and I had just finished recording everything, but there were like four modules in the pipeline. So after the conference, I got everything reviewed, edited and slammed over, but Pluralsight was gonna be away for a week.
Starting point is 00:12:14 So I'm like, I'm gonna miss it. They're gonna be away from like August 4th to 9th or something. But no, on that Friday, they took it live. So whatever the last Friday in July was, the course went live. And it's a complete rewrite. It's taken me months of the C++ Fundamentals course.
Starting point is 00:12:30 So this is like the entry point for people who know some programming languages, but don't know C++ and take them from zero to C++ programmer. And I've had this course there for a really long time, and it gets updated with new versions of C++. But also every time I update it, I change usually something very significant. So at one point, I keep moving pointers, for example, further and further into the course because I just don't think you need pointers.
Starting point is 00:12:55 It's no big deal. Like, well, we can do polymorphism and stuff with references. We'll mention pointers eventually, but it's not as important as people used to think it was. I added a whole new section this time on error handling because it's a big deal. And there's not a lot of syntax in it because it's mostly strategy. It's like, well, you could return a bool, true or false, success or fail. Or you could return an optional. You could return some sort of an error object.
Starting point is 00:13:21 You could have out params and we. We ended up talking about expected. There is... You can also throw an exception. Okay, well, exceptions happen, but we talk about expected first. And I would like to do std expected, but I can't because we're in C++20, but Cy has a nice one. So I say here's, you know, Cy's expected
Starting point is 00:13:40 and it's lovely. Here's how to use it. And then we talk about exceptions. Then we talk about RAII again, which has been talked about before, but how in the context of both exceptions and returning early, you know, getting that guaranteed cleanup is good for you. So there's not a ton of syntax other than the exception syntax, but it's a sort of a strategic module. That one's new this time around. And just everything I think should be in a C++ introduction, you know. And did you say that there was two, because I heard you mention at
Starting point is 00:14:10 one point what's new in C++20 and then C++20 in depth or something? Was there two courses? So in C++20 fundamentals is, let me see how many hours it is, seven and a half hours of material. So that's a lot, especially on Pluralsight. You know, they have some one hour courses. And for a while there, they had a brief fling with, we're not going to have long courses. Everything's going to be short. And then people can just take three courses, but they kind of changed their minds back. And I think that's good for this. But earlier this year, I did a what's new in C++20, which is like, you already know about C++, the language, you already work in it, but you just want to see what's new in C++ 20, which is like you already know about C++, the language,
Starting point is 00:14:45 you already work in it, but you just want to see what's been added. So I talk briefly about modules and concepts and, you know, std format and spaceship and just things that got added in 20 that I think people should know about. And very quick demos just to show why you care. The time zone stuff in chronono, that kind of thing. That might slip by you otherwise. But you're not going to learn C++ from a course like that. So the fundamentals course is for the people who want to learn it. But I also have a learn to program in C++ course,
Starting point is 00:15:18 which is for people who have never programmed in anything and are willing to learn C++ as their first programming language. And I know a lot of people tell me that's impossible, but like a lot of people have taken this course and been very happy. They don't want to have to learn something else first as like an admission price or table stakes or whatever, and then go learn the language they really want to work in. So I teach them C++ from the point of view of someone who, like sometimes you want the computer to do the same thing for you over and over again. We call this a loop and then explain the various loops we have in C++.
Starting point is 00:15:52 And that works. It can be done and I think it's worth doing if you, for whatever reason, want to learn C++ first. Go ahead. You don't have to learn something else. That is actually one of the, I'd say, strongest arguments. Not that I agree in general that C++ should be the first language folks learn or is the best language as a first language. But if you're going to make that argument, one of the strongest arguments I've heard is that if you learn C++, C++ is a language that you can do anything you want, usually like 10 different ways. Which means it's a superset of like almost everything in every other language.
Starting point is 00:16:26 Like it's to a to like asterisk. That's not completely true. There obviously are things you can do, I'm sure, in Haskell or pure functional languages that you're not going to be able to identically replicate. But for, you know, in general, if you learn everything about C++, you're not going to be too surprised when you go to other languages. You'll be like, oh, this is just this, you know, the maybe from Haskell is like the optional and this thing from Java
Starting point is 00:16:51 or this thing for Go or this thing in Swift. It's all going to be roughly equivalent to at least something in C++ because C++ basically has everything. Has absolutely everything, even things people really don't use anymore, but it's still in there.
Starting point is 00:17:03 But, you know, imagine if you chose some language that doesn't have lambdas. And then when you moved to a language that did have lambdas, you'd have to learn the concept of lambdas. Whereas if you go learn C++ first, then you go to a language that doesn't have it, you're like, well, okay, I can figure out a workaround where I can get that ability that I want. So, but the key, the key to teaching a course like that is, you know, i'm not teaching function pointers i'm not teaching um c style arrays and pointer arithmetic to figure out where in the array you want to address like no it's 100 c++ and standard library and you know very expressive and very accessible and no well you have to be so smart to understand this most people
Starting point is 00:17:44 are not wizardy enough to understand this. Most people are not wizardy enough to understand this, but I'm going to quickly review it with you. None of that. Yeah, that sounds awesome. We'll definitely leave links to both of those and everything. I mean, well, I'll probably just copy and paste the show notes from each of these three slices and they'll be the same. So in case you heard something two episodes ago and you're like, oh yeah, I wanted to see that. It'll be in the show notes for each of these. And we haven't done this historically, but I have actually made a mental note of trying to do this at the end of guest episodes. But then I just always forget because we never do it regularly is asking if
Starting point is 00:18:19 there's anything in general that you want to either either mention or talk or or plug or uh this is coming up um because yeah i think you know we have a platform where the platform is growing according to bryce we have bryce well uh for people who are in europe i have fans i don't know about you bryce's hair has fans yeah i am going to be in Norway in about two weeks. Oh, wow. At NDC. Does anyone know how to say the name of the town that NDC Tech Town is in? I wouldn't advise any of us trying it.
Starting point is 00:18:54 Wait. Yeah. Is it? I'm going to take a risk. God. Wait. He's going to be banned from Norway next. No, this is going to be a city that's not even in Norway.
Starting point is 00:19:05 But I thought for sure Oslo. Is Oslolo is no no that's where you fly to but it's in it's spelled kongsberg but there's two dots on the o so i don't think you say it might be like kongsberg or something like that we know we know the name of the town connor we're not guessing where other towns in norway we just want to know how to pronounce it i was i was concerned that i didn't i didn't have oslo in the right country and it wasn't in norway and that's why i was like well it clearly can't be oslo because we all know how to pronounce oslo well no because i know that uh okay basically i don't i'm terrible at geography um but no i don't know how to pronounce coburg it sounds like something like that and that's what so that's not an NDC is it that's a different conference
Starting point is 00:19:48 NDC Tech Town which has got a very C++ focus there's a lot of NDC action in various places but Tech Town has got the kind of C++ so this is two weeks so when does that because maybe so that's going to be 29 so what
Starting point is 00:20:04 we'll actually do this will be a little bit confusing for the listener because this will be the third episode of three the first of which will be airing on the 26th so you're hearing this outro from kate which is at the tail end of three different conversations but just so folks know that uh that's happening and i'm sure you're really gonna edit it like that? Bryce, literally our last two episodes, I said, I'm going to cut it off. Boom, right here. And then you were like, please don't do that.
Starting point is 00:20:32 That'll be bad. And then I made that the intro to episode 89 or whatever it was. I guess this is what I get for not exerting any editorial control or even listening to the episodes of this podcast. That's right. Bryce always says, I'm not going to let you put that in or, you know the episodes of this podcast that's right always says i'm not gonna let you put that in or you know we're not doing that but that never has any impact because i'm the one that does all this because you're the one who's editing yeah yeah but i just but bryce's voice up at 10x and then i am the executive producer and i believe i am the headliner right i think every once in a while i should like turn Bryce's mic down and then like in your narrator voice, you can go.
Starting point is 00:21:09 He went on about bagels for some time and turn it back up. Yeah. Like I said, sometimes he'll talk about his furniture and I'm like, this is the fifth time in 10 episodes that the listener is hearing about his walnut or whatever. I do. Yeah, I do. Bryce. about his walnut or whatever i do yeah i do bryce listener if you remember hearing me 10xing bryce's voice please leave a comment on twitter to uh and at bryce so that he knows so that he's aware my i think my girlfriend would love to be able to do that because she frequently complains that i
Starting point is 00:21:38 just repeat all my stories she's like you told me this like you do i tell you that on this pot i'm like bryce they our listener knows they've heard it four times and you're like i don't care it's our podcast and the listener is going to be entertained but like but like with her i genuinely am like i've never told you this before and she's like you've told me this three times so you're old before your time that's like that's yeah she she's like i can't imagine what you're going to be like when you're old you're just gonna have one story no when you're old in addition to only having one story you start your story like this now i think it was in 1993 or maybe it was 94 no i'm pretty sure it was 93 no how old was jennifer then and like you had like a 20 minute pre-conversation to establish what year the story happened in before you can actually tell the story.
Starting point is 00:22:25 That's the most frustrating thing. Yes. Yeah. My grandparents are 88 and 92 and you ask them when something happened and they'll like, they'll give you an estimate that's like, with like, they won't give you a year. They'll give you like a rough decade. Like that was sometime in the 60s. I don't know when. And they'll tell you what, what car they were driving or where they lived or something.
Starting point is 00:22:46 And that's supposed to figure it out. But then they get into an argument about when they sold that car. Yeah. Right. What else should I plug? We didn't even talk about carbon. I was about to ask. Oh, yeah.
Starting point is 00:22:57 Did we talk about carbon and I forgot about that? No. How could you? We just had the conversation, Bryce. Holy. You need to get your memory checked, my guy. Look, I'm a little distracted. I'm babysitting the dog.
Starting point is 00:23:09 I'm trying to get the dog from eating whatever this thing used to be. I think it used to be a ball, but now it's like half a ball. Well, I mean, we had this till 730. I'm not sure when your hard stop is. We can talk a little longer. It's not dark out yet. Let's do it. All right, listener.
Starting point is 00:23:27 I want to get more details on where Kate is right now, because it seems to be like a rustic cabin of some sort. It is literally a log cabin. There's a brand of cabins called Pan Abode. And it is a cedar logs. And they built this in like the 60s this land was in the same family from the 30s until last year oh wow so the dog just went into i'm sorry this is the worst i'm gonna like i'm gonna get a new co-host price you've gone so available i'm just saying kate's in the middle of telling us an epic story
Starting point is 00:24:05 seven decades eight decades nine decades and bryce's response listen folks i've got a dog here and i've got something to tell you i tell you you're on thin ice bryce i'm gonna i'm gonna replace you and record an episode you won't even know about it and you'll be like whoa what's this why is everyone talking i'm sorry but the dog comes over with a toy that, like, I'm like, that doesn't look like one of the toys that she's been given yet. She must have retrieved it from out of my backpack, which I could have sworn was zipped. Dogs are smarter than you think. Wait till you get a kid.
Starting point is 00:24:38 You'll be sorry. Yeah, I'm sure I will be. Anyways, we were talking about Log Cabin. Log Cabin, 1930s till 2021. And so this is an acquisition or acquisition is the correct word? I don't know why they put it on the market last year, but they did. And we bought it. And we didn't get to spend a ton of time here last summer because my daughter-in-law was having a very tough pregnancy and she needed
Starting point is 00:25:05 a lot of support and she ended up in the hospital and blah blah saying a lot of free time but we're coming here a lot more this summer and uh it is it is just a cabin on the lake and it's a great place to disconnect and it's it seems like you got awesome like that's my number one concern absolutely love nature absolutely love hiking all that stuff swimming etc uh but like my blood my second blood is uh is the internet and without like good internet i start to um suffocate but it seems like you got fantastic internet there i've got we've got pretty good internet we've got pretty good internet it's not um uh it's not enormous bandwidth like you you know you don't want to watch tv 24 hours a day but that's not enormous bandwidth. You don't want to watch TV 24 hours a day, but that's not why you're here, right?
Starting point is 00:25:52 When you need it, a little spurt, you've got good bandwidth, and then you turn it off or stop using it. We chose our house based on having access to the Internet 30 years ago. Did you? Wow. In those days, you could get a list of all the sites on the internet that you could dial up to. And we chose, like, we have to be a free call to this place and that place because we can dial up and get internet. And before we moved, I arranged with Trent University, which is in Peterborough, to have a dial-up account that I could dial into so that I could telnet back to U of T to finish my work. Yeah, that totally makes sense.
Starting point is 00:26:26 I mean, I, when I think about where I permanently want to live, like, I don't know if it's number one, but like number four is like, do they have like fiber optic, like high speed internet here? Cause like, you know, you can get by with less today. Uh, but like going forward, you're going to need, um, at least if you're going to be working remotely and spending all your days on zoom calls etc and uh nvidia is you know one of the companies inventing inventing uh omniverse etc and it's going to require a certain amount of bandwidth and that uh what you need is excellent bandwidth and then something to make you not care that you have bandwidth and walk away from it and leave your phone behind which a lake a lake does well uh it does well for that it really
Starting point is 00:27:10 does a lake with our canoe and this is a canoeing area it's an unofficial crown land called the frost center canoe area and it is uh it's got campsites and portages and all of that. And our cottage is actually in that canoe area. Yeah, I'll have to make a point of being able to make it out to the CPP North post-retreat afterwards. Post-conference retreat. I think that's a new tradition for sure. Yeah. Yeah. And hopefully we won't be dealing with the carbon announcement next year.
Starting point is 00:27:43 Although someone said Google has promised to announce two programming languages next year so that's fair yeah carbon plus plus and something else um speaking of which yeah 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.