Daniel: "What is the transcript? The transcript is all around us. It guides us. It feeds us information. Unfortunately, I cannot show you what the transcript is. I cannot tell you what the transcript is. You have to experience it yourself. So take the blue pill and you will wake up in your podcast studio. But take the red pill and I will guide you deep inside the transcript. You will see how far the rabbit hole goes." Dave: " Daniel: "You see, I am tired today and when you are tired enough, there is a tiny bit of silliness in there." Dave: "And a transcript as well, so yeah listers of the show welcome. We are now this will be our third episode that will have an actual transcript on the website And just just beforehand. We ended up kind of talking about that. So yeah, have a look. There are words, these words that we are speaking, should be there as text on the Waiting for Review website along with the podcast episode" Daniel: "Yeah, you should really do that. Hey Dave, how is it going?" Dave: "Pretty well Daniel. Yeah, it's been a good doesn't for that long since we last spoke. Actually. I was gonna say it's been a good week the last last however many days since we last caught up" Daniel: "Regardless, it is an absolute pleasure to hear you again." Dave: "Likewise, likewise. I have news I'm kind of excited." Daniel: "Oh, you have news, you have news. I have an idea, but do tell. " Dave: "Well that SDK, the SDK for Mastodon TootSDK that I've been mentioning on and off for a while now Has finally been released! It's out there and in the world. Yeah!" Daniel: "I need one of those thingies, but like, yeah, imagine me doing the happy celebrating emoji 🥳. Awesome. That's really cool. So TootSDK, I can use it as a Swift package?" Dave: "Swift package, yeah" Daniel: "...that I can use to do common Mastodon-y or Fediverse-y operations, like get the timeline for a server, stuff like that, follow a user." Dave: "Exactly, yeah. Yeah, so you can import at the package to your project. Obviously import the the library into your Swift file and then use a client object that connects to whatever instance you want to and yeah like you say you can then do regular operations on that like hey, give me the users timeline or Hey, I want to make a post and it's got these images attached and you know, it's It has this content warning or whatever you want to do, right? This is Mastodon, we have content warnings that sort of thing. So yeah, it's it's designed as being a turnkey thing, SDK library, you can just put it in and then start working with Mastodon data quite quickly" Daniel: "All right, and it is it is it Mastodon specific or is it or different question does it use ActivityPub or Does it use like? like the I don't know the the API is for for the Mastodon server and the API is for the Pleroma server?" Dave: "The others yeah. Yeah, it's the latter, right? So we're not using any any raw ActivityPub sort of calls and Actually with good reason Because a lot of the operations that are relevant in this sort of way of working kind of live more the the API layer in some ways. So what we're doing is the ActivityPub side sits Between the the services, right? So that's what that if you think of the stack, that's that's going on at the server level the instance that your account is on whether it's Mastodon or Pleroma or any other sort it has a rest API and TootSDK sits on top of that rest API." Daniel: "Yes" Dave: "As I say the goal here though is that it doesn't matter whether it's Pleroma or Mastodon in terms of your app and using TootSDK you just use the SDK And you get posts back regardless of what the original encoding was" Daniel: "Yeah, that's cool, that's really cool. So, I can use this to basically write my own Mastodon client for example?" Dave: "Yes, and like I say that would be a client that doesn't care whether it's connecting to Mastodon, Pleroma, or some of the other ones that are quite similar" Daniel: "Ah, that's nice. And, is this in use from like is anyone already using this SDK, I mean, it's when did you release that? That's like just a few days ago, right?" Dave: "Yeah, yeah, so the time of recording we released it approximately about five or six days ago, and as far as I know nobody has put an app into the store in that time, But there are a couple of people who are now using it..." Daniel: "Slackers!" Dave: "... Heh yes,Yeah, yeah, yeah taking their time ay." Dave: "There are a couple of people who are hacking away using it to underpin the projects they're working on. So I think it won't be too long before there's something out there in production sitting on top of this. And then of course the other maintainer of the project Konstantin and I, we both have our own apps that we're starting to build together on top of it as well. So, yeah if not from the community then we will definitely be dog-fooding it and using it for our own projects." Daniel: "Fantastic amazing. Um, how is the project been received?" Dave: "It's it's been received really well like within the first sort of 24 hours, things seemed to go a bit crazy to be honest. My notifications were going off, and if I look at the the repository at the moment we've had 212 stars on there at the time of recording, overall" Daniel: "Wow, not bad for a thing that's like five days old." Dave: "Yeah, and I think about 150 of those came down in the first sort of two days" Daniel: "Really cool." Dave: "Yeah, and the thing that's been really really fun for me, one of the goals with this right, is that this is something that every client app kind of has to navigate right and then, so by default you're presented with these options. I want to build a client for the Fediverse, Mastodon, whatever. People will then naturally land on probably building out just for Mastodon as a first port of call and then everybody who's making these sort of client apps is having to solved this problem. They're having to work with the API and work with the model data that comes back. And so, it seemed natural to me that this could be a community thing, right? We solve this bit together, and then as as new things happen you know, it only requires an update to the SDK and then everybody benefits from being able to do those operations." Dave: "And so, one of the initial goals was that working as a community to sort of lift and shift this, this type of work without it being, you know repeated again and again. Daniel: "Mhm." David: "And already we've had a couple of community contributions to the SDK we've had people raise PRs and add some things that we hadn't done already That's something else to notice the SDK is currently at version 0.19, we have not reached 1.0 yet and we're kind of reserving that for when we've covered most of the Mastodon API, so we've, we've got timeline operations, we've got post operations, but there's a whole bunch of other things for Accounts and specific bits that we've not got yet. Other people have landed on this and gone. 'Hey, I actually need to have a timeline feed of just my favourites. I want to be able to pull my favourites back, or I want to be able to pull back my my boosts' and so those have been PRs we've received that have added that" Daniel: "Ah, that's really nice. The power of community." Dave: "Yeah, yeah, and somebody else added a PR that has simplified some of the sign-in process. So if you're using iOS or macOS You can use this other way of signing in now with the clients where it presents a web view And it's using the AS Web Authentication API to then go and present that sign-in Which which is cool because it means that you can Instantiate the client object you can hit that call up you get an authentication token back that you can then persist and use again on subsequent launches of your app And you it's a real no-brainer, you can just make one call to sign in now" Daniel: "Oh that's really nice, fantastic. Where does that, like where does it store the sign-in data? Is it just like locally in some default file or?" Dave: "Now we hand wave that one that's up to you the client app maker. Yeah" Daniel: "Oh okay, that's good though because I'm getting ideas for like, Mastodon stuff on the server or like headless basically and like so it's not it's not iOS it's Swift right, huh very good." Dave: "So Yeah, you could totally use this with Vapor on the server and that's that's also part of the idea. So At the moment if you look at the the repo you can see it's we're supporting iOS macOS tvos watch os and Linux" Daniel: "Even Linux." Dave: "Yeah, and that's been part of it though, right is that we we didn't just want this to be yeah, just for iOS or just for Apple platforms if it didn't have to be and and so Yeah, expanding support out to to Linux and Vapor that's kind of been there from the beginning And we've got an example app for that as well. And we have a swift ui example app as well We actually also have a command line app that runs on Linux or macOS" Daniel: "Oh very nice." Dave: "Yeah, so it's it's a lot of fun Yeah, so it's a lot of fun" Daniel: "Oh it's just a command line app. I'm getting, because like I just thought like this week one of my topics has been I love Vapor but compiling it from scratch is an absolute pain because it takes literally" Dave: "Oof Oof" Daniel: "12 minutes on most you know like continuous integration hosts. So oh I could just do this, I just could do this without even using Vapor." Dave: "Yeah, yeah you could" Daniel: "Anyway, yeah but so how do you feel about it? Like how do you, are you happy now that it's released?" Dave: "It felt like it had been hanging over me for a little while because i'd sort of said before, way before Christmas. Oh, we might have it out by christmas And we hit a number of things along the way that just didn't that couldn't happen And so I felt a bit bad because we'd taken a step back right and then it kind of got okay We're not releasing it until we've got these things and Won't get into the details of that too far, but suffice to say working with custom emoji images and getting them in line with text is fiddly as all heck" Daniel: "Oh yeah that's hard." Dave: "And we haven't actually solved that but we went round and round on a few different ways to Format and present your posts and that sort of thing" Daniel: "Oh but many people haven't thought like I mean Ivory hasn't solved it for example." Dave: "Yeah, yeah, there's there's actually a SwiftUI package that does solve that, and we're using that in the example In the example swift ui app But I only found that like a couple of weeks ago and that was kind of a linchpin of like right now we've sorted this we can clean all these other bits up" Daniel: "Okay, oh I see." Dave: "Yeah, so but I feel happy about it. I felt bad because we delayed a little bit from where we wanted to be but then The release itself has gone really well. Like I say, we've had positive community engagement. I think it's been more useful for us waiting, you know straight away as well and you know, I'd rather this sort of thing be be ready Ready to rock and roll when it's released rather than going. It's actually 0.01 and You can't do much with it at all. I think that would have been a bit of a 'Yeah, okay. thanks guys' from the community, you know" Daniel: "Yeah I get that. I mean, I mean it's probably, probably a bit sad that over the last few months at least I know of at least five Mastodon clients that have been started and of course they don't use, they don't use TootSDK now because they can't, because they started before that." Dave: "Yeah, they've gone too far down the path. Yeah" Dave: "I think that there could be a release. I don't know. I don't know if it's going to be a release I don't know if it's going to be a release Yeah, I think that there could be a route for some of those apps in the future if they wanted to switch over to using it in a sense of Obviously, we'd welcome contributions from from people like that as well. If there's more they can sort of bring to the SDK that we've not not added yet But the other thing about it is is that by switching to it you will then start to get support for for all these other permutations of instance with different api types That the the SDK is solving. So then it doesn't matter if your client if your user for your app, it has an account on Mastodon or Pleroma or Pixelfed. Those are the sort of main three that we're supporting to begin with It won't matter where that account is they can use that client app if the if TootSDK is supporting it that could be quite attractive to some people if they're not too far down one path or another It could be quite good" Daniel: "Oh yeah, yeah I get that." Dave: "Yeah" Daniel: "Oh let's hope because, because yeah if they've just built it on the same basis then there's a big chance that the work only has to be done once or and it's more stable" Dave: "Yeah. And that's the thing right you was you were saying a second ago oh, I could perhaps use this on the server or spin up something to do x y or z. That's another side of this Is that it's relatively turnkey? You know if you've got an idea oh, I want a bot that just goes and downloads my I don't know downloads my timeline and then Turns it into markdown and saves it somewhere for me, right? You could do that and you could use the sdk to do it and you could write it in swift and you could set it Up on a I don't know a github action or something that's running on a regular basis You know and use it in those sort of situations as well So We I don't necessarily want to be responsible for lots and lots of awful bots out there but I think for people who just have a an idea that they just want to go and You know play with and if they're a swift developer already boom, you can use this go and give it a go hmm" Daniel: "Yeah I, I think I'm gonna make a bot with it. I just have to find the time like I have created a to-do for myself and it's just slotted in at its designated priority and there's only like four billion other things in front of it." Dave: " So you'll get to that in 2032" Daniel: "Approximately. Maybe, maybe, yeah." Dave: "Well, moving on from my tooting, Daniel, tell us a bit more about your, yeah, tell us a bit more about your list, what's been dominating your time lately." Daniel: "Oh so much, oh I wanted to go into specific directions with this and I completely forgot about it. But it's gonna come back to me at some point. In the meantime, I can just tell you that I've been, I've been working so much. Oh yeah that was actually it, yeah. I've been working so much on the filter editor for Telemetry Deck that because like previously people like if you wanted to have just parts of your signal like included in the data set for building one chart like that was like you had to enter, you had to manually enter JSON into the website and it would then like just like every line in the JSON then would have to be true so all your filter conditions would be combined using an AND operation basically." Dave: "Right" Daniel: "And so I, we knew, we knew that of course this isn't something that can, that can stand the test of time. This was definitely a thing that was supposed to be better at some point. And so I set out and was like okay, so now is the time to upgrade this. Like we have a new filtering format, the query language has been supporting it for a few months now. It's just not, you just can't enter it right now." Daniel: "And so I sat down with, together with Flo who's like providing a lot of like design and inspiration here and like tried out various things, also asked the Mastodon community about hey how do you feel about this, how do you feel about this. And now this filter editor is now completely done and you can use it and I updated the server to actually deal with the filters in the new format. And the problem is, it turns out you can use that thing now to, just with pointing and clicking like create really complicated filters if you want to. It can combine sub filters or sub conditions using AND and combine them using OR. It also doesn't have to be an equals thingy, like you can also compare against signal type, you can compare against regular expressions which is really cool. But it is, it doesn't really fit into the context of the rest of the inside editor, which is just where it lives. And so, like because it just uses a different way of storing that data. And so I'm always, I'm thinking like huh, I have on my, like basically my next to do is just updating the whole inside editor. And so I'm thinking like huh, do I put a bug fix out that will just like make the existing editor work with a new filter editor or do I just hold everything back until everything is ready at once. And I, I don't know, I switch between those two options about 60 times a second. What I want the most actually to be, to have everything finished and released because then people will be happy with the telemetry deck. And that's just all that I want. No, but I think the right, I think the right port, the right action is to release the filter editor and do the bug fixes that it needs because then there's a big piece of code that is out there that's being used and it's providing value to people right then and there. As opposed to just waiting until the rest of the editing stuff is done because who knows, I might like stumble up over something tomorrow and then I'll be just stuck for a week or two. And then like not only does it get the, like then suddenly two features are blocked. And so that's kind of, that's kind of shitty. And I think what I want to do, I think what's the correct solution here is just releasing, releasing the filter editor immediately and then just have like these little step by step improvements. Like sometimes I have to remind myself that we are not Apple and it's okay to just release something tiny every week or so." Dave: "No, I agree. I think it's the right way to go because then like you say, your customers are getting the value from that. You're getting the feedback from them potentially as well. And I think that's better than just waiting and waiting. He says after having said earlier in the show about waiting six weeks or whatever for TootSDK, but there's a balance there, right, between, yeah." Daniel: "I think I'm just so eager because over the last few weeks I've really developed a sort of roadmap of where I want to be with this part of the app, with the whole editing your charts and insights. I know how it should look technically. I know the features it should support and I kind of know the order in which I want to develop those features. And so now that I can really see in the distance, like the way that this could look and feel at some point, like maybe during the summer or in the fall, if everything goes really well, I really want to go there. Like I really want to reach that point because it is so much cooler than what the software is now." Dave: "Well, that sounds like a good goal to have that feels like absolutely the right way to approach it to me." Daniel: "It is. It is. I'm just like sometimes I need to apply the brakes a little bit because I can't work on this thing eight hours a day. Because I have another job, which is basically the co-founder job, which doesn't involve any programming. And if I spend eight hours a day programming, then I spend another four or five hours doing the other job. And that gets, I've been trying to do that, but I don't think it's sustainable." Dave: "No. No, that won't be sustainable. That's doing one and a half jobs at least." Daniel: "So I just got to curb my enthusiasm, I guess." Dave: "But again, Daniel, you're like breaking the goal down into lots of small, smaller goals and bits you can release. That's an ideal way of them being able to keep going with limited time as well." Daniel: "Oh, definitely. And also like people, whenever I post about it on the social medias and stuff like that, people will actually see that something's happening and like we can talk about it and stuff like that. That's really cool. And the only downside, and I think that's one of my fears, because that's actually happened once or twice in the last few weeks, that somebody saw my posting about various new features. They made an account, maybe even a paid account, and were like, hey, this is actually like this exact feature that you screen-shotted is exactly as expected, but there's a lot of other things missing. And so this is actually not for me right now, because it misses, it's missing this, this and this. And that is so frustrating to me, because I completely agree." Dave: "But that's a yeah, you do. And that's actually it's a negative in the situation and that, yeah, they don't get what they want immediately. But it's a positive in that it's obviously signal a positive path. Right. This is something people want. And so, yeah, it's awkward. You get to say, I'm sorry, it's not there yet. Or, yeah, me too. This is on its way X, Y or Z time. They don't get it instantly. But again, I think anybody who understands what's going on with telemetry deck and how you're scaling it up and building it and that side of things. I think there's a bit of understanding people can have. You know, if you then come around two months later and say, hey, this, you know, this bit within this feature that you wanted is now here. There's a reasonable percentage of those people who will then be like, great. I can move to this now. I can use this now, even though you didn't get them the first time. You know." Daniel: "Yeah, I completely agree. Like we've actually started to implement procedures of like basically what we have these high level tickets about three of big features, we're just adding because those tickets are completely internal, we're just adding email addresses, or not even just names, I think of people that I want to email after the feature has been released, because maybe they're saying they can't adopt an empty deck before this feature isn't there. Or maybe they're just like, they're on the fence or something like that. Or maybe they are a customer, but they've really requested that feature. And because they're a big customer, that kind of bumped up the feature a bit in the roadmap. Because yeah, I'm not completely above reprioritising the roadmap if a very big customer says, hey, this is really important to me" Dave: "No. And you should be able to pivot and move like that. At this stage as well. That makes it makes perfect sense to go and do that." Daniel: "because we're nimble and stuff." Daniel: "Somebody just sent me a message on Mastodon that telemetrydeck.com was down. So I very sneakily opened a browser tab and typed in telemetrydeck.com and it loaded fine. So I replied to that person, hey, I'm sorry, it's probably on your end, because I have various things set up that will send me very, very loud notifications if any of our services go down, including the website. And it turns out that apparently the website is not reachable if you're on VPN." Dave: "Okay. That's odd. A particular VPN or just any type of VPN." Daniel: "They're using Proton VPN. I'll have to research it or something." Dave: "Okay." Daniel: "Maybe it's an Azure thing. And specifically the Azure CDN, I guess, because maybe they do CDN stuff where they choose a server that's close to you for the static files, and our website is 100% static files. So maybe it's just something like that, or a DNS thing or something." Dave: "It's usually DNS. When it's even when it's not DNS, it's DNS." Daniel: "But yeah. Most definitely." Dave: "Sorry, did that sound a little jaded? I've had a couple of run ins." Daniel: "That's fine, be jaded about DNS. It is very understandable to be jaded about DNS. The most frustrating thing about it is just how slow it is." Daniel: "But on the other hand, I mean, it does work like 99.99999 and so on percent." Dave: "It's only when you change something usually. And it's still quicker than a lot of blockchains. So let's let's not bag on DNS yet." Daniel: "I mean, yeah, the only blockchain that I use is Git, which is, I think, technically a blockchain. But we're not here to bash blockchains, because I do that all the time anyway. I want to tell you about, I bought a mouse. Like an actual Windows-compatible computer mouse. I'm usually a trackpad user. I love my Magic Trackpad. Every time I talk to mouse people, they're like, oh, but you don't have a middle mouse button. Oh, and you can't, I don't know, you can't right-click and left-click at the same time. Oh, I could never, because those two things are so important to me. And I'm like, you can't even do three-finger gestures. You can't even do four-finger gestures. How do you do the five-finger pinch and swipe? Like you just can't. How can you drag and swipe at the same time? You can't. I guess you could drag and mouse roll or something. Mouse wheel. Anyway, this is not a us-versus-them thing." Dave: "No." Daniel: "But instead, what has happened is, in anticipation of the launch of Kerbal Space Program 2, remember for the listeners, I am a huge fan of this game, Kerbal Space Program, where you basically build rockets and send them into space, and the sequel has been announced for, I want to say, three years now. And it's finally coming out into early access at the end of February. And so I've been considering, what do I want to use to play this game? I don't have a Windows PC. It's not for Mac. The previous one was Mac-compatible, but they only added that years after the Windows release. And I don't want to wait another few years. So I was actually considering buying or building a PC. I've decided against it because every time in my life that I've built a PC, just enough small stuff will go wrong that it's always a huge hassle. And whenever I tell this to someone, this person then says, at least if they're a PC builder or something like that, this person then says, nah, that would never happen. Let me help you. And then the last four times or so, what happened was I told this person, OK, sure, give me a list of exactly the hardware that I need to buy. And then we will meet, I will cook you a delicious meal, and then we will assemble this computer together. And you can look and you can check that I'm doing everything correctly. And then they're completely 100% sure that it will all go smoothly, because for the last 10 computers that they've built, everything went smoothly. And somehow, always, the graphics card doesn't get recognised or it doesn't boot because some chip is not flashed with the correct ROM. Or like at one point, the fan, the graphics card's fan didn't spin because some tiny little cable kind of fell into it." Dave: "Oh, no." Daniel: "And then the graphics card kind of fried itself. I don't think, ah, I think that it didn't fry itself, like it throttled itself down to being unusable or something like that. Long story short, it didn't. So I didn't want to buy a PC. And I kind of don't want to build or buy a fully assembled one, because also I have a Pro Display XDR. You can only use that via USB-C. And I don't even know if you can use it from a PC. And I don't want to have another monitor on this desk. I like it clean. So I thought about GeForce Now, which is what I've been using to play other games, which is amazing. It's really cool. It's like this streaming thing where basically all, not all, but a subset of the games in your Steam library, you can just open that and it will render it somewhere in the cloud magically, and it will appear on your screen, and it will send all your inputs in there and whatever." Dave: "Okay." Daniel: "And it works really, really well, but it only works for certain games. And so far, the rumours are saying that KSP2 won't be among those games." Dave: "Oh no!" Daniel: "So I went for a thing called shadow.tech." Dave: "Okay." Daniel: "And this is basically a complete Windows PC in the cloud for you. Like GeForce Now is just basically Steam as a service. Like you don't have to maintain and manage the Windows PC, but this is. So you give them, I don't know, 25 euros a month or something like that. And they give you a virtual hard drive, and you can click a button to boot that virtual hard drive off an actual Windows PC that they have in their data centre. So you're not renting the computer, but you're kind of renting a timeshare on a computer. And so I did that, and then you boot it up, it is actually like a Windows, you can install updates, you can activate Windows Defender, all those fun things. And so I installed Steam on it, and KSP2 isn't out, but I wanted to play something else just to try out if everything works. So I played a bit of KSP1, and I also played another game that's called Plan B Terraform, which is really fun. It's like a factory game, one of those factory games, but on Mars, and it has very cute graphics. And yeah, I might have to play that some more, but it turns out that at least with shadow tech, my trackpad is just completely unusable. Apparently, GeForce now did some conversion stuff or whatever, like where it would, for example, if I scroll on the trackpad, on the Mac, it's super smooth, right? But on normal mice, they have these steps. So I scroll one step, and it's, I don't know, the web page kind of moves for, I want to say, like 200 pixels or so. And so scrolling one step on the magic trackpad is exactly one pixel. So this was this game, for example, where we could zoom in and out of the map using the scroll wheel of your mouse, and I just couldn't zoom, because it would always zoom in 100% in or 100% out. And what was the problem with KSP-1? Oh yeah, I couldn't move the camera, because it didn't recognise right-click move. Because normally, if I want to right-click on my trackpad, I just click with both fingers, and then I can move, I can move. And I know that this works if I run KSP-1 directly on my Mac. But the Windows software or something didn't have the translation. So in the end, in the end, I broke down" Dave: "You've got a mouse." Daniel: "I asked on Mastodon, what is a good mouse that doesn't cost 150 euros? Everyone was like, yeah, get the Logi MX Master 3S, 3S. And so that was, that's what I have on my desk. Basically, it came down to either this mouse, which costs about $100, or one that costs about $15. That was always the second place in all the comparison reviews I read." Dave: "That's quite a jump." Daniel: "And I was really, because I was like, I'm not going to use this mouse all day. This is a half hour or maybe an hour in the evenings kind of thing, right? So I was really torn, but in the end, I was like, ah, let's just, let's just make sure, like, get the named product by a recognisable brand, because this will be more reliable, hopefully. Well, it's not. Dave: "Oh, no." Daniel: "This thing, I chose it also because I want it, I want to use it via Bluetooth, not via a dongle, because I don't have any USB ports left. And it is laggy as hell. Dave: "Oh, no." Daniel: "And I googled, and it's not about Bluetooth, like, you couldn't also use it with a dongle or with a cable, both of which I've tried. It is just super laggy because it is incompatible with M1 Mac Pro, Max, M1 Max, or M-based Max, I guess, like Apple Silicon. And so it wouldn't even pair for most of today. I kind of put it to the side and was like, okay, I'm going to deal with you later. And then suddenly it was paired an hour later. And then it was like super, super laggy. And people said, people said on the internet, people said, install the loggy software, Dave: "Okay." Daniel: "... Then you can update the mouse's firmware. And I was like, oh, I thought I left all of this behind. So I did. I did. It didn't really help. But the behavior changed. And so I uninstalled the loggy software again, because I didn't want to clutter my menu bar. And yeah, and I did a reboot and everything, I reset the Bluetooth stack, repaired all my stuff. Dave: "Oh, God." Daniel: "It all didn't help. But the thing is, right now, while I was talking, I was just like grabbing the mouse, just moving it around." And it moves, the cursor moves absolutely perfectly smooth now. Dave: "So, actually, it's working." Daniel: "Like I'm just complaining about it, fixed it. Hey, this is fantastic. Now I'm completely ready for Kerbal Space Program." Dave: "This is all you need to do. This is all you need to do, Daniel, is if you want to build a PC -" Daniel: "Now it's janky again. Now it's janky again." Dave: "Oh, okay." Daniel: "Ah, too bad." Dave: "I was going to say just dial me in." Daniel: "I was, anyway, this is riveting content, I'm sure." Dave: "Yeah, but I'm interested in the, is it the GeForce Now stuff that you said, is it performant enough what you're using, or is it the shadow.tech that you're actually going to use to game here?" Daniel: "So I've previously actually used GeForce Now, and GeForce Now is really super performance. Of course, it depends where you are in relation to the server. So if you're too far away from the servers, you might have input lag, for example, where your inputs are not reaching the server quickly enough, so it feels kind of off. But with GeForce Now, especially with the, I don't even have one of the higher plans, but you get like a really big graphics card." Dave: "Okay." Daniel: "And so with all the games that I played, I played the newest Just Cause, I think it's Just Cause 4, and I played one of the Metro games. Both of those are graphically pretty, pretty nice. And I've always set all the settings to maximum, even ray tracing and everything. And they look really, really sweet. And it does do that without dropping any frames or anything. So GeForce Now is pretty good, yeah. Daniel: "And the shadow.tech thing, so I don't know yet. It has two tiers, like the small one is $25, and the bigger one is $50, I think. So far I'm on the smaller tier, and the two games that I did play, they ran smoothly. But yeah, if I have to upgrade, then I have to upgrade, I think. But those also have proper graphics cards in them. I have no clue what they are. And even if I could tell you the number, I'm completely out of date with what's a good graphics card these days. But yeah, both of those are really good for playing nice Windows-based games on a Mac. Dave: "That's cool." Daniel: "You probably want to be connected to ethernet. So if you use a wireless network, it might give you too much lag. And you probably want to have a good internet connection. And I don't know how it is in New Zealand, for example. If they don't have a New Zealand or Australia data centre, they might be too far away." Dave: "Okay, yeah that would be the case. I mean we get a decent connection to stuff in California from here, that's not too bad but there is latency. This is where someone here who games all the time is like 'nah it's fine'" Daniel: "I mean, try it out. GeForce Now especially, you can try it for free. And I wouldn't want to use it to play really twitchy shooter games, like Quake Online or something like that. And I wouldn't want to play it to play racing games, because same thing, I need all my reaction time for that." Dave: "Oh, okay. So that's probably ruling me out because I don't like to play a lot else." Daniel: "But so what I like to play are these, I want to say, factory games and strategy games and stuff like that. And those are absolutely fine. And also, any shooter that has reloading, let's say, like anything that's like, OK, you can actually think for, don't think, but you can actually aim at things. And you don't have to just use the back of your brain. You can actually think about things. Absolutely fine. Just Cause is a shooter. And it's super fun. It was like, no, it didn't feel like it was, I felt like I was playing directly on this computer. It didn't feel weird or abstract or something like that. So yeah, give it a try." Dave: "I'll have to have to give them a look." Daniel: "You have to own the games on Steam. So basically, you download the thing to your Mac and then ask for your Steam login. And then you can click on all the compatible games in your Steam library or some demos. Like it has some demos as well, like just demos on Steam. And yeah, that's pretty cool." Dave: "Awesome. I would be in the same boat as you as well in that I would need to get a mouse sorted out because I'm solely using a trackpad with this computer." Daniel: "Well, like, as I said, as I said, like with GeForce Now, the trackpad support felt pretty good, actually. I did play all those games that I just listed. I played Just Cause, like a shooter with my trackpad. I played, what was that factory game, Dyson Sphere Program. I played that with a trackpad. So it seems to be a limitation from Shadowtech, or maybe from the fact that Shadowtech's emulating the whole computer, Windows and everything. And I'm sure that there's a Windows somewhere underneath GeForce Now as well, because sometimes you see, for example, a Steam loading screen that has Windows, Windows Chrome. But like maybe they're just doing a way better job in their translation layer or something like that." Dave: "This is the future Daniel. Virtual machines all the way down and network streaming." Daniel: "Nice, yeah, it is actually pretty fun. So yeah, because I used to game a lot, but then I basically founded a startup." " Dave: "So this is now that voice from the beginning this is 'Daniel - work hard play hard - Jilg'" Daniel: "Um, I wish I could say yes, but no." Dave: "I'm trying. I try to see if I can emulate your voice from the start of the show. It's 'Daniel - work hard play hard - Jilg'... " Daniel: "And then what's your, what's your nickname?" Dave: "Dave - doesn't game - Wood." Daniel (growly voice): "From Augsburg, Germany, it's Daniel Work Hard Play Hard Jilg. And from Wellington, New Zealand, it's Dave Doesn't Play, and we are live now. And as we are seeing Dave actually play live on Twitch, we're going to have to live stream this on Twitch, like your first gaming experience or something like that. Dave: "Oh that could be quite funny, because, right so, we've gone way off into the weeds for this show, I will probably keep this content for the listeners so apologies if our random gaming/not gaming conversation isn't it" Daniel: "Yes, yes. Yeah this is this is definitely content, this is content with a uppercase C." Dave: "Oh yeah yeah yeah. But no, I just don't play games." Daniel: "Except Doom, of course." Dave: "I used to play lots of Doom, lots of Quake back in the 90's, somewhere around 2003-2004 I just stopped. I tried to get into games in the noughties, as it were, we had an Xbox, consoles and stuff for the kids but I just get bored with modern games. I play a couple of levels or I spend an hour, and then I'm done, this is actually not doing anything for me." Daniel: "No, I get that." Dave: "And I don't know why, everybody's been raving about the TV show for The Last Of Us, and raving about how good a game it was." Daniel: "Oh yeah, that is so good. And the game too." Dave: "If you're into it, you really love it. I found I found the game did not suck me in um, so..." Daniel: "It's not your kind of game then basically." Dave: "Pardon? Daniel: "So not for you, is what you're saying." Dave: "Yeah. Lots of different reasons, you know, and i'm sure people who love the game will have their disagreements with me for it but I felt like it was uh For me what I played felt like it was too much like I was just moving from one cut scene to the other Uh with a with a bit of grind in between." Daniel: "Yeah, I get that." Dave: "yeah, but this is this is personal preference, right? And the game had a whole mechanic about um crafting and that sort of stuff and i'm just not interested it like it feels like i'm now doing work instead of playing a game" Daniel: "Oh yeah, I mostly ignored all the crafting as well. Like for me, it's just like walking around in these in these environments where everything is like overgrown and abandoned. And just like finding all the little stories like where like something's lying around and then something else is lying around over there and you can kind of connect them and have like a little mini story about the people that used to live here or something like that." Dave: "Yeah, yeah" Daniel: "And that's just like, you know, all like people used to love to look at the abandoned porn, like just pictures of old stuff, of old houses and stuff like that. And that just really does it for me." Dave: "Yeah, yeah, with you with that it had an urban explorer kind of vibe, right" Daniel: "Like there's this, yeah, I did that a lot in Berlin. Of course, nothing illegal, like I was allowed to be everywhere that I actually went and stuff like that." Dave: "Of course" Daniel: "And if I wasn't, that was not on purpose, of course. But yeah, I love that kind of thing. And that's kind of gives and that's what I get from The Last of Us, I think." Dave: "Fair that's fair and like I said, I don't want to Yuck on somebody else's yum or whatever the phrase is, right? That's uh, you know, that's um not what I want to do" Daniel: "So it's just what gives you that content pleasurable feeling and maybe you get that somewhere else." Dave: "Yeah, I do there's different things" Daniel: "And I mean, for me, it was similar that my gaming really dropped off a cliff at some point in the noughties (I love saying noughties) and I really didn't game anymore. And I wasn't really interested in anything. But then I kind of discovered Kerbal Space Program, like I was into space and then everyone was like talking to me about, wait, you're super into space, but you don't know what Kerbal Space Program is? And I'm like, I really don't. And then I heard about it and it's like, it was supposed to be this game where you build your own spaceships, Lego style, more or less like out of reusable parts. And it was supposed to be really realistic and very, very hard to play. And so I was like, no, I'm not interested because this looks like everyone says it's too hard. And then someone somehow sent me a YouTube video, I think, of them just streaming the game. And I was like, oh my God, this is so cute. And oh, well, I can, I don't, I think I can do this actually. So I actually did play that game and it runs on a Mac, so I could, I could just start it. And I fell, I fell into a deep, deep rabbit hole with just that specific game." Dave: "Yeah." Daniel: "And that kind of rebooted my, my, my lust for gaming. So I don't game often, but like, you know, you know how every, every now and then, like, there's a game coming out where everyone is saying, oh yeah, this is a nine out of 10, this is a 10 out of 10 game." Dave: "Yup" Daniel: "And if that is a genre and a general, a general type of game that I enjoy, and also if it doesn't support turfs, then I will usually get it and, and play it and enjoy it. And that's, that's kind of cool. And that and racing games, racing games just give me like a deep satisfaction. It's just like meditating for me. I'm just like sitting down and doing time trials and just really knowing a track or stuff like that." Dave: "I think I need to give give a few of these things a little bit more of a try again because it's certainly been been quite a few years since I've given anything a dedicated try. So yeah, not to. Daniel: "But yeah, awesome. But you don't, don't feel pressured." Dave: No, no, no. But there's potentially a whole world that is just passing me by with it all as well. So that could be could be interesting to look at." Daniel: "And it's going to be our second topic. I see us like having two podcasts in the future, you know, waiting for review and Waiting for Loading." Dave: "Yeah, yeah, I'm waiting for Loading is would primarily be me being the slightly grumpy old man in the situation, I think going, oh, my day games were like this." Daniel: "Oh yeah, it'll just be me like presenting new game concepts to you and you'll be like, ah, nah, doesn't do it, doesn't do it for me. Listener, if you want us to start this podcast, if at least 4,000 people write us on Mastodon, then we will do that." Daniel: "Dave, where can people find you on Mastodon?" Dave: "On Mastodon, they can find me at at @davidgarywood@social.davidgarywood.com" Daniel: "Fantastic. Where can people find the Toot SDK?" Dave: "TootSDK is just github.com/TootSDK/TootSDK, that's TootDK, and then slash TootSDK again, because we have a organization and then the project."" Daniel: "Smart. All right." Anything else you want to plug?" Dave: "I think that's it for this week, Daniel. But where can people find you?" Daniel: "Right. I am @daniel@social.telemetrydeck.com. Please don't use a VPN to go there, apparently. And you can also go to telemetrydeck.com if you want to have really good analytics that give you usage data for your app. All right, have a wonderful day and see you in two weeks." Dave: "Take it easy Daniel." Daniel: "Byeeee!"