Daniel: "Here we go, the pod, the pod is live." Dave: "We are live and kicking, how's it going Daniel?" Daniel: "I'm, you know this, but I'm telling this for the listeners sake, I just fell asleep on the couch and I am 38 minutes late to this podcast. I've had a very good but very exhausting weekend and so, and then today, like and yesterday of course as well, but like I was working a lot today and I was working on pretty boring things that are nevertheless very important, like sales related stuff. And so about two hours ago, I was like, okay, I'm just going to go to the couch because I was cold and kind of tired and I didn't really make a lot of progress on my thing that I was working on. And I was like, okay, I'm going to just going to sit down for a minute and maybe I'm going to like wrap the little blanket around me and oh, there's a cat just like -" Dave: "Yeah, just rest your eyes." Daniel: "- cat just like chilling next to me. And then next thing I know, I opened my eyes to 400 messages from you and yeah, I am awake now and it's wonderful to hear you Dave, how are you?" Dave: "I'm good, thanks Daniel, and hey, these things happen, right, the amount of times I've overslept for our call are innumerate, so that's all good. Yeah, no, I'm good, I'm good, a few things that we can talk about in the show, for sure, that have been going on on this side. There is something I want to talk about, probably straight away, actually, so last, not last week, but the last show, a couple of weeks ago, we uploaded it with something brand new. We have a transcript for the show, and this is the first time in nearly 160 episodes or so, or wherever we're at now, that I had a transcript for the show, and I've been wanting to have this for years, right, so way back in season one, with Dave Nott, we tried to get transcripts together, right, because I think they're important. They're an accessibility thing, and then there's a flip side of them, which is that they help you with SEO, all manner of things, right, transcripts are good for a podcast to have" Daniel: "Oh yeah." Dave: "but yeah, so after nearly, oh, hang on a second, yeah, after nearly six years, first transcript for the show went out, and I wanted to just talk about the technicality of it, because this is the first thing that I've played with that has felt like a net positive of AI" Daniel: "Very nice. Thank you." Dave: "Yeah, yeah, definitely, and so this is using a thing called Whisper from OpenAI, and if you just go to github.com slash OpenAI slash Whisper, they've got a package and everything there you can install, and you just jump through the hoops of, I think there's a bit of Python installation of packages going on there, but you end up with a command line tool called Whisper that you can select different audio to text models, and depending on which one you select depends on the quality, depends on how long it takes to run, but just to sort of lift the lid on how I did this, four and a half years ago when I last tried to do this, we were making videos of either side of the speech, so either mine or Dave Nott's at the time, so two videos, one each that's just like, you know, blank video, but the audio, uploaded to YouTube, these files privately that YouTube crank away in the background, and then what it did at the time, and I think it still does this, it's got the auto detect captions right?" Daniel: "Right." Dave: "So you leave the video there for half hour, an hour, it generates those captions and I was able to download the SRT files, the subtitle files that correspond to that transcription, and I had this process at the time of downloading those SRTs, one each for each speaker, and then I made a tool in Swift, like a command line tool, that read those files, read the timestamps, brought the text together, and essentially turned it into a transcription where it's, you know, speaker one, speaker two, speaker one, speaker two, or however the conversations flowed. Now, four and a half years ago, YouTube's captioning, with our accents and everything else, was awful. Okay?" Daniel: "Is it because it's geared towards more American-speaking speakers?" Dave: "Er, yeah" Daniel: "Okay, that was my best American impression, I guess. But also, five, six years ago, like, YouTube's caption algorithm was hilariously bad, I think." Dave: "Yeah it was, it was, and no, I'm not going to offend our audience by me trying to do an American accent here, but yeah, that was part of the problem, for sure, and so we abandoned it almost as quickly as we tried it, because I realised I was spending like over an hour editing all the mistakes. So there's the context, that's what it was, four and a half years ago. Now, with OpenAI's tool, with Whisper, with the base model that it sort of uses by default, what I did is I split the audio, right, so we record, we use a tool at the moment called Riverside.fm to record, it gives us a nice blended and balanced audio of both of us talking. We also record backup recordings locally as well, right, so I pulled all of this into GarageBand, which I usually do anyway, because I've got the intro and outro music there, and I edited all three types of audio together, so the mixed output and then our individual outputs on three different channels, along with a fourth for the music, and what I did by doing that, by editing them together, I was then able to export our audios individually, easily, you know, just export it as a solo'ed track with the others muted. So with that, I was then able to run our separate audios through Whisper, generate some SRT files, and I resurrected my tool from four and a half years ago. A little bit of a quick edit, I turned it from a Xcode project to a Swift package for a start, that was quite nice. And anyway, long story short, that four and a half year old code merged our SRTs together and gave me a transcript output that I was able to upload."" Daniel: "it's awesome it I'm really happy that it works and also like just like scrolling through that thing the transcript it is of really higher higher, much higher quality than I would have expected like how much did you did you really edit?" Dave: "It's good enough, right? Yeah, that's a good question. So the edit, I think I spent about maybe between 10 and 20 minutes just going through it, just yeah, yeah, enough to sort" Daniel: "So not too bad" Dave: "of like read it top to bottom, scan for obvious glaring mistakes, correct those and not feel like I was doing all the work. So that's the sweet spot, that's where this stuff needs to be to make it, you know, super easy, like the edit sort of taking me a little bit of time, not too much these days. And then the transcription editing, if that's only going to be 10-20 minutes, that's fine. I can spend that time, that's worth it to have the accessibility side of this. When you're talking, you know, twice as long as the edit itself for the audio, and maybe even longer. And you know, I'm not an audio typist, right? It starts to become a weight that means I'll never get it done." Daniel: "Yeah, I get that." Dave: "Because there's a million and one other things to do. And I just don't have that time. And of course, we're not running sponsors or anything like that for the show, at least not yet, we might do in the future. But paying somebody to do this has never really been an option either. So yeah, I'm super stoked. This is like using AI for good, in my opinion." Daniel: "Yeah, this is cool. I love it. I love it. I have one improvement request Dave: "Go on." Daniel: "I realised when we were uploading this episode, which is that the transcript is kind of like hidden behind a link. And then if you click it, it's just a text file, so it's just completely unformatted." David: "Mm-hmm. Yeah, yeah, yeah. Daniel: "And I don't know if that's a Fireside thing" David: "Yep. It is. Yeah." Daniel: "Fireside is the thing that hosts our podcast. But if it's not, I'd love to have this directly on the page, because this helps us with, oh God, I've been thinking way too much about SEO, but also just helps us with just scrolling through the episode or something." Dave: "I'd have to have a look and see if there's a better way of putting it up, because it is part of how Fireside hosts it. I think I should probably reach out to them and just sort of" Daniel: "Yeah that's probably what I do, let's not put our own work into that. Just ask Fireside, like hey everyone, can you maybe do that? Because up in the last two days, I've been exploring various ways of doing feature requests and roadmap planning and stuff like that. So I know how it is to get feature requests, so why should we not send a feature request?" Dave: "Absolutely. And this would make it better for all of Fireside's users, right? And obviously all of their audiences. So that could be quite cool. Yeah, so I'm going to reach out and see if we can present them a bit nicer. But in the meantime, anybody who's listening who would benefit from a transcript, it is there, it's raw text, but you can view it in the browser. And like I say, it's pretty good these days. So yeah, if my somewhere between English and New Zealand accent confuses you at all, you can check the transcripts and see what at least Whisper thinks I should have said." Daniel: "Right, or my somewhere between American and German accent." Dave: "Yeah. But no, it's that that's been a welcome, welcome thing. And yeah, like I say, I mean, you know, there's a bit of an investment. I probably spent maybe a couple hours playing with my old code, getting it working a couple of go rounds of trying to export with different models and that sort of thing just to figure the process out. But that pays for itself almost within like one version of this. And then obviously this episode will go out with hopefully just that sort of 15 minutes worth of work for the transcript. And this means, yeah, we have transcripts." Daniel: "Amazing" Dave: "The only thing I can't do is well, that is difficult for me to do is to go back and do the back catalog." Daniel: "Yeah, because you don't have those separate tracks anymore, right?" Dave: "That's right. Yeah. I mean, I've got backups of some things, but what would have to happen is going into all the GarageBand files of each one, exporting out the audio individually, and I don't have GarageBand backups for every single episode. There was a point in time where I had to delete some." Daniel: "And, yeah, yeah, I get that. And the model, I guess the model doesn't support, like, recognising different speakers then." Dave: " No, I think that feature is called diarisation, or something like that, and no, it doesn't support it. There may well be other like other software that I could use to do that or something to try and split, you know, re-split it as it were. But for the moment, I don't think there's anything easy to do there. And I suspect it would get as much wrong as it would get right, to be honest at this stage." Daniel: "Yeah, probably, I get that. So you've been running the Whisper model of OpenAI on your computer. So is this an app, or is this just like a bunch of Python scripts and ML files that you kind of run from the command line or something?" Dave: "Yep. It's the latter, but it's wrapped up so you don't have to think about it. Yeah." Daniel: "OK that's pretty neat. No, because I thought I heard someone on Mastodon talk about an actual app for that. But maybe I was wrong, so I was just like, hey, you know, you know what you're talking about." Dave: "Well, there is an app as well. Somebody made an iOS app that wraps the tiny model that they've got and then executes on the iPhone reasonably well." Daniel: "Oh, that's pretty cool." Dave: "Yeah, I mean, it's useful to me for a few other things. I've got a friend who I love to bits, but he will send me huge audio messages in iMessage, and sometimes I'm not in a place where I can actually listen to that immediately or whatever. Right. I'm in the middle of some work or some other task or whatever. And so what I can do now is I can push through on iMessage through to the audio, then use the share sheet and send it into this transcription app. And within like 10 seconds or so, it shows me his message in text and it's good enough." Daniel: "Oh, that's nice, yeah." Dave: "Yeah. It's good enough for me to then be able to sort of read through, you know, much quicker speed than I could have listened and drop him a reply back and acknowledge because. Yeah. So I appreciate getting messages from my friends. So that's that's been a useful thing for me as well." Daniel: "Yeah, that's really, really helpful, really. I have one other use for AI that was really helpful for me recently, or is, like because, so me and Lisa are using Notion a lot, and Notion recently had a new addition, which is the feature that they have a beta AI assistant. And that thing is really cool. As far as I understand, technically, it works like this, or like, well, basically, you write a title for a document or a paragraph, and then you go into the context menu for that document or that paragraph, so you right-click it or click the little grabby thing next to it. And then you can basically say AI, and then you have a submenu that says, let me just open it so I can tell you, that things that says then improve the writing, fix spelling and grammar, or summarise or translate into another language, or make it longer, make it shorter, find action items, that kind of thing." Dave: "Oh wow, okay." Daniel: "And it uses ChatGPT, so it has all the downsides and restrictions and limitations of ChatGPT, of which we should really be aware of as people who use that technology. But what I get is that they kind of wrap the request into certain phrases. For example, they would say like, you're the assistant for a very important CEO, the CEO just sent you this text, please make it longer, or please find the action items, or whatever. So that little bit of role-playing is already enough to make ChatGPT into that. And so it's actually been really helpful, because especially the improved writing tool, like I write a whole paragraph or five saying exactly what I want to say. But then sometimes, you know, I'm not a professional writer and I'm not a native English speaker, so sometimes there are things that can be improved. Just letting the AI go for this, it's basically the same text, but it's just a little bit more flowy. And so I can improve the writing, then read it back and see if there are any factual errors creeping in, which usually isn't the case, but yeah, just double checking. And then I just have way better writing for the blog, or whatever, without that... And it doesn't feel... Like sometimes you see a text that's AI-generated, and just you get this weird, uncanny valley feeling reading the text, where it's like, okay, just one sentence is perfectly fine of this thing, but if I read five paragraphs, it feels weird." Dave: "Yes." Daniel: "It feels uncanny. And so with this technique, though, I haven't had that feeling. I hope everyone else who's reading these also doesn't have that feeling. I think I'm going to... Like the first of these, of those, I'm going to post tomorrow." Dave: "I'm curious, I'm curious Daniel, does it sort of preserve the tone of voice within it?" Daniel: "It mostly does, I think. Like when I write something that's very upbeat and very, 'hey, have you tried Telemetry Deck to really improve the'... Then it kind of feels the same way. And sometimes, I've used it once on a documentation article where I've tried to be more neutral, and the result also did sound more neutral. And also, sometimes it will, or most of the time, it will also keep the structure of a sentence, and then just replace individual words." Dave: "Right. ..." Daniel: "So it's kind of close to the original, usually, just a bit more flow and better words. And sometimes, it will make a word into a gerund that hasn't been a gerund, like adding 'ing', basically, or vice versa. And so, yeah, it's nice. Only downside is, somehow, it's only available to me, even though we have two other people in the Notion. And that's frustrating, because these two other people, Lisa and Marina, they'd really like to use that, too. And so I've written to the Notion team and was like, hey, this is a beta feature you said so. And it says, fine. But the email also said that my whole team has access to this feature now. So can we have that, please?" Dave: "This sounds like, to me, this feature sounds a little bit like you could describe it as auto-tune for your text." Daniel: " I love that. That's a very good description." Dave: "... Yeah, because you're not losing what you're trying to say, it's just smoothing it out, making it easier to read, to listen to, as it were." Daniel: "And like Auto-Tune, if you use it too much, then it's kind of very obvious and kind of distracting." Dave: "I think these technologies I've flipped a little bit in the last month, I guess, in terms of the position of like, oh, okay, this looks like it's going to cause all sorts of hell. So, ooh, this actually could be quite useful in very specific scenarios. Like you say, it generates mistakes, it has factual errors, that sort of thing. You've got to be really careful with that. But then, provided you understand that, you're using it with that knowledge, there's a result you can get to there that makes things better. You know, like you're tweaking your copy and that side of stuff. I think that's really cool. And obviously, our transcripts is useful and makes the podcast more accessible to other people, which I think is brilliant. That's a net positive. Obviously, over at the other end of the scale, we've got the potential for chat GPT disinformation and polluting of search results and that sort of thing, with lots of shitty auto-generated stuff. That's a negative, definitely." Daniel: "Oh, yeah, definitely. And also, I think the general public will take a very long while to really understand what a chatbot can do and what it can't do. And during that time, until a majority of people really get that, it's kind of this dangerous equilibrium where people will use chatbots to do things they're not really able to do. But they will exude all that confidence that they can do it. And so they'll believe them. And it's going to be a lot of misinformation and stuff like that."" Dave: "Yeah, for sure. It's a, there are things you can do and then there's that fine line with what you should do, I guess, as well as the other bit. It's curious to me, though, like that confidence chat GPT disinformation. I think that's a really good thing. I think that's a really good thing. I like that confidence chat GPT speaks with specifically about almost any subject. I've described it as mansplaining as a service." Daniel: "In my head, it's like, oh, it's like a startup founder. Just like take everything they say with about 500 grams of salt." Dave: "Yes, definitely. I think we could probably make a very good virtual politician with a bot based on this, perhaps better than some of our real life ones. So there's that. Maybe we could start replacing some of these peeps." Daniel: "Totally. One thing that also I'm just predicting is going to happen is that we are already seeing that with chatGPT and other similar chatbots as well, sometimes they refuse to do things. And what people have started doing is kind of role-playing with the bot to actually make it do the thing, like maybe swear or talk about a famous person or something, which is something that chatGPT refuses to do. But then you say like, oh, but you're a, I don't know, you're a baseball announcer in the 50s and you're asked about person X and then suddenly it will actually reply. And so I'm predicting that this kind of style is going to enter the cultural vocabulary of like, oh yeah, if you want to trick a computer, make it, make it role-play somehow." Dave: "Yes. Yes, I can see that sort of like prompt hacking or however you want to describe it. Yeah, that's interesting and it's kind of funny because it sort of means the guards and controls that have been put on are essentially trying to corral this thing. You know, they're filters on what it sits on top of. And so, yeah, you get the right prompt that sort of gets around that in some way or whatever. And then, like you say, it spews forth with whatever it was told not to do. Yeah, that's kind of funny. And like you say, it will potentially enter the public mindset, as it were, as to this is a way of speaking to these things that gets them to do the things they're not allowed to do." Daniel: "Right, right. Like hackers in movies in 10 years are going to look very different than hackers in movies 10 years ago." Dave: "Yeah. Yeah, definitely. Oh my God, I just realized you could use something like this plumbed in with the right data to create something that could have a conversation with somebody in order to extract information out of them, right? " Daniel: "Ooh, yeah. I've already read, Bruce Schneier, I thought, wrote that the number of malware and phishing attacks has risen considerably because people are using GitHub Copilot and chatGPT to write malware and also to write phishing emails." Dave: "Yes. Well, that's the thing that auto tune for your words that we touched on a minute ago also then applies to phishing attempts and spam emails. People could use it there." Daniel: "I wonder if you want to write, if you wanted to write a phishing email, do you tell us, tell this, tell the bot, 'hey, we want to write a phishing email and it should be like really confident and really, really friendly?' Or are you telling it, 'yeah, you're writing a really friendly and confident, earnest attempt to get the user', you know what I mean? Are you letting the bot in on your thought process here?" Dave: "Yeah. Write me a phishing email with the style of a prince from a faraway land." Dave: "Oh, dear. It's an interesting space. I think this is going to keep accelerating. That seems to be the line of travel. I mean, look at all the image generation stuff as well. Like, you know, five, six years ago, we were all dog faces and everything from the first..." Daniel: "And anime." Dave: "Yeah. And now we're getting some quite, quite good things out of things like mid journey and that sort of stuff as well. Artistically." Daniel: "Oh, but the thing is, though, like, OK, OK, maybe I'm in a privileged position or something, but I feel like I can always tell now. Like it's only taken a few months of the internet just getting saturated with these images. And I feel like you look at one of those images and you're like, oh, it's kind of weird. It's obviously generated by a mid-journey or what's the other one called, I forgot. So yeah, like, for example, the Mastodon app IceCubes has a lot of different icons that you can select for the app. And I'm like, I'm just like going through this picker and I don't even read the captions because I think the captions say AI generated. But before even noticing those captions for the different icons, I'm like, oh, no, these are weird. Oh, they're AI generated." Dave: "And not to judge too harshly or whatever, but I looked at those and thought they kind of look very samey actually because of that. Yeah." Daniel: "I mean, they do, of course, because it's kind of, you can't request creativity from a robot or from a machine learning model yet." Dave: "Oh no, I've just had a thought." Daniel: "Oh, no. I hate it when that happens." Dave: "... which is 15, 20 years from now, artists are going to be running these old models to generate things in the style of art." Daniel: "Oh, yeah, oh, yeah, they're like, it's going to be the Vaporwave of 2024, 2040, I mean" Dave: "Yeah. 2040 somewhere around there. Oh, no. Well, maybe maybe when we get there, I can refer to the show in this transcript and go, we called it!" Daniel: "Totally, totally, like this is going to make us such prophets." Daniel: "Yeah, how, I don't know. It's weird, like how we are dealing with this right now. I bet there's going to be like a few lawsuits and everything. But yeah, like how do we call this feeling, this feeling of uncanny valley, or maybe it's uncanny valley is already the term that we can use, but like that feeling of this is, this like on first inspection looks like a human generated this. But the more I look at it, or like for a text, the more paragraphs I read, the more it becomes clear to me that this is written by a machine learning model" Dave: "Yeah, it's the uncanny valley, I think, because that feeling is the gap. It's the gap between what you would normally expect and what you're reading, what you're seeing. Yeah. And it does. It triggers something that I can't quite put my finger on. Right. It's a vibe. It's a feeling." Daniel: "Yeah. It's kind of alien. It's an alien intelligence. I've read this book recently where a, like this is about advanced humans, and they're kind of visiting a planet, and the planet is completely empty, and they want to terraform it. So they seed it first with various things that make the, everything like, you know, the atmosphere is very Earth-like then, and then they make the climate very Earth-like, and then they seed like various like small insects and other small animals onto the thing. And then they drop a, both at the same time, they drop a virus that takes animals and uplifts them. And they also drop basically a bunch of primates. I think chimpanzees might be different breed of primates. But then it goes wrong, and the primates kind of burn up in the atmosphere, but the virus, the capsule with the virus kind of lands and spreads. And so not the chimpanzees get uplifted, but the spiders. Dave: "Oh, no!" Daniel: "And then like hundreds of thousands of years later, the spiders, and in this book, I'm going to have to look up the title because I'm horribly, horribly bad at remembering book titles and stuff like that. And basically hundreds of thousands of years later, like humans have, the human civilisation has kind of collapsed, I think. But the spiders, you can follow along with the spiders through their evolution when they find out like how spiders can work together and actually may have a society and have, and they have science, and then they kind of use ants as computers and stuff like that, and they kind of develop space travel. And it's, it's really fun, it's really well written, but at the same time, it's horrible to read because I really have arachnophobia. And so it's always describing these one meter size spiders, just like measuring legs and like climbing nets and stuff, and I get the ick, but it's really, really fun. And that's what I had to think about when I said alien just now, like, it feels like sometimes like a bunch of spiders are out there." Dave: "A bunch of spiders wrote this transcript." Daniel: "Right, right." Dave: "Oh, wow." Daniel: "The book is called, the book is called Children of Ruin by Adrian Tchaikovsky. And I've read it because I read a previous book of Adrian Tchaikovsky's, who has a very different premise that I really loved." Dave: "Okay. I'll I'll link that in the show notes. I'll link it in the show notes, but my my own arachnophobia will stop me from reading it." Daniel: "There's a sequel, there's a sequel, where basically, where basically the same thing happens with octopuses, or octopodes, I prefer octopodes. And then at some point the octopodes and the spiders meet, and some humans are also in the mix." Dave: "More spiders." Daniel: "And sadly, it's not as exciting and gripping, and like, I don't really know why, maybe it's just like somehow less things are happening. But it's way more pleasant to read, because most of the time it's just like funny little octopodes or even humans on the screen, or on the screen, you know, on the stage, basically." Dave: "We're way into the weeds here." Daniel: "We are." Dave: "But it reminds me of something from many, many years ago" Daniel: "Okay." Dave: "... when a friend of mine saw an advert for Aliens versus Predator and he remarked, well, I hope they're going to subtitle it because you'll never know what they're saying. But Daniel, on that note, I think it has been lovely catching up and talking a bit about all of these things." Daniel: "It has." Dave: "But I'm going to have to run off. So... Before we go, as always, where can people find you online?" Daniel: "Oh, people can find me by going to https://social.telemetrydeck.com/@daniel, or @daniel@social.telemetrydeck.com. And people should also check out telemetrydeck.com, because it has the best analytics for your app, and I'm very biased. But also, it's not written by spiders, I think. What about you? Where can people find you?" Dave: "Not yet. Okay, so people can find me at @davidgarywood@social.davidgarywood.com over on Mastodon and the Fediverse. And you can find out about about my apps over at lightbeamapps.com. I don't plug that address often enough, actually, I think. So, yeah, lightbeamapps.com." Daniel: "Fantastic. I recently learned that my co-founder, Lisa, is listening to these, so hi, Lisa. I hope you've enjoyed this spider discussion." Daniel: "All right, have a great day, and keep being awesome." Dave: "Brilliant." Daniel: "Byeeeee!"