Two's Complement - Programming in English

Episode Date: June 14, 2026

Ben sets out to learn Rust by only reading it, while Matt wonders if you can learn to land a plane from a book. Also: is snark a portmanteau?...

Transcript
Discussion (0)
Starting point is 00:00:00 I'm Matt Godbolt. And I'm Ben Radie. And this is Toos Compliment, a programming podcast. Hey, Ben. Hey, Matt. How are things? Great. It's that time of the week when I say, hey, Ben, and then you say, hey, Matt.
Starting point is 00:00:27 And then we talk about something. Yep. Have you just any idea what that thing should be? Because, you know, I've planned carefully and I have nothing. Right. No, I have a thing. Okay, let's talk about your... All right, what we're going to talk about?
Starting point is 00:00:43 So, a careful listener of this podcast may recall that I have talked before about having a period in my career where I tried to learn a new programming language every year. This year's new programming language is English. It's all the rage. But in addition to that, or American or English. English. English. English. Oh, okay. I mean, you got to put some U's in some places, I guess, if you really want to call English. And far fewer Zs than you would put in, and you would call them Zs. Right. Some S's instead of Zs. That's right. Yeah. But that's, is this like the German translation is where you just take all the spaces out?
Starting point is 00:01:30 I think that's pretty much what German is. German is just English, but with random capital letters in the middle of the word and no spaces between words and what described them. Yeah. Is there anyone we haven't offended yet? Let's just, okay. Programming in English. Programming in English. Tell me about your new language or your programming in, which I mean.
Starting point is 00:01:51 Well, so I have kind of just, I've had on my list, and I say like jokingly that, you know, the, you're programming language is English. The program, I've had a number of programming languages on this list of like, you know, if I ever get back to this practice, because I kind of fell out of it
Starting point is 00:02:08 because I was sort of like, what language could I learn that would allow me to do something that I can't do in an existing language, right? Like, you know, if you've never built a web application before and you don't know JavaScript, then JavaScript is a way to write. Yeah, that's interesting. I can do this. I couldn't do this before. Okay.
Starting point is 00:02:26 Or like a HDL for like, you know, hey, I'm programming an FPGA and I can make lights blink in a new and exciting way, but I can't write this in Java. And so maybe I need to learn something else. And it's a paradigm shift that goes alongside the language. It makes you think, I mean, I think, what is it, the Sapir-Worff hypothesis thing that says, you know, like the language you first learned sort of tempers however. And my first language was, you know, machine code and assembly.
Starting point is 00:02:50 So that definitely has tempered my entire experience in my career. But like there are definitely languages that force you to think in different ways. Yes. Be it like a prologgy type language. And first bends your mind and go, oh, I see. You can specify things this way or a lispy thing where, then you're like exposed to the fact that the representation is the language and all that good stuff. So, but yeah, English though, but I'm pretty familiar with English.
Starting point is 00:03:17 Yeah, yeah. Well, okay, so the spoiler alert, the language that I am trying to teach myself, basically starting this week is Rust. And I have used Rust before. And the sort of like new idea around all this is in the way that I teach myself this language. So previously, the way that I had always done this was I came up with some project, right? And that was sort of the relationship between like, hey, I'm going to learn a new language to be able to do this kind of thing. And I'm going to learn that by doing the thing.
Starting point is 00:03:49 And then I will learn the language and then I will be very confident that I can do the thing, right? Right. I want to write a ray tracer. I go write it in Rust and I get my, you know, maybe even 10 times before or it's something completely new. Like, yeah, I get it. Yeah. And that, you know, Superior Warf hypothesis reason for doing that is also a good. reason. I've told people, you know, people ask me for advice on, you know, what should I do in my
Starting point is 00:04:11 career? How should be a better programmer? And I would, I still give this advice out. I'm like, how many programming languages do you know? You should try to learn more of them because of two things. One is you will be able to do more things. And also, it will expand your mind in terms of how things work. You know, I love closure as a programming language because it's fun. I wouldn't inflict it on anyone right now other than sort of a, you know, maybe learning exercise. But it's a fantastic learning exercise. You've never used a list before. It's awesome.
Starting point is 00:04:41 It's funny you mentioned that because when I first moved to this country, one of the first things I ended up doing was working with one of our mutual friends on a system that was all enclosure. And like I was completely mind. It took me a while to get over the hump of what the heck is this? Why are we doing this? It seems like we're doing it on hard mode to, oh, no. this is pretty neat to the penny dropping and me going like, oh, I get this now.
Starting point is 00:05:07 I see functional programming languages as being useful. I see LISP-like languages. I see, wow. And, you know, I have not chosen to go back to it, but I do feel like I'm enriched as a programmer by having had that experience. Yes, yes. And it's an intersubjective experience to use one of our favorite podcast words, because if you have used a LISP before, then you can talk to someone else who has used
Starting point is 00:05:31 a LISP before. Right. And be like, this is just let over Lambda, and they'll know what you mean, right? So those are many reasons to learn programming languages, and I highly recommend that people do. What I am doing this week is I am attempting to learn a programming language,
Starting point is 00:05:46 not by building something that is, I think, a representation of what would be good for that language. In fact, I am trying to learn a programming language by not writing any code at all. Oh. What I am trying to do is learn a person. programming language by asking Claude to teach me the language
Starting point is 00:06:05 and quiz me on whether or not I know it. Oh. And I'm just going back and forth, like taking snippets of code being like, what does this do? Okay, explain this. Explain that, explain that. Okay, now quiz me on all of the concepts
Starting point is 00:06:19 that you just taught me. Wow. And see if I get it right. And then I asked follow-up questions to all of that. That's not what I thought you were going to say at all. I just figured you were going to say, yeah, I asked it to write the thing for me and I skimmed the code afterwards.
Starting point is 00:06:32 And I was about to bring up all the kind of like the badnesses of like, you know, the quote, I forget who, it's not Carpathy, but it's one of, I think he retweeted it. It's something along the lines of like you, you know, LLMs let you outsource thinking, but not knowledge, right, or experience, that kind of feel. And that's like, I'm definitely feeling a bit of that in my day job right now. It's like, oh, yeah, I don't necessarily know this as well as I should do. I'm very effective at what I'm doing.
Starting point is 00:06:57 But if someone, yeah, but no, you're so, yeah, tell me more. Tell me more about this approach. Well, yeah, and a lot of this sort of comes from, it would be bold to call this a realization because I don't really know that it's fully true. But my suspicion is that it is going to be increasingly important for software engineers to read code in the future. I think that's, I mean, even as you get more senior,
Starting point is 00:07:24 I think that's become true. Yeah. As you end up mentoring more folks and they ask your opinion of code and whatnot. And, you know, maybe you spend more time, yeah, either explicitly reviewing PRs or just over people's shoulders, helping them. So, yeah, I think reading code is important.
Starting point is 00:07:38 It's always been important. It's always been very important. I think it's going to become even more important. Right. And until we teach the robots to review it. And then at what point will that flip? And then it's like, we're writing code and robots are telling us not to do it that way.
Starting point is 00:07:54 I mean, so the code is always, I think, at this point, I think I could say that the code is always going to be the actual source of truth, right? Like there's enough well-worn, and you can certainly point out some situations in which source code and what the machine is actually doing do not line up in a consistent way. Like, that is certainly possible.
Starting point is 00:08:14 Yep. But it is, I think, much less likely than the delta between what the code is doing and what the English that created the code in a prompt is doing, right? I think that's a fair assessment, yeah. Yeah. It's like a, it's like a,
Starting point is 00:08:29 a really good source of truth, if you're going to pick a source of truth, for like, what is this program actually doing? Right? And so being able to read that is really important. It's funny, actually. So somebody tweeted at me or whatever,
Starting point is 00:08:42 not tweet, but the current, whatever hacky-dermy thing with the thing that, like someone was saying, you know, like, oh, yeah, LLMs will be to code as C is to assembly code. Nobody looks at the output of a compiler.
Starting point is 00:08:56 Ha, ha, ha, ha. And of course, it's like, at Compile Explorer. You know, like everyone, everybody, you know, the reason this exists is so that we can because we don't trust it and we do do this. So I think that backs up your point. I think there's always need to look one layer below, right? We've talked about this before, the various layers of things. And like, each abstraction or layer brings something to the party and you learn to trust it in different ways.
Starting point is 00:09:21 But ultimately, you need to be able to look down and go, ah, no, whatever. And yeah, for those folks who say, you know, we just give it English and we just get a binary. at the end of it. It's like, no, the kind of differentiability of the intermediate forms of, say, code is useful. I mean, we typically don't diff the binaries and get to get anything useful out of it. That doesn't seem useful. But the thing that generates the binary, like the concepts from that makes sense that I can look at something I've asked the AI to do and say, is this a reasonable way of achieving what you did, given what was working before and I trust? So, yeah, anyway, So you've been, yeah, reading code is an important skill.
Starting point is 00:10:00 There we are. I've just remembered where we're going with this. Yeah. So this whole exercise is an experiment in what if I learned a programming language by reading it. Now, I think you and I have talked before about both of our brains really work best when we sort of get down into the nitty gritty and like step by step build a thing. And it's like that's how we really, really, really understand something. And so I am trying to push myself to grow the skill of being able to have like ideally an equivalent level of understanding of code that I am just reading. And I'm trying to start that.
Starting point is 00:10:42 Like, you know, I may not get there, but just move in that direction. I'm trying to start that by this experiment of like, can I, can I say that I am fluent in rust having written basically? no rust, right? Like, can I achieve that? I don't know that I can, but that's what this journey is all about. I am very skeptical that you could do any more than you could read every book that says how to drive a car and then get an or land a plane, you know, those kinds of things, right? They feel like things that you have to do a little bit to be able to do well.
Starting point is 00:11:17 But then there may be humans that do this. I mean, there are very bright people out there who learn and think in very different ways to the way that I do. Yeah. So, you know, I remain skeptical, but I think what you're doing is really interesting. So how's it going so far? I mean, it's been like, how many days? You've been only been doing this a couple of days.
Starting point is 00:11:36 I've been doing this for like three days. It's going really well. And one thing is that, of course, like Claude and I'm sure the LLM of choice would do this, is shockingly good at coming up with good pointed questions to test my understanding because it knows what my understanding is because it taught me. all those things, right? So, and being able, the other thing that has been really nice is being able to compare it to other languages, kind of getting back to our earlier point. Like, there's concepts that you bring in from other programming languages. I'm like, what would this look
Starting point is 00:12:07 like in Python? How does this compare to Java? What would this look like in Ruby? You know, how does this compare to JavaScript? And like finding all those little things where you can, because I feel like a lot of people learn this way where they map, right? They're mapping concepts from one thing X but not Y part or yeah something like that. Yeah. But so are you physically writing any of this? You're purely reading it. Because I can imagine being like the best tutor where you're like,
Starting point is 00:12:35 it's grading you and asking you and saying, and it's even setting your little challenges and saying, okay, now write something which command line parses and does, blah, blah, blah, blah. But you're not, you've not written anything. I have not written everything. Now, it wouldn't surprise me if Claude kind of invents a write me, a write me a function that does this kind of question.
Starting point is 00:12:54 And I will just do that if it does that. But I am not prompting it to do that. And thus far, everything has been basically like explain what's wrong with this code. Right. Or explain why this works. Right. And that's, it's been very good. It's been very good.
Starting point is 00:13:13 You know, how, you know, the sycifancy of these things leaves me to think that maybe it would be a little bit forgiving to you. Well done. Yes, you got it right. Just this one minor thing. And you look at it. You're like, no, that's terribly important. It does say things like, we got it mostly right, but here's the thing that you missed.
Starting point is 00:13:34 And it's like, oh, you got the concept right, but here, this thing is wrong. Like it, I haven't been able to because I haven't developed enough of an understanding yet. And like, again, the last time I wrote Ross was like 10 years ago. So at this point, I basically have forgotten. You forgot most of it. Yeah. I mean, I remember the basic structure of the language. It looks a bit like C with the types the opposite way around to normal and then something, something, borrow check.
Starting point is 00:13:57 Right, right. Rust. You know, there's no inheritance. And, you know, yeah, you lend and borrow and there's no garbage collector and there's no free, right? But like, I haven't gotten deep enough into this to have found a situation where it failed to point out something that I had said that was wrong. Like in retrospect, I realized that something was wrong. Again, I'm three days into this. Of course.
Starting point is 00:14:23 Surprising that I haven't hit that yet. But it's definitely something that I am concerned about. And also just on the obvious thing of like, how do you know that the LLM is right? Right. Yeah, that's true. You know, that's like a base level skepticism that everyone should have with any kind of exercise like this. You're learning from, you know, whatever LLM, how do you know it's not giving you bogus information? Yeah.
Starting point is 00:14:44 One of the things that I think is going to be unavoidable. probably with this is I need some external validation of the concepts that I'm learning. And obviously the thing that I would reach for is, well, go write a friggin program and then you'll know. But I'm trying to like not do that if I don't have to do that, right? This seems timely, but a website that some people refer
Starting point is 00:15:08 after my last name has got an MCP now. So you can just add the end point of your choice. I will use compiler explorer.com slash mCP and then all the languages and all the execution and everything are available to it so you could tell your LLM. I mean obviously it could also write the
Starting point is 00:15:28 stupid thing locally and run your own local Rust tool chain and all that good stuff but for small snippets it might be useful to say hey I can do this on the go you can add it in like the web version of your your favorite LLM tool if you're having just a regular chat with it and it can go off and do the needful things there which has been
Starting point is 00:15:46 an interesting journey in how do you how do you give LLMs what they need without overwhelming them with tokens kind of thing but that's a whole other story I don't want to derail totally but yeah dealing out way too much context yeah one of the more interesting elements of this is you know previously when I had been doing this
Starting point is 00:16:03 you know learning a new language by building a project it was very much like okay I'm going to get my laptop and I'm going to sit down I'm plugging the monitors and put on some music and I'm going to sit down and I'm going to code and that was like a very like focused activity that was restricted in when and where I could do it, right? Now, I can do this on the train home. I just pull out my phone, pull up the chat that I have running with Claude and be like, okay,
Starting point is 00:16:26 what does this operator do here? Like, what is this thing? And you just kind of keep it going. That for me has become very valuable, the ability to essentially continue useful knowledge work while on the move, be it through remote control of a session that I've got running somewhere else, be it through exactly as you describe. I've got a number of long-lived projects that have me trying to understand, I'm laughing because it's so sad, try and understand how 1980s television signals
Starting point is 00:16:58 were encoding, decoded, for reasons we'll talk about hopefully on another podcast. But yeah, and that is very valuable. And you can say, I've just been thinking about this thing like I'm walking the dog. What about that? How does that bit work? How do you know that this is true?
Starting point is 00:17:13 then you can it's it's a useful thing and you know 10 years ago 15 years ago maybe even 20 years ago you would just google it right it would be a google search and you would find it and then you were like oh this is cool and you find someone's blog page that talks about that thing and you scroll down until you find it and then you know maybe maybe the 10 or 15 years ago you start looking at the synopsis thing that appears at the top of the this pre-a-i like hey did you mean this thing oh it did I find I got the answer to it which obviously was it has its had its own bag of problems, you know, like, well, now Google aren't actually sending you to the web page that had the information on it, which means the hit. Now, of course, you do get the AI summary at the top,
Starting point is 00:17:52 which I think, it's funny, I think, I don't know if you've perceived this or not, but the tide seems to have turned from, we hate this to mostly indifference and occasional, oh, that was handy. Certainly, dinner, dinner table conversations with my family have gone from, well, this is stupid, ha, ha, ha, too. Oh, it says this. And you're like, oh, hmm. Yeah. Yeah. For that. But yeah, all these things are really valuable ways of being on the move and being
Starting point is 00:18:20 able to continue doing something. But I wonder if that comes with a different problem of, you know, burnout, right? We've talked about this before where you're managing 12 different chats and trying to make progress and whatever. And now you can't get away from the stupid thing. Yeah. Sorry, that was a real derail. But yeah. No, it's not.
Starting point is 00:18:37 I mean, it's all related to this, right? It's, if this, I, I'm trying to say, I was going to say, if this works. And then it's like, how would I know if it worked? Yeah. Right? How do you test this? Yeah, kind of.
Starting point is 00:18:52 I mean, it's sort of like, okay, I claim that I am fluent in a programming language. What do you use to back up that claim? Is there a distinction between fluidity to read and fluidity to write to? Do you, because I mean, like, so fluidity to read to me means that you understand everything that's, that you will likely see in the language. Yeah. And you are capable of then apply. your sort of experience and your intelligence and your, you know, I guess experience, right, to say, I think this is a good way of doing this.
Starting point is 00:19:23 This seems fine to me. There are no issues. There are no bugs. The tests are good. All that stuff, right? And that is still fundamentally different from, given a blank page, make a Rust project that does X. Yeah.
Starting point is 00:19:35 It does seem like a different skill set. Certainly in any time in the past, if somebody had come to me in, they had said, well, I am a, you know, C++ expert, but in reading only, I would have been like, ha, oh, wait, you're serious. Right, right? Like, like, what? So is it like, you know, like a foreign language to go back to our original language? Yeah, like you can hear it, but you can't speak at something like that.
Starting point is 00:20:00 Yeah, you know, like, or, you know, reading, I could read a book in French day and you'd be like, that's one thing. But if you drop me in Paris, I'd be, oh, I'm a bit S.O.L. really, you know. Maybe it is just as simple as that, is that they actually are just separate skills. and if you learn one, you'll get better at the other one incidentally, but you actually do have to learn both skills. The thing that I would wonder that you might miss, one might miss in a read-only training model like you're doing, is you know those kinds of things where the 15th time you've done something,
Starting point is 00:20:31 there must be a better way to do this. And then you experiment yourself with different ways of doing it. Like, hey, can I use reflection to like, oh, yeah, I can. Wait a second. I don't have to declare this stuff at all. I can pull it out of the structures or whatever, like, you know, reflection's top of mind because of C++ plus has just gained it. So I'm thinking of all the silly things you can do with it.
Starting point is 00:20:49 But like, when do you have those galaxy brain moments of inspiration? If you're just reading, it seems too passive to me for you to kind of go like, I've read this 40 times. There must be a better way and then be able to come up with that better way, having only ever read code. And, you know, I don't know if that. I don't know if I believe that. I'm just thinking out loud.
Starting point is 00:21:09 Yeah. Well, here's a thought experiment. So let's say that I do this. And then I do what I would normally do. And I just sit down and I write a Russ program, right? How would you be able to tell the difference versus what I would have done before, right? Yeah. Like congratulations, you wrote something in Rust.
Starting point is 00:21:29 That was your original plan for every other language that you've learned. Yeah. Yeah. What would be the difference? Like, do I do it faster? Do I have like fewer questions? Yeah. like the result would be the same, right?
Starting point is 00:21:41 Yeah, that's a good point. How do you tell that the reading exercise actually made any difference at all? Like maybe I could feel it. I mean, I suppose, but if you did sit down and then you realized actually, I can't write something, then you can sort of like do the opposite. You can say like, okay, yeah, I am proficient in reading and it would be a cluster for me to actually sit down and write anything more complicated because, you know, like I can't create something.
Starting point is 00:22:07 I suppose it's, you know, like it's a, say, there's a reason why book authors are not also book critics in the same way, the book critics, you know, there are some like, I'm sure there are a number of authors who can critique their own work and other people's work, whatever, but like there's a sort of like, a creative process that's happening in the construction of something new that perhaps it's hard to tickle when you're just reading. I'm not saying you couldn't you know like certainly if someone sends me a PR and I look at it I'm like no no no no there's a completely new way of doing this let me sketch it out for you then I'm doing that that part and it's not like that doesn't happen but like it seems like the activation energy
Starting point is 00:22:51 to start doing that is much higher than yeah that seems okay to me you just got the comments in the wrong place kind of feel right yeah and I don't know whether or not that this also seems just like more almost like academic way to do this, like, you know, principled maybe,
Starting point is 00:23:09 but maybe not with the right principles where it's like, you know, first you should learn all of the operators and the keywords and how everything is structured. And then and only then. I mean, it's like programming in the 1950s maybe worked like that. I don't know, right?
Starting point is 00:23:22 Right. You don't have to learn where to put the holes in the punch card. Right. Like, you're just like, it's like this like unnecessary ordering of learning. Right. That I wouldn't, I have never,
Starting point is 00:23:34 done and wouldn't recommend, but I'm just kind of trying as a, and it would be actually, you know, I think the more interesting outcome of this, the much more interesting outcome of this is that I do this and I do this for like three months. And then I sit down and I'm like, okay, now I have something that I want to build in rust. And it's like, this is just like if I had started clean slate. Like I, none of the things that I've learned in the last three months have, have, have like maybe I saved myself three days worth of work, right? Like that would be a really interesting outcome from this.
Starting point is 00:24:08 Yeah, I know. There really is there's no substitute for just building stuff. I would, yeah, this is, it seems like reading is a valuable skill, full stop. And I think obviously your experience and your tastes and your sense about, sensibilities are already putting you way, way up in the like, you know, the, you're looking for certain patterns and you're like, whether you express it with curly braces or indentation or lambdas that you apply or whatever it is. It doesn't matter.
Starting point is 00:24:36 Syntax is the easy bit, really. Right, right. So maybe, you know, this is not necessarily a fair fight, because maybe for you, most of it is the syntax. And then after that, you're like, yeah, sure, I need to do a visitor pattern here. You know how to spell that now in Rustland or whatever. Or, you know, you've seen enough code that shows you that there is some other way of doing it in Rust that isn't the visitor spell, whatever, you know, like they're in this pattern.
Starting point is 00:24:59 So either way, it's going to be an interesting experiment. And I think also your instincts are right that the readability of a language, as in your ability to be able to read Pars, critique, code, understand code, is by far will be more useful going forward. So if you find it difficult to then write code, well, at least you can poke holes in your own work barely easily. Yeah. I'd be just how that comes along, yeah.
Starting point is 00:25:35 One of the sort of maybe the last point here is in addition to the language itself, I have also been asking it questions and prompting me to, you know, prompting it to ask me questions, although this has not gone as well, about the ecosystem. Because, you know, Russ ecosystem is like legendary, right? and its consistency, you know, cargo and all of that. But I was like, okay, you know, it's like, again, like a lot of this is really easy when you do comparisons. I'm like, what's the, is there a rust equivalent to like the Java flight recorder, which would let me like see the state of all variables and memory and heap and look at all the threads and see what their stacks look like. Right.
Starting point is 00:26:17 And they're like, no, it's like you can do like GDP integration and you can debug and stuff like that, but that's not really there. You know, I'm like, all right, what are the logging frameworks like? And it's like, oh, well, here's some options for logging and things like that. But I feel like there's a whole, you know, again, I feel like these days a lot of our podcasts are just recounting other podcasts. But surely at some point in the history of this podcast, I have uttered the phrase, the difference between computer science and software engineering is computer science is solving problems with computers. And software engineering is solving the problems you create when solving problems with computers. The second derivative. Yes, exactly.
Starting point is 00:26:53 Exactly right. And so the software engineering. side of rust and sort of like the blocking and tackling of how do I actually like run something and debug it and observe it and recover from crashes and do all the other things that you have to do when you're when you're running software like that's a critical part and I think that's one of the things that you really get very well from writing a project like you get a you get kind of a little narrow slice like you don't necessarily get the broadest view from doing that but like if you're like oh I built a thing and it does X and I went and I learned how
Starting point is 00:27:26 how to do it well, something that I'm happy with, like that aspect of the software engineering of that language really like clicks and is super valuable. And so I am definitely not expecting to get any of that from just reading code because a lot of it is like, okay, staring at the stack trace being like, what is wrong with this thing? Yeah, right, right, right. I don't even know to figure out what is wrong with this thing. I heard, though, that if you write in Rust, there's just no bugs. That's what I do.
Starting point is 00:27:54 Oh, well, maybe that'll be. That was what the word. If it compiles, then you can't possibly have any bugs. That's right. That's right. Sorry, it's slightly more, more snipey than it sounds, snarky that it's that I mean it to be. Because, you know, like, this is, it's just top of mind for, like, folks in the C++ community where, you know, Ross is obviously quite obviously has a lot of benefits over vanilla C++.
Starting point is 00:28:17 And, you know, it keeps being touted out. You're like, it's, no, it's still possible to have logic errors in Russ, right? You can just have the wrong understanding of the problem. That's no language is going to save you from that. Yeah, or an infinite loop. You know, again, that's, you know, no one's going to stop you from writing an infinite loop. That's exactly right.
Starting point is 00:28:33 Fun side fact, did you know that snark was a portmanteau or is a portmanteau? No, what is snark? It is a portmanteau of snide remark. Get the heck out. I figured it was Lewis Carroll, you know, the hunting of the snark and then it came from that somehow. Although I believe a whole bunch of words came from the nonsense. poems that Lewis Carroll wrote, including, oh, my gosh, there was a list of them the other day. And I was like, oh, yeah, yeah, that makes sense.
Starting point is 00:29:01 But yeah, I mean, is, is, so what two words is portmanteau made from? And, you know, the tragedy and missed opportunity is, isn't it just? It's, why, why would you not do that? I mean, I think it's, uh, it's the, the, uh, appendage on the foot of someone from Portman. That's, we used to have this term, uh, AR redundancy. I forget where that came from.
Starting point is 00:29:30 It was for things like pin number and ATM machine. Oh, yeah, yeah, yeah, yeah, yeah. Oh, my gosh. It stands for acronym Redundancy. Oh. Yeah, that is definitely red, right. The thing is, out of context, if you just say pin, you might be saying, you know, you might be referring to the sharp bit of metal that you, you know,
Starting point is 00:29:52 hold things together with sometimes. But anyway, this seems. like we've reached the natural end of our expectations in my, dear listener, I'm sorry for all the dings and bings and everything that just happened. A bigger noise earlier was me throwing my phone as far away as I could because it kept making noises and I,
Starting point is 00:30:10 and also I apologize at my left slack on and so if any other dings have come through. I'm only apologising really to our listener and me in a few hours' time when I edit this, but cool. Well, this sounds like an interesting experiment. we're going to have to, we should put a pin somewhere, uh-huh, and that's not a, right, the other kind of pin in the calendar sometime to revisit this. Yeah, yeah, yeah. And see how this worked out because this is an interesting way of learning.
Starting point is 00:30:40 Yeah, especially the thing on the train, you know, continuing to keep making good use of time. I mean, I use that what a brilliant thing. I mean, Jake, I'm not sponsored. But, you know, that's another thing that I'm doing to try and remind myself, like enough of the maths that I need, plural, to. help my children do whatever they need to do, although they've really surpassed me now. But yeah, but no, that's cool. All right, friend. Well, before I ramble any more, I will bid you farewell, and we'll chat some more
Starting point is 00:31:08 another time. Until next time. You've been listening to Toos Compliment, a programming podcast by Ben Radie and Matt Godbolt. Find the show transcript and notes at www.complement.complement.org. Contact us on Mastodon. We are at Tooscomplement at hackyderm.io. Our theme music is by Inverse Phase. Find out more at Inversephase.com.

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